gecko-dev/gfx/layers/wr
Ryan Hunt 1601a8bb80 Bug 1453425 - Add relative scroll offset updates using nsGkAtoms::relative. r=botond
This commit adds a scroll origin, nsGkAtoms::relative, which can be used to
mark main thread scrolling that can be combined with a concurrent APZ scroll.

The behavior of this is controlled by a pref, apz.relative-update. This pref
is initially activated and is intended as an aid to narrowing down causes
of regressions for users in bug reports.

Relative scroll updates work by tracking the last sent or accepted APZ
scroll offset. This is sent along with every FrameMetrics. Additionally,
a flag is added to FrameMetrics, mIsRelative, indicating whether the
scroll offset can be combined with a potential APZ scroll. When this
flag is set, AsyncPanZoomController will apply the delta between the sent
base scroll offset, and sent new scroll offset.

This flag is controlled by the last scroll origin on nsGfxScrollFrame. The
new origin, `relative`, is marked as being able to clobber APZ updates,
but can only be set if all scrolls since the last repaint request or
layers transaction have been relative.

Differential Revision: https://phabricator.services.mozilla.com/D8234

--HG--
extra : rebase_source : 51351a84c9cda228a0975e22eda3fd3bd8d261c4
extra : histedit_source : 4b564c19b16fe2bd26adc671b62b7cb6106e8163
2018-10-09 23:24:28 -05:00
..
AsyncImagePipelineManager.cpp Bug 1461239 - Use InvalidateRenderedFrame() when necessary r=nical 2018-10-09 23:20:23 -04:00
AsyncImagePipelineManager.h Bug 1493088 - Use non low priority transaction for async pipline with ImageBridge r=nical 2018-09-26 11:45:30 +09:00
ClipManager.cpp Bug 1485834 - Allow recomputing the cumulative resolution in ComputeScrollMetadata. r=botond 2018-10-19 14:24:50 +00:00
ClipManager.h Bug 1485420 - Part 2. Make ClipManager trim clip chains which can be merged with the display item. r=mstange 2018-09-14 10:42:23 -04:00
IpcResourceUpdateQueue.cpp Bug 1494836. Replace NormalizedRect for visible area. r=mstange 2018-09-26 10:32:41 -04:00
IpcResourceUpdateQueue.h Bug 1494836. Replace NormalizedRect for visible area. r=mstange 2018-09-26 10:32:41 -04:00
StackingContextHelper.cpp Bug 1493268. Re-generate FFI header and adjust bindings. 2018-09-22 21:19:52 -04:00
StackingContextHelper.h Bug 1490033. Use IsStyleMaybeAnimated to set up snapping surface transform. r=mstange 2018-09-21 23:28:34 -04:00
WebRenderBridgeChild.cpp Bug 1483549 - Add separate CONTENT_FRAME_TIME recording for SVG with WR. r=jrmuizel data-review=francois 2018-09-18 15:13:18 +12:00
WebRenderBridgeChild.h Bug 1483549 - Add separate CONTENT_FRAME_TIME recording for SVG with WR. r=jrmuizel data-review=francois 2018-09-18 15:13:18 +12:00
WebRenderBridgeParent.cpp Bug 1479754 - Hook up the force-first-paint codepath with webrender r=kats 2018-10-19 13:48:04 +00:00
WebRenderBridgeParent.h Bug 1479754 - Hook up the force-first-paint codepath with webrender r=kats 2018-10-19 13:48:04 +00:00
WebRenderCanvasRenderer.cpp Bug 1475187 - Remove AsyncImagePipelineManager::ApplyAsyncImages() call from WebRenderBridgeParent::RecvSetDisplayList() r=kats 2018-07-19 07:51:37 +09:00
WebRenderCanvasRenderer.h Bug 1475187 - Remove AsyncImagePipelineManager::ApplyAsyncImages() call from WebRenderBridgeParent::RecvSetDisplayList() r=kats 2018-07-19 07:51:37 +09:00
WebRenderCommandBuilder.cpp Bug 1469403 - Skip DL dumps when the DL builder is from an inactive docshell. r=mattwoodrow 2018-10-22 23:42:05 +00:00
WebRenderCommandBuilder.h Bug 1469403 - Skip DL dumps when the DL builder is from an inactive docshell. r=mattwoodrow 2018-10-22 23:42:05 +00:00
WebRenderDrawEventRecorder.cpp Bug 1425484 - Part 3. Integrate shared surfaces with the blob image recordings. r=jrmuizel 2018-04-26 19:00:16 -04:00
WebRenderDrawEventRecorder.h Bug 1480615 - reuse scaled fonts across blob image recordings. r=jrmuizel 2018-09-05 21:55:53 -04:00
WebRenderImageHost.cpp Bug 1245400 - P2. Keep track of frames that should have been painted but didn't. r=nical, r=mattwoodrow 2018-08-22 17:26:36 +02:00
WebRenderImageHost.h Bug 1245400 - P5. Report frames dropped with WebRender. r=nical 2018-08-22 17:26:37 +02:00
WebRenderLayerManager.cpp Bug 1469403 - Skip DL dumps when the DL builder is from an inactive docshell. r=mattwoodrow 2018-10-22 23:42:05 +00:00
WebRenderLayerManager.h Bug 1488980 - Implement StartFrameTimeRecording for WebRender. r=mstange 2018-09-08 18:41:34 +00:00
WebRenderLayersLogging.cpp Bug 1411627 - Send the applied offset for sticky frames to WR. r=mstange 2017-11-07 10:16:48 -05:00
WebRenderLayersLogging.h Bug 1411627 - Send the applied offset for sticky frames to WR. r=mstange 2017-11-07 10:16:48 -05:00
WebRenderMessageUtils.h Bug 1493198 - P1. Make ImageDescriptor::is_opaque an enum and rename accordingly. r=nical 2018-09-24 14:24:30 +00:00
WebRenderScrollData.cpp Bug 1453425 - Add relative scroll offset updates using nsGkAtoms::relative. r=botond 2018-10-09 23:24:28 -05:00
WebRenderScrollData.h Bug 1452390 - Implement paint-skipping support in WebRender. r=botond 2018-05-11 21:18:22 -04:00
WebRenderScrollDataWrapper.h Bug 1451168 - Ensure the transforms from ancestor stacking contexts are combined properly. r=jrmuizel 2018-05-01 16:31:23 -04:00
WebRenderTextureHost.cpp Bug 1477608 - Reuse same ExternalImageId for different video frames if possible r=jrmuizel 2018-07-25 23:30:08 +09:00
WebRenderTextureHost.h Bug 1477608 - Reuse same ExternalImageId for different video frames if possible r=jrmuizel 2018-07-25 23:30:08 +09:00
WebRenderTextureHostWrapper.cpp Bug 1477608 - Reuse same ExternalImageId for different video frames if possible r=jrmuizel 2018-07-25 23:30:08 +09:00
WebRenderTextureHostWrapper.h Bug 1477608 - Reuse same ExternalImageId for different video frames if possible r=jrmuizel 2018-07-25 23:30:08 +09:00
WebRenderUserData.cpp Bug 1460515 - Reuse more image keys at WebRenderImageData::UpdateImageKey() r=nical 2018-07-11 17:45:28 +09:00
WebRenderUserData.h Bug 1480615 - reuse scaled fonts across blob image recordings. r=jrmuizel 2018-09-05 21:55:53 -04:00