Closed Bug 1352034 Opened 8 years ago Closed 8 years ago

Turn on layers.advanced.solid-color-layers by default

Categories

(Core :: Graphics: WebRender, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla55
Tracking Status
firefox55 --- fixed

People

(Reporter: jnicol, Assigned: jnicol)

References

Details

Attachments

(2 files)

Bug 1339575 added a pref to turn nsDisplaySolidColor display items in to color layers. It is switched off as it caused some reftest failures. Some look like they just need some fuzzing, but others require more investigation.
Try run with pref enabled: https://treeherder.mozilla.org/#/jobs?repo=try&revision=7c72d1d2d0165abee78522f7d34a1a57ca95168c The layout/reftests/bugs/409659-1d.html (R3) failure is interesting. Enabling solid color layers has the knock on effect that some images in the test become the only display items in their painted layers. They therefore get optimised to image layers. I believe there is then a problem with the transform calculation in GetWrRelBounds() which this uncovers. That test failure would be fixed by this commit: https://hg.mozilla.org/try/rev/1416cb9c0dc242765a40bcb97f64409e7bc4a0a8 Ethan, could you comment on whether that looks correct? (I realise it will need rebased after bug 1354464 lands)
Flags: needinfo?(ethlin)
(In reply to Jamie Nicol [:jnicol] from comment #1) > Try run with pref enabled: > https://treeherder.mozilla.org/#/ > jobs?repo=try&revision=7c72d1d2d0165abee78522f7d34a1a57ca95168c > > The layout/reftests/bugs/409659-1d.html (R3) failure is interesting. > Enabling solid color layers has the knock on effect that some images in the > test become the only display items in their painted layers. They therefore > get optimised to image layers. I believe there is then a problem with the > transform calculation in GetWrRelBounds() which this uncovers. > > That test failure would be fixed by this commit: > https://hg.mozilla.org/try/rev/1416cb9c0dc242765a40bcb97f64409e7bc4a0a8 > Ethan, could you comment on whether that looks correct? (I realise it will > need rebased after bug 1354464 lands) So the difference is applying the transform on the region before or after calculating the relative position. I think the change should be correct since the original transform is for the layer. So we should apply the transform first and then calculate the relative position for WR use.
Flags: needinfo?(ethlin)
Depends on: 1355045
Here's a try run with the pref enabled: https://treeherder.mozilla.org/#/jobs?repo=try&revision=0a575ee43b9567d4c9f446841c06ca63cca36da9 The R5 are just edges that need fuzzing since we're now compositing in webrender rather than rasterising in to a single surface in gecko. The R8 failure happens because the xul page doesn't have a canvas background color. So with this pref on we have a small painted layer. Whereas the ref html page does have a canvas background color, so the painted layer remains large. When painting the images with Skia this results in a tiny blending difference, I think because of the different positions of the images within their painted layers. Nothing to do with webrender. I think we should fuzz this too. However, when layers.advanced.canvas-background-color is switched on I think this test would pass again without fuzzing.
Attachment #8860337 - Flags: review?(mchang) → review+
Comment on attachment 8860338 [details] Bug 1352034 - Fuzz reftests for enabling layers.advanced.solid-color with webrender. https://reviewboard.mozilla.org/r/132372/#review135418
Attachment #8860338 - Flags: review?(mchang) → review+
Try run: https://treeherder.mozilla.org/#/jobs?repo=try&revision=e2c87733486e73bec0fff1155f283de8cc263048 Mason, could you please land these for me? I still haven't gotten round to getting permissions.
Flags: needinfo?(mchang)
Pushed by mchang@mozilla.com: https://hg.mozilla.org/projects/graphics/rev/a549ad83c779 Part 1 Turn on layers.advanced.solid-color-layers r=mchang https://hg.mozilla.org/projects/graphics/rev/5fd5cf125a54 Part 2 Fuzz reftests for enabling layers.advanced.solid-color with webrender. r=mchang
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Flags: needinfo?(mchang)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: