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 Bug 1485063 Part 1 - Move preferences used in AccessibleCaret to StaticPrefsList.h r=mats 2018-09-21 21:48:27 +00:00
AccessibleCaret.h Bug 1485063 Part 1 - Move preferences used in AccessibleCaret to StaticPrefsList.h r=mats 2018-09-21 21:48:27 +00:00
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 Bug 1480222 part 3: Add includes to fix unified bustage in ArenaRefPtrInlines.h and nsComputedDOMStyle.cpp. r=TYLin 2018-08-01 15:09:54 -07:00
AutoProfilerStyleMarker.h
CaretAssociationHint.h
FrameProperties.h Bug 1479996 - Combine nsTArray::IndexOf and element access into lambda-friendly functions - r=froydnj 2018-08-28 22:04:09 +00:00
GeometryUtils.cpp Bug 1483394: Remove unneeded #includes of nsContentUtils.h in /layout. r=TYLin 2018-08-15 07:04:43 +00:00
GeometryUtils.h
LayoutConstants.h Bug 1490611 - physical to logical name refactor: DISPLAY_*_WIDTH to DISPLAY_*_INLINE_SIZE(as well as the relevant struct in the macro contents) r=jfkthame 2018-09-12 12:35:47 +00:00
LayoutLogging.cpp
LayoutLogging.h
MobileViewportManager.cpp Bug 1488910 - Rename remaining uses of "SPCSPS" to "visual viewport size". r=botond 2018-09-14 15:23:28 -04:00
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
moz.build Bug 1490216 - Part 1: Remove unused UndisplayeNode class. r=emilio 2018-09-12 17:37:38 +10:00
nsAutoLayoutPhase.cpp
nsAutoLayoutPhase.h
nsBidi.cpp
nsBidi.h
nsBidiPresUtils.cpp Bug 1453795 - Layout - Initialize member fields in classes/ structures. r=dbaron 2018-07-12 09:42:14 +03:00
nsBidiPresUtils.h
nsCaret.cpp Bug 1483090 - Rename StyleUserInterface to StyleUI. r=emilio 2018-08-14 08:37:37 +00:00
nsCaret.h
nsChangeHint.h Bug 1475033 part 1 - Rename nsChangeHint_CSSOverflowChange to nsChangeHint_ScrollbarChange. r=heycam 2018-08-03 16:42:33 +10:00
nsCompatibility.h
nsCounterManager.cpp
nsCounterManager.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
nsDocumentViewer.cpp Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug 2018-10-01 21:38:01 +00:00
nsFrameManager.cpp Bug 1490216 - Part 1: Remove unused UndisplayeNode class. r=emilio 2018-09-12 17:37:38 +10:00
nsFrameManager.h
nsFrameTraversal.cpp bug 1430701, remove now unused nsLightFrameIterator, r=mrbkap 2018-07-20 19:32:22 +03:00
nsFrameTraversal.h Bug 1488684 - Made nsIFrame-derived classes and some others 'final' where possible - r=dbaron 2018-09-06 01:23:14 +00:00
nsGenConList.cpp Bug 1482782 - Part 4: Move CSS pseudo-element atoms to nsGkAtoms. r=njn,emilio 2018-08-15 15:46:00 +10:00
nsGenConList.h Bug 1482782 - Part 4: Move CSS pseudo-element atoms to nsGkAtoms. r=njn,emilio 2018-08-15 15:46:00 +10:00
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 Bug 1494285 p3. Rename nsDisplayFilter to nsDisplayFilters. r=miko 2018-08-30 13:15:47 +01:00
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 Bug 1490216 - Part 2: Remove non-existent types from nsPresArenaObjectList.h. r=emilio 2018-09-12 17:37:38 +10:00
nsPresContext.cpp Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug 2018-10-01 21:38:01 +00:00
nsPresContext.h Bug 1445570 - Remove EnsureEventualAfterPaint timer. r=tnikkel 2018-09-06 02:21:39 +00:00
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 Bug 1477579: Part 3 - Avoid duplicating static strings in category manager entries. r=froydnj 2018-07-23 17:41:06 -07:00
nsStyleSheetService.h
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 Bug 1493043 - Change function arguments in RestyleManager from nsIFrame& to nsIFrame* r=emilio 2018-09-21 17:45:49 +00:00
ScrollStyles.cpp Bug 1479995 - Rename ScrollbarStyles to ScrollStyles. r=mstange 2018-08-01 16:14:26 +10:00
ScrollStyles.h Bug 1479995 - Rename ScrollbarStyles to ScrollStyles. r=mstange 2018-08-01 16:14:26 +10:00
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
Units.h
UnitTransforms.h Bug 1494836. Replace NormalizedRect for visible area. r=mstange 2018-09-26 10:32:41 -04:00
WordMovementType.h
ZoomConstraintsClient.cpp Bug 1479549 Add a pref to disable double tap zooming in APZ r=botond 2018-08-01 11:25:32 -07:00
ZoomConstraintsClient.h