Chromium Code Reviews| Index: chrome/renderer/render_widget.cc |
| diff --git a/chrome/renderer/render_widget.cc b/chrome/renderer/render_widget.cc |
| index 480285a3fcd597355269981f33da4809345d5929..e6dff43f18ea91b208b5710a74c244787ec48d7a 100644 |
| --- a/chrome/renderer/render_widget.cc |
| +++ b/chrome/renderer/render_widget.cc |
| @@ -36,6 +36,10 @@ |
| #include "third_party/skia/include/core/SkMallocPixelRef.h" |
| #endif // defined(OS_POSIX) |
| +#if defined(TOUCH_UI) |
| +#include "chrome/renderer/gesture_manager.h" |
| +#endif |
| + |
| #include "third_party/WebKit/WebKit/chromium/public/WebWidget.h" |
| using WebKit::WebCompositionUnderline; |
| @@ -54,6 +58,10 @@ using WebKit::WebTextInputType; |
| using WebKit::WebVector; |
| using WebKit::WebWidget; |
| +#if defined(TOUCH_UI) |
| +using WebKit::WebTouchEvent; |
| +#endif |
| + |
| RenderWidget::RenderWidget(RenderThreadBase* render_thread, |
| WebKit::WebPopupType popup_type) |
| : routing_id_(MSG_ROUTING_NONE), |
| @@ -75,7 +83,12 @@ RenderWidget::RenderWidget(RenderThreadBase* render_thread, |
| popup_type_(popup_type), |
| pending_window_rect_count_(0), |
| suppress_next_char_events_(false), |
| - is_gpu_rendering_active_(false) { |
| + is_gpu_rendering_active_(false) |
| +#if defined(TOUCH_UI) |
| + , |
| + gesture_manager_(GestureManager::Get()) |
| +#endif |
| + { |
| RenderProcess::current()->AddRefProcess(); |
| DCHECK(render_thread_); |
| } |
| @@ -103,7 +116,7 @@ RenderWidget* RenderWidget::Create(int32 opener_id, |
| // static |
| WebWidget* RenderWidget::CreateWebWidget(RenderWidget* render_widget) { |
| switch (render_widget->popup_type_) { |
| - case WebKit::WebPopupTypeNone: // Nothing to create. |
| + case WebKit::WebPopupTypeNone: // Nothing to create. |
| break; |
| case WebKit::WebPopupTypeSelect: |
| case WebKit::WebPopupTypeSuggestion: |
| @@ -341,8 +354,17 @@ void RenderWidget::OnHandleInputEvent(const IPC::Message& message) { |
| bool processed = false; |
| if (input_event->type != WebInputEvent::Char || !suppress_next_char_events_) { |
| suppress_next_char_events_ = false; |
| - if (webwidget_) |
| + if (webwidget_) { |
| processed = webwidget_->handleInputEvent(*input_event); |
| +#if defined(TOUCH_UI) |
| + if (WebInputEvent::isTouchEventType(input_event->type)) { |
|
darin (slow to review)
2010/09/25 15:21:06
why is this code here instead of inside the WebVie
|
| + processed = gesture_manager_->ProcessTouchEventForGesture( |
| + *static_cast<const WebTouchEvent*>(input_event), |
| + this, |
| + processed); |
| + } |
| +#endif |
| + } |
| } |
| // If this RawKeyDown event corresponds to a browser keyboard shortcut and |