Closed Bug 961171 Opened 10 years ago Closed 10 years ago

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

Categories

(Core :: Panning and Zooming, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla29

People

(Reporter: botond, Assigned: botond)

References

Details

Attachments

(1 file)

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.
Attached patch bug961171.patchSplinter Review
Attachment #8361865 - Flags: review?(bgirard)
Attachment #8361865 - Flags: review?(bgirard) → review+
https://hg.mozilla.org/mozilla-central/rev/d70ddcedc57d
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla29
Blocks: scrollgrab
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: