Scroll info layers inside an nsDisplayTransform discarded

RESOLVED FIXED in Firefox 28

Status

()

Core
Layout
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: botond, Assigned: botond)

Tracking

Trunk
mozilla28
ARM
Gonk (Firefox OS)
Points:
---

Firefox Tracking Flags

(blocking-b2g:1.3+, firefox28 fixed)

Details

Attachments

(1 attachment)

(Assignee)

Description

4 years ago
I ran into a issue today where a scrollable element inside the content process did not have an APZC created for it, even though APZ was enabled.

Some debugging revealed that layout was constructing a scroll info layer for it, but that layer was discarded before making it into the final layer tree. 

I debugged this further with the help of :tn and it turned out the problem has to do with layout's handling of nsDisplayTransform and inactive layer managers.
(Assignee)

Comment 1

4 years ago
Created attachment 8338844 [details] [diff] [review]
bug943619.patch

This is tn's suggested fix.
Assignee: nobody → botond
Attachment #8338844 - Flags: review?(tnikkel)
Attachment #8338844 - Flags: review?(tnikkel) → review+
The expand on that, the problem was that the scroll info layer was created inside an inactive transform, so it got flattened away and never made it to the final layer tree. The problem was that child display items with LAYER_ACTIVE_EMPTY did not force their parents to be active (like LAYER_ACTIVE does).
(Assignee)

Comment 3

4 years ago
Try run: https://tbpl.mozilla.org/?tree=Try&rev=44be8bbd4b6d
(Assignee)

Comment 4

4 years ago
https://hg.mozilla.org/integration/b2g-inbound/rev/039a77740673
Blocks: 940691
blocking-b2g: --- → 1.3+
https://hg.mozilla.org/mozilla-central/rev/039a77740673
Status: NEW → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla28
status-firefox28: --- → fixed
You need to log in before you can comment on or make changes to this bug.