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.
Attachment #8361865 - Flags: review?(bgirard) → review+
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla29
You need to log in before you can comment on or make changes to this bug.