Closed
Bug 296463
Opened 19 years ago
Closed 19 years ago
update gfx/cairo to cairo 0.5
Categories
(Core Graveyard :: GFX, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: vlad, Assigned: vlad)
Details
Attachments
(3 files, 2 obsolete files)
1003.59 KB,
patch
|
roc
:
review+
roc
:
superreview+
|
Details | Diff | Splinter Review |
10.86 KB,
patch
|
Details | Diff | Splinter Review | |
40.92 KB,
patch
|
pavlov
:
review+
|
Details | Diff | Splinter Review |
Three separate patches here, based on roc's work moving things to cairo 0.5. I only have the changes to gfx/cairo and to canvas and svg here -- I figure roc can land his gfx/src/cairo work separately, since it's not part of the build.
Assignee | ||
Comment 1•19 years ago
|
||
This patch brings gfx/cairo up to 0.5.0/pixman 0.1.5.
Assignee: general → vladimir
Status: NEW → ASSIGNED
Attachment #185225 -
Flags: superreview?(roc)
Attachment #185225 -
Flags: review?(pavlov)
Assignee | ||
Comment 2•19 years ago
|
||
This patch brings canvas up to cairo 0.5.0. There's a significant performance improvement with this patch (like 3-4x), and I have followup patches later that will improve performance even more.
Attachment #185226 -
Flags: review?(pavlov)
Assignee | ||
Comment 3•19 years ago
|
||
SVG update for cairo 0.5.0, based on roc's patches.
Attachment #185227 -
Flags: review?(tor)
Updated•19 years ago
|
Flags: blocking1.8b3+
Comment on attachment 185225 [details] [diff] [review] cairo-update.patch Looks great. I have additional patches to cairo to fix a clipping bug, but we can land that later.
Attachment #185225 -
Flags: superreview?(roc)
Attachment #185225 -
Flags: superreview+
Attachment #185225 -
Flags: review?(pavlov)
Attachment #185225 -
Flags: review+
Attachment #185225 -
Flags: approval1.8b3?
Assignee | ||
Updated•19 years ago
|
Attachment #185225 -
Flags: approval1.8b3?
Something odd is happening with the svg patch - some strokes are vanishing.
Assignee | ||
Comment 6•19 years ago
|
||
(In reply to comment #5) > Something odd is happening with the svg patch - some strokes are vanishing. Hmm, take a look at the dash-dos.diff -- I forgot to mention that I had to comment out the alpha modulation if dashes are invisible, since alpha is no longer stored as a gstate member. I don't /think/ this is causing the stroke disappearing, but I'm not positive.
cairo's save/restore behavior with respect to paths changed. This additional patch atop the other svg one is needed.
Comment on attachment 185227 [details] [diff] [review] svg-update.patch >--- layout/xul/base/src/Makefile.in monotone >+++ layout/xul/base/src/Makefile.in monotone >@@ -150,7 +150,7 @@ > > DEFINES += -D_IMPL_NS_LAYOUT > >-ifdef MOZ_CAIRO >+ifdef MOZ_ENABLE_CAIRO > CFLAGS += $(MOZ_CAIRO_CFLAGS) > CXXFLAGS += $(MOZ_CAIRO_CFLAGS) > endif If this bit of the patch is still needed, that should probably read MOZ_ENABLE_CANVAS. With that and the attached additional patch for save/restore, r=tor.
Attachment #185227 -
Flags: review?(tor) → review+
Comment on attachment 185227 [details] [diff] [review] svg-update.patch SVG images and group opacity are also broken (surface code).
Attachment #185227 -
Flags: review+ → review-
Comment 10•19 years ago
|
||
Also problems with text positioning on partial redraws (drag another window across mozilla displaying svg text).
Comment 11•19 years ago
|
||
SVG images and group opacity can be fixed by passing 0,0 instead of width,height to the two calls to cairo_set_source_surface() in nsSVGCairoCanvas.cpp.
Comment 12•19 years ago
|
||
Text positioning problem can be fixed by replacing the cairo_transform() in nsSVGCairoGlyphGeometry::GetGlobalTransfrom() with cairo_set_matrix().
Comment 13•19 years ago
|
||
Group opacity broken for partial updates. Test url: http://www.w3.org/Graphics/SVG/Test/20030813/htmlframe/full-masking-opacity-01-b.html
Comment 14•19 years ago
|
||
Attachment #185227 -
Attachment is obsolete: true
Attachment #185276 -
Attachment is obsolete: true
Attachment #185284 -
Flags: review?(roc)
Attachment #185284 -
Attachment description: combine previous fixes plus group opacity partial update fix → replacement svg patch (includes all fixes plus group opacity partial update fix)
Updated•19 years ago
|
Attachment #185284 -
Flags: review?(roc) → review+
Assignee | ||
Comment 15•19 years ago
|
||
I'll land all this late tonight, when I can have a quiet half hour or so with the tinderbox. I'll probably land cairo 0.5.0 first and tag gfx/cairo, and then apply our patches on top as a separate commit.
Assignee | ||
Comment 16•19 years ago
|
||
Checked in, albeit grudgingly on OSX and Win32 -- both of them had crazy #include issues, and I don't have an OSX build environment set up and my win32 desktop died yesterday. I bandaided the issues, but I'll try to figure out what's really happening in the next week or so. (The bandaids shouldn't affect any functionality, they just shouldn't be needed.)
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Comment 17•19 years ago
|
||
Pretty sure this broke drawWindow, at least on Win32, see bug 296697
Assignee | ||
Updated•19 years ago
|
Attachment #185226 -
Flags: review?(pavlov)
Updated•16 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•