Closed Bug 991575 Opened 11 years ago Closed 11 years ago

Stop PresShell::GetReferenceRenderingContext from creating a Thebes backed gfxContext

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla32

People

(Reporter: jwatt, Assigned: mattwoodrow)

References

Details

Attachments

(1 file, 1 obsolete file)

We should stop PresShell::GetReferenceRenderingContext from creating a Thebes backed gfxContext.
Attached patch patch (obsolete) (deleted) — Splinter Review
Attachment #8401192 - Flags: review?(matt.woodrow)
Attachment #8401192 - Flags: review?(matt.woodrow) → review+
sorry had to backout this change for test failures like https://tbpl.mozilla.org/php/getParsedLog.php?id=37267409&tree=Mozilla-Inbound
It seems this patch to use a Moz2D reference DrawTarget instead of a gfxASurface reference surface screws up text metrics measurement. Specifically for the on Linux and Windows for the tests: https://mxr.mozilla.org/mozilla-central/source/layout/reftests/text/subpixel-glyphs-x-1a.html?force=1 https://mxr.mozilla.org/mozilla-central/source/layout/reftests/text/475092-pos.html?force=1 And on Linux for the test: https://mxr.mozilla.org/mozilla-central/source/toolkit/content/tests/chrome/test_arrowpanel.xul See: https://tbpl.mozilla.org/?tree=Try&rev=d3c1bc13e890
As an aside, I'd like to understand why some code gets away with calling gfxPlatform::ScreenReferenceDrawTarget() while others calls PresShell::GetReferenceRenderingContext() (the former not taking account of whether we're printing while the latter supposedly does).
Blocks: 987190
I'm not sure where to start on these failures. Matt, any insight to help speed up the debugging? Or is anyone able to take this and finish it while I'm on PTO?
Flags: needinfo?(matt.woodrow)
I had a look at this and haven't got very far. I've narrowed it down to this user of the function - http://mxr.mozilla.org/mozilla-central/source/layout/base/nsPresShell.cpp#8393 The failing tests are disabled on OSX. I can reproduce a change in rendering with 475092-pos.html if I remove the failing annotation.
Flags: needinfo?(matt.woodrow)
This took *way* too long to track down :( Fixes the rendering changes on OSX, fingers crossed it does everywhere else too. https://tbpl.mozilla.org/?tree=Try&rev=b64b00c3e83a
Assignee: jwatt → matt.woodrow
Attachment #8419210 - Flags: review?(jwatt)
Comment on attachment 8419210 [details] [diff] [review] Use a DT for the pres shell reference Sweet, than you, Matt!
Attachment #8419210 - Flags: review?(jwatt) → review+
Attachment #8401192 - Attachment is obsolete: true
(In reply to Matt Woodrow (:mattwoodrow) from comment #7) > The failing tests are disabled on OSX. I can reproduce a change in rendering > with 475092-pos.html if I remove the failing annotation. Were you going to remove the failing annotation too?
(In reply to Jonathan Watt [:jwatt] from comment #11) > Were you going to remove the failing annotation too? Nope, they still fail. The PresShell change made them fail in a *different* way, and adding the gfxContext change took them back to failing the normal way.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
Depends on: 1008965
Depends on: 1009627
Blocks: 1087958
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: