| Index: Source/platform/PlatformGestureEvent.h
|
| diff --git a/Source/platform/PlatformGestureEvent.h b/Source/platform/PlatformGestureEvent.h
|
| index 254224640898f9ccbc5dfc7b613207f82a226dcc..2a9b4ab770e5ba5091e7ea4ff38e37cd270abff9 100644
|
| --- a/Source/platform/PlatformGestureEvent.h
|
| +++ b/Source/platform/PlatformGestureEvent.h
|
| @@ -49,15 +49,16 @@ public:
|
| , m_globalPosition(globalPosition)
|
| , m_area(area)
|
| {
|
| - ASSERT(type == PlatformEvent::GestureScrollBegin
|
| + memset(&m_data, 0, sizeof(m_data));
|
| + if (type == PlatformEvent::GestureScrollBegin
|
| || type == PlatformEvent::GestureScrollEnd
|
| || type == PlatformEvent::GestureScrollUpdate
|
| - || type == PlatformEvent::GestureScrollUpdateWithoutPropagation);
|
| - memset(&m_data, 0, sizeof(m_data));
|
| - m_data.m_scrollUpdate.m_deltaX = deltaX;
|
| - m_data.m_scrollUpdate.m_deltaY = deltaY;
|
| - m_data.m_scrollUpdate.m_velocityX = velocityX;
|
| - m_data.m_scrollUpdate.m_velocityY = velocityY;
|
| + || type == PlatformEvent::GestureScrollUpdateWithoutPropagation) {
|
| + m_data.m_scrollUpdate.m_deltaX = deltaX;
|
| + m_data.m_scrollUpdate.m_deltaY = deltaY;
|
| + m_data.m_scrollUpdate.m_velocityX = velocityX;
|
| + m_data.m_scrollUpdate.m_velocityY = velocityY;
|
| + }
|
| }
|
|
|
| const IntPoint& position() const { return m_position; } // PlatformWindow coordinates.
|
| @@ -105,6 +106,30 @@ public:
|
| return m_data.m_pinchUpdate.m_scale;
|
| }
|
|
|
| + void applyTouchAdjustment(const IntPoint& adjustedPosition)
|
| + {
|
| + // Update the window-relative position of the event so that the node that was
|
| + // ultimately hit is under this point (i.e. elementFromPoint for the client
|
| + // co-ordinates in a 'click' event should yield the target). The global
|
| + // position is intentionally left unmodified because it's intended to reflect
|
| + // raw co-ordinates unrelated to any content.
|
| + m_position = adjustedPosition;
|
| + }
|
| +
|
| + bool isScrollEvent() const
|
| + {
|
| + switch (m_type) {
|
| + case GestureScrollBegin:
|
| + case GestureScrollEnd:
|
| + case GestureScrollUpdate:
|
| + case GestureScrollUpdateWithoutPropagation:
|
| + case GestureFlingStart:
|
| + return true;
|
| + default:
|
| + return false;
|
| + }
|
| + }
|
| +
|
| protected:
|
| IntPoint m_position;
|
| IntPoint m_globalPosition;
|
|
|