Thebes and Layers use our obsolete custom cairo_d2d_surface extension which is superceded by Moz2D

RESOLVED FIXED in Firefox 42

Status

()

defect
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: lsalzman, Assigned: lsalzman)

Tracking

unspecified
mozilla42
Unspecified
Windows
Points:
---

Firefox Tracking Flags

(firefox42 fixed)

Details

Attachments

(4 attachments)

gfxD2DSurface in Thebes used our cairo_d2d_surface extensions, and unnecessarily ties us to our customized version of Cairo. This prevents us from one day migrating back to upstream Cairo. We should just remove it.
This patch removes any places using gfxD2DSurface, since Moz2D ensures this code was already dead.
Attachment #8629423 - Flags: review?(bas)
Kill the files now, because we can.
Attachment #8629424 - Flags: review?(bas)
Remove any dependencies on cairo_d2d_device functions to set up our D3D10 device, since the gfxWindowsPlatform code and Factory in Moz2D are already doing the necessary work.
Attachment #8629425 - Flags: review?(bas)
TextureClientD3D9 had a lot of obsolete code to interoperate with Cairo which was literally not being used anywhere anymore and is completely safe to remove. This way we are only left with a minimal dependency on Cairo there inside gfxWindowsSurface, which uses our cairo_win32_surface_create_with_d3dsurface9 extension (though that will eventually have to be excised somehow).
Attachment #8629426 - Flags: review?(bas)
Comment on attachment 8629423 [details] [diff] [review]
part 1 - remove dependencies on gfxD2DSurfcae

Review of attachment 8629423 [details] [diff] [review]:
-----------------------------------------------------------------

This is really happy making.
Attachment #8629423 - Flags: review?(bas) → review+
Comment on attachment 8629424 [details] [diff] [review]
part 2 - Kill gfxD2DSurface with fire

Review of attachment 8629424 [details] [diff] [review]:
-----------------------------------------------------------------

I'm feeling filled with joy.
Attachment #8629424 - Flags: review?(bas) → review+
Comment on attachment 8629425 [details] [diff] [review]
part 3 - remove usage of cairo_d2d_device

Review of attachment 8629425 [details] [diff] [review]:
-----------------------------------------------------------------

Does the joy know no end?
Attachment #8629425 - Flags: review?(bas) → review+
Comment on attachment 8629426 [details] [diff] [review]
part 4 - reduce Cairo dependencies where safe in TextureClientD3D9

Review of attachment 8629426 [details] [diff] [review]:
-----------------------------------------------------------------

I wonder if this texture client is ever used anyway..
Attachment #8629426 - Flags: review?(bas) → review+
Did one more try run just to verify the oranges were intermittents: https://treeherder.mozilla.org/#/jobs?repo=try&revision=25c17783e1c4
Keywords: checkin-needed
You need to log in before you can comment on or make changes to this bug.