APZ should pick up dynamic changes made to 'scrollgrab' property

RESOLVED FIXED in mozilla29

Status

()

defect
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: botond, Assigned: botond)

Tracking

Trunk
mozilla29
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

5 years ago
Bug 912666 introduced the 'scrollgrab' property. This property is set on a layer's FrameMetrics by RecordFrameMetrics, and APZ gives special scrolling behaviour to layers with this property.

FrameMetrics are transferred from a layer to an APZC in AsyncPanZoomController::NotifyLayersUpdated(). There are two code paths there: on the first paint of a given layer, we copy all FrameMetrics fields, while on subsequent paints we only copy select fields.

The mScrollGrab field is currently not included in the fields copied over on subsequent paints. This means that if JS code dynamically adds or removes the 'scrollgrab' property from an element, APZ may not become aware of this change.

To avoid this, we should copy over the mScrollGrab field on the subsequent-paint code path as well.
(Assignee)

Comment 1

5 years ago
Attachment #8361865 - Flags: review?(bgirard)
Attachment #8361865 - Flags: review?(bgirard) → review+
https://hg.mozilla.org/mozilla-central/rev/d70ddcedc57d
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla29
(Assignee)

Updated

5 years ago
Blocks: scrollgrab
You need to log in before you can comment on or make changes to this bug.