gecko-dev/layout/base
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
..
crashtests Bug 1497126 - Fix WPTs for 1 level of recursion when loading nested iframes with same URL, r=smaug 2018-10-08 16:04:57 +02:00
doc
gtest Bug 1485063 Part 4 - Move preferences used in AccessibleCaretManager to StaticPrefList.h r=mats 2018-09-21 21:59:52 +00:00
tests Bug 1499996 - Wait to run tests until new window gets focus r=smaug 2018-10-23 07:34:55 +00:00
AccessibleCaret.cpp
AccessibleCaret.h
AccessibleCaretEventHub.cpp Bug 1485063 Part 2 - Move preferences used in AccessibleCaretEventHub to StaticPrefList.h r=mats 2018-09-21 22:01:31 +00:00
AccessibleCaretEventHub.h Bug 1485063 Part 2 - Move preferences used in AccessibleCaretEventHub to StaticPrefList.h r=mats 2018-09-21 22:01:31 +00:00
AccessibleCaretLogger.h
AccessibleCaretManager.cpp Bug 1492288 - Use IGNORE_ROOT_SCROLL_FRAME on Android when doing the hit test in AccessibleCaretManager::SelectWordOrShortcut(). r=kats 2018-09-26 18:16:03 +00:00
AccessibleCaretManager.h Bug 1485063 Part 4 - Move preferences used in AccessibleCaretManager to StaticPrefList.h r=mats 2018-09-21 21:59:52 +00:00
ArenaObjectID.h
ArenaRefPtr.h
ArenaRefPtrInlines.h
AutoProfilerStyleMarker.h
CaretAssociationHint.h
FrameProperties.h
GeometryUtils.cpp
GeometryUtils.h
LayoutConstants.h
LayoutLogging.cpp
LayoutLogging.h
MobileViewportManager.cpp
MobileViewportManager.h Bug 1290420 Part 4: Make the PresShell create a MobileViewportManager on demand. r=botond,smaug 2018-10-04 03:28:40 +00:00
OverflowChangedTracker.h
PositionedEventTargeting.cpp Bug 1451169 - Use `nsStaticAtom*` instead of `nsStaticAtom**` in Element.h. r=baku 2018-04-03 13:21:06 +10:00
PositionedEventTargeting.h
PresShell.cpp Bug 1482425 - PresShell::PageMove() should use different rules to look for a container element for aExtend value r=smaug 2018-10-18 04:42:53 +00:00
PresShell.h Bug 1482425 - PresShell::PageMove() should use different rules to look for a container element for aExtend value r=smaug 2018-10-18 04:42:53 +00:00
PresState.ipdlh
RestyleManager.cpp Bug 1498755 - Part 2c: Allow ServoBindings.h and GeckoBindings.h to be used separately r=emilio 2018-10-14 00:05:48 +00:00
RestyleManager.h
ScrollStyles.cpp
ScrollStyles.h
ShapeUtils.cpp
ShapeUtils.h
StackArena.cpp
StackArena.h
StaticPresData.cpp Bug 1498755 - Part 3: Merge AssertIsMainThreadOrServo{FontMetrics,LangFontPrefsCache}Locked r=emilio 2018-10-14 00:05:50 +00:00
StaticPresData.h
TouchManager.cpp Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug 2018-10-01 21:38:01 +00:00
TouchManager.h
UnitTransforms.h Bug 1494836. Replace NormalizedRect for visible area. r=mstange 2018-09-26 10:32:41 -04:00
Units.h
WordMovementType.h
ZoomConstraintsClient.cpp
ZoomConstraintsClient.h
moz.build
nsAutoLayoutPhase.cpp
nsAutoLayoutPhase.h
nsBidi.cpp
nsBidi.h
nsBidiPresUtils.cpp
nsBidiPresUtils.h
nsCSSColorUtils.cpp Bug 1494519 - Use float division to avoid an MSVC warning. r=me 2018-09-27 12:43:42 +02:00
nsCSSColorUtils.h Bug 1382896 - Align Gecko and WebRender code for 3d border colors. r=mstange 2018-09-26 15:28:01 +02:00
nsCSSFrameConstructor.cpp Bug 1498873 - Simplify a check. r=bzbarsky 2018-10-17 20:40:08 +00:00
nsCSSFrameConstructor.h Bug 1497734 - Rename nsStaticAtom subclasses. r=heycam 2018-10-10 16:49:13 +11:00
nsCaret.cpp
nsCaret.h
nsChangeHint.h
nsCompatibility.h
nsCounterManager.cpp
nsCounterManager.h
nsDocumentViewer.cpp Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug 2018-10-01 21:38:01 +00:00
nsFrameManager.cpp
nsFrameManager.h
nsFrameTraversal.cpp
nsFrameTraversal.h
nsGenConList.cpp
nsGenConList.h
nsIDocumentViewerPrint.h
nsIFrameTraversal.h
nsILayoutDebugger.h
nsILayoutHistoryState.idl
nsIPercentBSizeObserver.h
nsIPreloadedStyleSheet.idl
nsIPresShell.h Bug 1473108 - Part 2: Make PresShell not point to unbound NAC in event content stack; r=smaug 2018-10-09 12:16:15 +00:00
nsIPresShellInlines.h
nsIReflowCallback.h
nsIStyleSheetService.idl
nsLayoutDebugger.cpp
nsLayoutHistoryState.cpp
nsLayoutUtils.cpp Bug 1453425 - Add relative scroll offset updates using nsGkAtoms::relative. r=botond 2018-10-09 23:24:28 -05:00
nsLayoutUtils.h Bug 1485834 - Allow recomputing the cumulative resolution in ComputeScrollMetadata. r=botond 2018-10-19 14:24:50 +00:00
nsPresArena.cpp
nsPresArena.h
nsPresArenaObjectList.h
nsPresContext.cpp Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug 2018-10-01 21:38:01 +00:00
nsPresContext.h
nsQuoteList.cpp
nsQuoteList.h
nsRefreshDriver.cpp Bug 1494745 part 3 - Make nsRefreshDriver::AddTimerAdjustmentObserver void since it's infallible. r=bz 2018-10-14 18:12:23 +02:00
nsRefreshDriver.h Bug 1494745 part 3 - Make nsRefreshDriver::AddTimerAdjustmentObserver void since it's infallible. r=bz 2018-10-14 18:12:23 +02:00
nsStyleChangeList.cpp
nsStyleChangeList.h
nsStyleSheetService.cpp
nsStyleSheetService.h