OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
67 class OptionalCursor; | 67 class OptionalCursor; |
68 class PlatformGestureEvent; | 68 class PlatformGestureEvent; |
69 class PlatformKeyboardEvent; | 69 class PlatformKeyboardEvent; |
70 class PlatformTouchEvent; | 70 class PlatformTouchEvent; |
71 class PlatformWheelEvent; | 71 class PlatformWheelEvent; |
72 class Layer; | 72 class Layer; |
73 class LayerScrollableArea; | 73 class LayerScrollableArea; |
74 class LayoutObject; | 74 class LayoutObject; |
75 class ScrollableArea; | 75 class ScrollableArea; |
76 class Scrollbar; | 76 class Scrollbar; |
77 class ScrollState; | |
77 class TextEvent; | 78 class TextEvent; |
78 class VisibleSelection; | 79 class VisibleSelection; |
79 class WheelEvent; | 80 class WheelEvent; |
80 class Widget; | 81 class Widget; |
81 | 82 |
82 enum AppendTrailingWhitespace { ShouldAppendTrailingWhitespace, DontAppendTraili ngWhitespace }; | 83 enum AppendTrailingWhitespace { ShouldAppendTrailingWhitespace, DontAppendTraili ngWhitespace }; |
83 enum class DragInitiator; | 84 enum class DragInitiator; |
84 | 85 |
85 class EventHandler : public NoBaseWillBeGarbageCollectedFinalized<EventHandler> { | 86 class EventHandler : public NoBaseWillBeGarbageCollectedFinalized<EventHandler> { |
86 WTF_MAKE_NONCOPYABLE(EventHandler); | 87 WTF_MAKE_NONCOPYABLE(EventHandler); |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
238 | 239 |
239 void fakeMouseMoveEventTimerFired(Timer<EventHandler>*); | 240 void fakeMouseMoveEventTimerFired(Timer<EventHandler>*); |
240 void cancelFakeMouseMoveEvent(); | 241 void cancelFakeMouseMoveEvent(); |
241 bool isCursorVisible() const; | 242 bool isCursorVisible() const; |
242 void updateCursor(); | 243 void updateCursor(); |
243 | 244 |
244 ScrollableArea* associatedScrollableArea(const Layer*) const; | 245 ScrollableArea* associatedScrollableArea(const Layer*) const; |
245 | 246 |
246 // Scrolls the elements of the DOM tree. Returns true if a node was scrolled . | 247 // Scrolls the elements of the DOM tree. Returns true if a node was scrolled . |
247 // False if we reached the root and couldn't scroll anything. | 248 // False if we reached the root and couldn't scroll anything. |
248 // direction - The direction to scroll in. If this is a logicl direction, it will be | 249 // direction - The direction to scroll in. If this is a logical direction, i t will be |
249 // converted to the physical direction based on a node's writing mode. | 250 // converted to the physical direction based on a node's writing mode. |
250 // granularity - The units that the scroll delta parameter is in. | 251 // granularity - The units that the scroll delta parameter is in. |
251 // startNode - The node to start bubbling the scroll from. If a node can't s croll, | 252 // startNode - The node to start bubbling the scroll from. If a node can't s croll, |
252 // the scroll bubbles up to the containing block. | 253 // the scroll bubbles up to the containing block. |
253 // stopNode - On input, if provided and non-null, the node at which we shoul d stop bubbling on input. | 254 // stopNode - On input, if provided and non-null, the node at which we shoul d stop bubbling on input. |
254 // On output, if provided and a node was scrolled stopNode will p oint to that node. | 255 // On output, if provided and a node was scrolled stopNode will p oint to that node. |
255 // delta - The delta to scroll by, in the units of the granularity parameter . (e.g. pixels, lines, pages, etc.) | 256 // delta - The delta to scroll by, in the units of the granularity parameter . (e.g. pixels, lines, pages, etc.) |
256 // absolutePoint - For wheel scrolls - the location, in absolute coordinates , where the event occured. | 257 // absolutePoint - For wheel scrolls - the location, in absolute coordinates , where the event occured. |
257 bool scroll(ScrollDirection, ScrollGranularity, Node* startNode = nullptr, N ode** stopNode = nullptr, float delta = 1.0f, IntPoint absolutePoint = IntPoint( )); | 258 bool scroll(ScrollDirection, ScrollGranularity, Node* startNode = nullptr, N ode** stopNode = nullptr, float delta = 1.0f, IntPoint absolutePoint = IntPoint( )); |
258 | 259 |
260 void customizedScroll(const Node& startNode, ScrollState&); | |
261 | |
259 TouchAction intersectTouchAction(const TouchAction, const TouchAction); | 262 TouchAction intersectTouchAction(const TouchAction, const TouchAction); |
260 TouchAction computeEffectiveTouchAction(const Node&); | 263 TouchAction computeEffectiveTouchAction(const Node&); |
261 | 264 |
262 HitTestResult hitTestResultInFrame(LocalFrame*, const LayoutPoint&, HitTestR equest::HitTestRequestType hitType = HitTestRequest::ReadOnly | HitTestRequest:: Active); | 265 HitTestResult hitTestResultInFrame(LocalFrame*, const LayoutPoint&, HitTestR equest::HitTestRequestType hitType = HitTestRequest::ReadOnly | HitTestRequest:: Active); |
263 | 266 |
264 void invalidateClick(); | 267 void invalidateClick(); |
265 | 268 |
266 void updateMouseEventTargetNode(Node*, const PlatformMouseEvent&, bool fireM ouseOverOut); | 269 void updateMouseEventTargetNode(Node*, const PlatformMouseEvent&, bool fireM ouseOverOut); |
267 | 270 |
268 MouseEventWithHitTestResults prepareMouseEvent(const HitTestRequest&, const PlatformMouseEvent&); | 271 MouseEventWithHitTestResults prepareMouseEvent(const HitTestRequest&, const PlatformMouseEvent&); |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
388 RefPtrWillBeMember<Node> m_previousGestureScrolledNode; | 391 RefPtrWillBeMember<Node> m_previousGestureScrolledNode; |
389 RefPtrWillBeMember<Scrollbar> m_scrollbarHandlingScrollGesture; | 392 RefPtrWillBeMember<Scrollbar> m_scrollbarHandlingScrollGesture; |
390 | 393 |
391 double m_maxMouseMovedDuration; | 394 double m_maxMouseMovedDuration; |
392 | 395 |
393 bool m_longTapShouldInvokeContextMenu; | 396 bool m_longTapShouldInvokeContextMenu; |
394 | 397 |
395 Timer<EventHandler> m_activeIntervalTimer; | 398 Timer<EventHandler> m_activeIntervalTimer; |
396 double m_lastShowPressTimestamp; | 399 double m_lastShowPressTimestamp; |
397 RefPtrWillBeMember<Element> m_lastDeferredTapElement; | 400 RefPtrWillBeMember<Element> m_lastDeferredTapElement; |
401 | |
402 // Only used with the ScrollCustomization runtime enabled feature. | |
403 WillBeHeapDeque<RefPtrWillBeMember<Element>> m_currentScrollChain; | |
404 // True iff some of the delta has been consumed for the current | |
405 // 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.
| |
406 bool m_deltaConsumedForScrollSequence; | |
398 }; | 407 }; |
399 | 408 |
400 } // namespace blink | 409 } // namespace blink |
401 | 410 |
402 #endif // EventHandler_h | 411 #endif // EventHandler_h |
OLD | NEW |