Index: content/browser/renderer_host/render_widget_host_view_win.h |
diff --git a/content/browser/renderer_host/render_widget_host_view_win.h b/content/browser/renderer_host/render_widget_host_view_win.h |
index e1178947cbc53d71ca5eca1e5e9484fc07b00ea2..de3595ddc0d6d874e164265e4788d2f4adb1e722 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_win.h |
+++ b/content/browser/renderer_host/render_widget_host_view_win.h |
@@ -24,6 +24,8 @@ |
#include "content/common/content_export.h" |
#include "content/public/browser/notification_observer.h" |
#include "content/public/browser/notification_registrar.h" |
+#include "ui/base/gestures/gesture_types.h" |
+#include "ui/base/gestures/gesture_recognizer.h" |
#include "ui/base/win/ime_input.h" |
#include "ui/gfx/native_widget_types.h" |
#include "ui/gfx/point.h" |
@@ -51,6 +53,10 @@ namespace ui { |
class ViewProp; |
} |
+namespace views{ |
+class GestureEvent; |
+} |
+ |
typedef CWinTraits<WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, 0> |
RenderWidgetHostHWNDTraits; |
@@ -94,7 +100,9 @@ class RenderWidgetHostViewWin |
public content::RenderWidgetHostViewBase, |
public content::NotificationObserver, |
public BrowserAccessibilityDelegate, |
- public gfx::SysColorChangeListener { |
+ public gfx::SysColorChangeListener, |
+ public ui::GestureConsumer, |
+ public ui::GestureEventHelper { |
public: |
virtual ~RenderWidgetHostViewWin(); |
@@ -248,6 +256,23 @@ class RenderWidgetHostViewWin |
// Implementation of SysColorChangeListener: |
virtual void OnSysColorChange() OVERRIDE; |
+ // Overridden from ui::GestureEventHelper. |
+ virtual ui::GestureEvent* CreateGestureEvent( |
+ ui::EventType type, |
+ const gfx::Point& location, |
+ int flags, |
+ const base::Time& time, |
sky
2012/05/04 16:23:40
Same comment from other review: no refs for times.
|
+ float param_first, |
+ float param_second, |
+ unsigned int touch_id_bitfield) OVERRIDE; |
+ virtual ui::TouchEvent* CreateTouchEvent( |
+ ui::EventType type, |
+ const gfx::Point& location, |
+ int touch_id, |
+ const base::TimeDelta& time_stamp) OVERRIDE; |
+ virtual bool DispatchLongPressGestureEvent(ui::GestureEvent* event) OVERRIDE; |
+ virtual bool DispatchCancelTouchEvent(ui::TouchEvent* event) OVERRIDE; |
+ |
protected: |
friend class content::RenderWidgetHostView; |
@@ -333,13 +358,14 @@ class RenderWidgetHostViewWin |
// becomes hidden, this method is called to reset the tooltip. |
void ResetTooltip(); |
+ // Builds and forwards a WebKitGestureEvent to the renderer. |
+ bool ForwardGestureEventToRenderer( |
+ WebKit::WebInputEvent::Type eventType, |
sky
2012/05/04 16:23:40
eventType -> event_type
|
+ const views::GestureEvent* gesture); |
+ void ProcessGestures( ui::GestureRecognizer::Gestures* gestures); |
sky
2012/05/04 16:23:40
remove space.
Add newline before methods.
|
// Sends the specified mouse event to the renderer. |
void ForwardMouseEventToRenderer(UINT message, WPARAM wparam, LPARAM lparam); |
- // Synthesize mouse wheel event. |
- LRESULT SynthesizeMouseWheel(bool is_vertical, int scroll_code, |
- short scroll_position); |
- |
// Shuts down the render_widget_host_. This is a separate function so we can |
// invoke it from the message loop. |
void ShutdownHost(); |
@@ -575,6 +601,8 @@ class RenderWidgetHostViewWin |
// Are touch events currently enabled? |
bool touch_events_enabled_; |
+ scoped_ptr<ui::GestureRecognizer> gesture_recognizer_; |
+ |
gfx::ScopedSysColorChangeListener sys_color_change_listener_; |
DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostViewWin); |