Closed Bug 1586843 Opened 1 year ago Closed 11 months ago

WebRender support for respecting fixed layer margins during hit-testing

Categories

(Core :: Graphics: WebRender, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla72
Tracking Status
firefox72 --- fixed

People

(Reporter: botond, Assigned: tnikkel)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

In bug 1552608, I added a mechanism for APZ to respect fixed layer margins during hit-testing, which is needed for Fenix's dynamic toolbar.

My implementation works for non-WebRender, but there are pieces that need to be hooked up for WebRender. There is a comment in APZCTreeManager::GetAPZCAtPoint() that outlines possible implementation strategies.

Flags: needinfo?(botond)
Priority: -- → P3

(Clearing needinfo, this bug is on Jessie's and my radar, and we'll coordinate implementation work on it (I'll likely need some help from folks more familiar with WebRender) in due course.)

Flags: needinfo?(botond)

(In reply to Botond Ballo [:botond] from comment #0)

There is a comment in APZCTreeManager::GetAPZCAtPoint() that outlines possible implementation strategies.

Here is a code reference for that comment.

Note, this is closely related to bug 1583380. Depending on what the architecture looks like on the WebRender side, they might even be the same fix.

See Also: → 1583380

We add the SideBits to the data we store in the FixedPosScrollTargetTracker. nsDisplayCompositorHitTestInfo then passes the side bits when it sets hit test info. We then pack the side bits into the hit test info bits; luckily they were only using 12 of 16 bits. The wr HitTest api then extracts the side bits from the hit test info bits and passes them back.

Depends on D54403

Assignee: nobody → tnikkel
Pushed by tnikkel@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/ea930165f9f3
Pass SideBits for fixed position content to webrender so it can pass it back via the HitTest api. r=botond
Status: NEW → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla72
You need to log in before you can comment on or make changes to this bug.