Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1182)

Unified Diff: Source/core/page/EventHandler.h

Issue 988823003: Use scroll customization primitives for touch scrolling (behind REF). (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Fix nullptr dereference. Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/page/EventHandler.h
diff --git a/Source/core/page/EventHandler.h b/Source/core/page/EventHandler.h
index 3c871e25ff524b28addf29356c4222d7b985f2dd..724543ea79fb188ec50699cdf34adc336f5d98ce 100644
--- a/Source/core/page/EventHandler.h
+++ b/Source/core/page/EventHandler.h
@@ -74,6 +74,7 @@ class LayerScrollableArea;
class LayoutObject;
class ScrollableArea;
class Scrollbar;
+class ScrollState;
class TextEvent;
class VisibleSelection;
class WheelEvent;
@@ -245,7 +246,7 @@ private:
// Scrolls the elements of the DOM tree. Returns true if a node was scrolled.
// False if we reached the root and couldn't scroll anything.
- // direction - The direction to scroll in. If this is a logicl direction, it will be
+ // direction - The direction to scroll in. If this is a logical direction, it will be
// converted to the physical direction based on a node's writing mode.
// granularity - The units that the scroll delta parameter is in.
// startNode - The node to start bubbling the scroll from. If a node can't scroll,
@@ -256,6 +257,8 @@ private:
// absolutePoint - For wheel scrolls - the location, in absolute coordinates, where the event occured.
bool scroll(ScrollDirection, ScrollGranularity, Node* startNode = nullptr, Node** stopNode = nullptr, float delta = 1.0f, IntPoint absolutePoint = IntPoint());
+ void customizedScroll(const Node& startNode, ScrollState&);
+
TouchAction intersectTouchAction(const TouchAction, const TouchAction);
TouchAction computeEffectiveTouchAction(const Node&);
@@ -395,6 +398,12 @@ private:
Timer<EventHandler> m_activeIntervalTimer;
double m_lastShowPressTimestamp;
RefPtrWillBeMember<Element> m_lastDeferredTapElement;
+
+ // Only used with the ScrollCustomization runtime enabled feature.
+ WillBeHeapDeque<RefPtrWillBeMember<Element>> m_currentScrollChain;
+ // True iff some of the delta has been consumed for the current
+ // scroll sequence. Only used with ScrollCustomization.
Rick Byers 2015/03/11 02:22:19 consumed within this frame, or by this frame any a
tdresser 2015/03/20 18:00:37 Within this frame or any child frames. I've added
Rick Byers 2015/03/26 21:22:49 Thanks, this is great.
+ bool m_deltaConsumedForScrollSequence;
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698