Make LayerManagerComposite::PostProcessLayers understand preserve-3d

RESOLVED FIXED in Firefox 46

Status

()

Core
Graphics: Layers
RESOLVED FIXED
2 years ago
7 months ago

People

(Reporter: mattwoodrow, Assigned: sinker)

Tracking

({regression})

Trunk
mozilla47
regression
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox46+ fixed, firefox47+ fixed)

Details

(Whiteboard: [gfx-noted])

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

2 years ago
Bug 1229317 is making this code bail out from it's attempts to minimize the visible region if any children have preserve-3d.

We should be able to handle these layers properly, probably by passing a reference to the visible region being accumulated for the ancestor of the preserve-3d tree down to the leaves and transforming by the accumulated transform.
(Assignee)

Comment 1

2 years ago
Created attachment 8716248 [details] [diff] [review]
Make PostProcessLayers aware of preserve-3d
(Assignee)

Comment 2

2 years ago
Comment on attachment 8716248 [details] [diff] [review]
Make PostProcessLayers aware of preserve-3d

This patch treat a layers on the path to the root of a 3D rendering context as a giant layer.  So, it skips all intermediate layers, and use accumulated transforms for the leaves of 3d rendering context.
Attachment #8716248 - Flags: feedback?(matt.woodrow)
(Reporter)

Comment 3

2 years ago
Comment on attachment 8716248 [details] [diff] [review]
Make PostProcessLayers aware of preserve-3d

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

Yeah, this is exactly what I had in mind!

End up being simpler than I imagined too, thanks for doing this.
Attachment #8716248 - Flags: feedback?(matt.woodrow) → feedback+
Whiteboard: [gfx-noted]
(Assignee)

Comment 4

2 years ago
Created attachment 8720088 [details] [diff] [review]
Make PostProcessLayers aware of preserve-3d, v2

--
Attachment #8716248 [details] [diff] - Attachment is obsolete: true
Attachment #8720088 - Flags: review?(matt.woodrow)
(Assignee)

Updated

2 years ago
Attachment #8716248 - Attachment is obsolete: true
(Reporter)

Updated

2 years ago
Attachment #8720088 - Flags: review?(matt.woodrow) → review+
Looks like this may not have landed yet. It should probably get uplift to aurora 46 as well once it is on m-c for a bit.
Flags: needinfo?(wkocher)
Flags: needinfo?(tlee)

Comment 6

2 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/4d4dd7869c4f
Landed to aurora:
https://hg.mozilla.org/integration/mozilla-inbound/rev/4d4dd7869c4f

Will leave the uplift request to matt and :sinker
Flags: needinfo?(wkocher)
Er, landed to *inbound*.
(Assignee)

Comment 9

2 years ago
Comment on attachment 8720088 [details] [diff] [review]
Make PostProcessLayers aware of preserve-3d, v2

Approval Request Comment
[Feature/regressing bug #]: 1244943
[User impact if declined]: With incorrect visible region of layers, screen repainting is potentially wrong.
[Describe test coverage new/current, TreeHerder]:
Testcases of layer tree invalidation would cover this change.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=9980d741547c
[Risks and why]: 
Low risk because it does not effect other features, and the change is limited in a small block in a function.
[String/UUID change made/needed]: none
Flags: needinfo?(tlee)
Attachment #8720088 - Flags: approval-mozilla-aurora?

Comment 10

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/4d4dd7869c4f
Status: NEW → RESOLVED
Last Resolved: 2 years ago
status-firefox47: affected → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla47
Marking affected for 46, tracking as this is a regression from the preserve-3d changes
status-firefox46: --- → affected
tracking-firefox46: --- → +
tracking-firefox47: --- → +
Keywords: regression
Comment on attachment 8720088 [details] [diff] [review]
Make PostProcessLayers aware of preserve-3d, v2

Should help with preserve-3d changes, please uplift to aurora.
Attachment #8720088 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+

Comment 13

2 years ago
bugherderuplift
https://hg.mozilla.org/releases/mozilla-aurora/rev/31c2798b51d5
status-firefox46: affected → fixed

Updated

2 years ago
Depends on: 1267690

Updated

2 years ago
Depends on: 1275213
Assignee: nobody → tlee
Depends on: 1330814
Depends on: 1360952
Blocks: 1234922
You need to log in before you can comment on or make changes to this bug.