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

Unified Diff: Source/web/WebInputEventConversion.cpp

Issue 1308313005: Modify gesture event types for WebView-tag scroll bubbling. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Use -1 instead of 0 for null plugin id. Created 5 years, 3 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/web/WebInputEventConversion.cpp
diff --git a/Source/web/WebInputEventConversion.cpp b/Source/web/WebInputEventConversion.cpp
index df65059f3854eea1db3b53d39b914e98e04c179d..025a8ac2b21fff7bebf859fca93e7e066279c004 100644
--- a/Source/web/WebInputEventConversion.cpp
+++ b/Source/web/WebInputEventConversion.cpp
@@ -197,6 +197,7 @@ PlatformWheelEventBuilder::PlatformWheelEventBuilder(Widget* widget, const WebMo
m_hasPreciseScrollingDeltas = e.hasPreciseScrollingDeltas;
m_canScroll = e.canScroll;
+ m_resendingPluginId = e.resendingPluginId;
m_railsMode = static_cast<PlatformEvent::RailsMode>(e.railsMode);
#if OS(MACOSX)
m_phase = static_cast<PlatformWheelEventPhase>(e.phase);
@@ -214,15 +215,20 @@ PlatformGestureEventBuilder::PlatformGestureEventBuilder(Widget* widget, const W
switch (e.type) {
case WebInputEvent::GestureScrollBegin:
m_type = PlatformEvent::GestureScrollBegin;
+ m_data.m_scroll.m_resendingPluginId = e.resendingPluginId;
break;
case WebInputEvent::GestureScrollEnd:
m_type = PlatformEvent::GestureScrollEnd;
+ m_data.m_scroll.m_resendingPluginId = e.resendingPluginId;
break;
case WebInputEvent::GestureFlingStart:
m_type = PlatformEvent::GestureFlingStart;
+ m_data.m_scroll.m_velocityX = e.data.flingStart.velocityX;
+ m_data.m_scroll.m_velocityY = e.data.flingStart.velocityY;
break;
case WebInputEvent::GestureScrollUpdate:
m_type = PlatformEvent::GestureScrollUpdate;
+ m_data.m_scroll.m_resendingPluginId = e.resendingPluginId;
m_data.m_scroll.m_deltaX = scaleDeltaToWindow(widget, e.data.scrollUpdate.deltaX);
m_data.m_scroll.m_deltaY = scaleDeltaToWindow(widget, e.data.scrollUpdate.deltaY);
m_data.m_scroll.m_velocityX = e.data.scrollUpdate.velocityX;
@@ -606,6 +612,7 @@ WebMouseWheelEventBuilder::WebMouseWheelEventBuilder(const Widget* widget, const
wheelTicksY = event.ticksY();
scrollByPage = event.deltaMode() == WheelEvent::DOM_DELTA_PAGE;
canScroll = event.canScroll();
+ resendingPluginId = event.resendingPluginId();
railsMode = static_cast<RailsMode>(event.railsMode());
}
@@ -737,20 +744,28 @@ WebTouchEventBuilder::WebTouchEventBuilder(const LayoutObject* layoutObject, con
WebGestureEventBuilder::WebGestureEventBuilder(const LayoutObject* layoutObject, const GestureEvent& event)
{
- if (event.type() == EventTypeNames::gestureshowpress)
+ if (event.type() == EventTypeNames::gestureshowpress) {
type = GestureShowPress;
- else if (event.type() == EventTypeNames::gesturelongpress)
+ } else if (event.type() == EventTypeNames::gesturelongpress) {
type = GestureLongPress;
- else if (event.type() == EventTypeNames::gesturetapdown)
+ } else if (event.type() == EventTypeNames::gesturetapdown) {
type = GestureTapDown;
- else if (event.type() == EventTypeNames::gesturescrollstart)
+ } else if (event.type() == EventTypeNames::gesturescrollstart) {
type = GestureScrollBegin;
- else if (event.type() == EventTypeNames::gesturescrollend)
+ resendingPluginId = event.resendingPluginId();
+ } else if (event.type() == EventTypeNames::gesturescrollend) {
type = GestureScrollEnd;
- else if (event.type() == EventTypeNames::gesturescrollupdate) {
+ resendingPluginId = event.resendingPluginId();
+ } else if (event.type() == EventTypeNames::gesturescrollupdate) {
type = GestureScrollUpdate;
data.scrollUpdate.deltaX = event.deltaX();
data.scrollUpdate.deltaY = event.deltaY();
+ data.scrollUpdate.inertial = event.inertial();
+ resendingPluginId = event.resendingPluginId();
+ } else if (event.type() == EventTypeNames::gestureflingstart) {
+ type = GestureFlingStart;
+ data.flingStart.velocityX = event.velocityX();
+ data.flingStart.velocityY = event.velocityY();
} else if (event.type() == EventTypeNames::gesturetap) {
type = GestureTap;
data.tap.tapCount = 1;

Powered by Google App Engine
This is Rietveld 408576698