summaryrefslogtreecommitdiffstats
path: root/views
diff options
context:
space:
mode:
authoroshima@google.com <oshima@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-04 00:10:47 +0000
committeroshima@google.com <oshima@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-04 00:10:47 +0000
commit2e5597c7a7dad2a5255979752de155358c485ad4 (patch)
tree13ba82ec946edc07c058ed35cf2999d402914033 /views
parent8e1eaf972ae4e682b00a75fe4bfc54b2da2199b3 (diff)
downloadchromium_src-2e5597c7a7dad2a5255979752de155358c485ad4.zip
chromium_src-2e5597c7a7dad2a5255979752de155358c485ad4.tar.gz
chromium_src-2e5597c7a7dad2a5255979752de155358c485ad4.tar.bz2
Consolidate message observer API for MessagePumpX and MessagePumWin
This is an attempt to simplify the code around message pump observer. BUG=none TEST=none Review URL: http://codereview.chromium.org/8021009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103825 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views')
-rw-r--r--views/mouse_watcher.cc27
-rw-r--r--views/widget/native_widget_gtk.cc9
-rw-r--r--views/widget/native_widget_win.cc6
-rw-r--r--views/widget/native_widget_win.h5
-rw-r--r--views/widget/tooltip_manager_views.cc19
-rw-r--r--views/widget/tooltip_manager_views.h10
6 files changed, 48 insertions, 28 deletions
diff --git a/views/mouse_watcher.cc b/views/mouse_watcher.cc
index df5adeb..5daab25 100644
--- a/views/mouse_watcher.cc
+++ b/views/mouse_watcher.cc
@@ -35,10 +35,12 @@ class MouseWatcher::Observer : public MessageLoopForUI::Observer {
// MessageLoop::Observer implementation:
#if defined(OS_WIN)
- void WillProcessMessage(const MSG& msg) OVERRIDE {
+ virtual base::EventStatus WillProcessEvent(
+ const base::NativeEvent& event) OVERRIDE {
+ return base::EVENT_CONTINUE;
}
- void DidProcessMessage(const MSG& msg) OVERRIDE {
+ virtual void DidProcessEvent(const base::NativeEvent& event) OVERRIDE {
// We spy on three different Windows messages here to see if the mouse has
// moved out of the bounds of the view. The messages are:
//
@@ -50,7 +52,7 @@ class MouseWatcher::Observer : public MessageLoopForUI::Observer {
// WM_NCMOUSELEAVE:
// For notification when the mouse leaves the _non-client_ area.
//
- switch (msg.message) {
+ switch (event.message) {
case WM_MOUSEMOVE:
HandleGlobalMouseMoveEvent(false);
break;
@@ -61,7 +63,7 @@ class MouseWatcher::Observer : public MessageLoopForUI::Observer {
}
}
#elif defined(USE_WAYLAND)
- MessageLoopForUI::Observer::EventStatus WillProcessEvent(
+ virtual MessageLoopForUI::Observer::EventStatus WillProcessEvent(
ui::WaylandEvent* event) OVERRIDE {
switch (event->type) {
case ui::WAYLAND_MOTION:
@@ -76,11 +78,19 @@ class MouseWatcher::Observer : public MessageLoopForUI::Observer {
}
return EVENT_CONTINUE;
}
+#elif defined(TOUCH_UI) || defined(USE_AURA)
+ virtual base::EventStatus WillProcessEvent(
+ const base::NativeEvent& event) OVERRIDE {
+ return base::EVENT_CONTINUE;
+ }
+ virtual void DidProcessEvent(const base::NativeEvent& event) OVERRIDE {
+ NOTIMPLEMENTED();
+ }
#elif defined(TOOLKIT_USES_GTK)
- void WillProcessEvent(GdkEvent* event) OVERRIDE {
+ virtual void WillProcessEvent(GdkEvent* event) OVERRIDE {
}
- void DidProcessEvent(GdkEvent* event) OVERRIDE {
+ virtual void DidProcessEvent(GdkEvent* event) OVERRIDE {
switch (event->type) {
case GDK_MOTION_NOTIFY:
HandleGlobalMouseMoveEvent(false);
@@ -92,11 +102,6 @@ class MouseWatcher::Observer : public MessageLoopForUI::Observer {
break;
}
}
-#else
- EventStatus WillProcessXEvent(XEvent* event) OVERRIDE {
- // TODO(davemoore) Implement.
- return EVENT_CONTINUE;
- }
#endif
private:
diff --git a/views/widget/native_widget_gtk.cc b/views/widget/native_widget_gtk.cc
index 0b4abe8..6ca4190 100644
--- a/views/widget/native_widget_gtk.cc
+++ b/views/widget/native_widget_gtk.cc
@@ -260,7 +260,15 @@ class NativeWidgetGtk::DropObserver : public MessageLoopForUI::Observer {
static DropObserver* GetInstance() {
return Singleton<DropObserver>::get();
}
+#if defined(TOUCH_UI)
+ virtual base::EventStatus WillProcessEvent(
+ const base::NativeEvent& event) OVERRIDE {
+ return base::EVENT_CONTINUE;
+ }
+ virtual void DidProcessEvent(const base::NativeEvent& event) OVERRIDE {
+ }
+#else
virtual void WillProcessEvent(GdkEvent* event) {
if (event->type == GDK_DROP_START) {
NativeWidgetGtk* widget = GetNativeWidgetGtkForEvent(event);
@@ -271,6 +279,7 @@ class NativeWidgetGtk::DropObserver : public MessageLoopForUI::Observer {
virtual void DidProcessEvent(GdkEvent* event) {
}
+#endif
private:
NativeWidgetGtk* GetNativeWidgetGtkForEvent(GdkEvent* event) {
diff --git a/views/widget/native_widget_win.cc b/views/widget/native_widget_win.cc
index 1acf3c9..1afcb41 100644
--- a/views/widget/native_widget_win.cc
+++ b/views/widget/native_widget_win.cc
@@ -1121,10 +1121,12 @@ gfx::Rect NativeWidgetWin::GetWorkAreaBoundsInScreen() const {
////////////////////////////////////////////////////////////////////////////////
// NativeWidgetWin, MessageLoop::Observer implementation:
-void NativeWidgetWin::WillProcessMessage(const MSG& msg) {
+base::EventStatus NativeWidgetWin::WillProcessEvent(
+ const base::NativeEvent& event) {
+ return base::EVENT_CONTINUE;
}
-void NativeWidgetWin::DidProcessMessage(const MSG& msg) {
+void NativeWidgetWin::DidProcessEvent(const base::NativeEvent& event) {
RedrawInvalidRect();
}
diff --git a/views/widget/native_widget_win.h b/views/widget/native_widget_win.h
index 252d6cd..c9f056f 100644
--- a/views/widget/native_widget_win.h
+++ b/views/widget/native_widget_win.h
@@ -279,8 +279,9 @@ class VIEWS_EXPORT NativeWidgetWin : public ui::WindowImpl,
};
// Overridden from MessageLoop::Observer:
- void WillProcessMessage(const MSG& msg) OVERRIDE;
- virtual void DidProcessMessage(const MSG& msg) OVERRIDE;
+ virtual base::EventStatus WillProcessEvent(
+ const base::NativeEvent& event) OVERRIDE;
+ virtual void DidProcessEvent(const base::NativeEvent& event) OVERRIDE;
// Overridden from WindowImpl:
virtual HICON GetDefaultWindowIcon() const OVERRIDE;
diff --git a/views/widget/tooltip_manager_views.cc b/views/widget/tooltip_manager_views.cc
index 2537d7e..2a1c95a 100644
--- a/views/widget/tooltip_manager_views.cc
+++ b/views/widget/tooltip_manager_views.cc
@@ -114,23 +114,28 @@ base::MessagePumpObserver::EventStatus TooltipManagerViews::WillProcessEvent(
return base::MessagePumpObserver::EVENT_CONTINUE;
}
#elif defined(USE_X11)
-base::MessagePumpObserver::EventStatus TooltipManagerViews::WillProcessXEvent(
- XEvent* xevent) {
- XGenericEventCookie* cookie = &xevent->xcookie;
+base::EventStatus TooltipManagerViews::WillProcessEvent(
+ const base::NativeEvent& event) {
+ XGenericEventCookie* cookie = &event->xcookie;
if (cookie->evtype == XI_Motion) {
- XIDeviceEvent* xievent = static_cast<XIDeviceEvent*>(cookie->data);
+ const XIDeviceEvent* xievent = static_cast<XIDeviceEvent*>(cookie->data);
OnMouseMoved(static_cast<int>(xievent->event_x),
static_cast<int>(xievent->event_y));
}
- return base::MessagePumpObserver::EVENT_CONTINUE;
+ return base::EVENT_CONTINUE;
+}
+
+void TooltipManagerViews::DidProcessEvent(const base::NativeEvent& event) {
}
#elif defined(OS_WIN)
-void TooltipManagerViews::WillProcessMessage(const MSG& msg) {
+base::EventStatus TooltipManagerViews::WillProcessEvent(
+ const base::NativeEvent& event) {
if (msg.message == WM_MOUSEMOVE)
OnMouseMoved(GET_X_LPARAM(msg.lParam), GET_Y_LPARAM(msg.lParam));
+ return base::EVENT_CONTINUE;
}
-void TooltipManagerViews::DidProcessMessage(const MSG& msg) {
+void TooltipManagerViews::DidProcessEvent(const base::NativeEvent& event) {
}
#endif
diff --git a/views/widget/tooltip_manager_views.h b/views/widget/tooltip_manager_views.h
index ced0ea2..c2d63cd 100644
--- a/views/widget/tooltip_manager_views.h
+++ b/views/widget/tooltip_manager_views.h
@@ -45,13 +45,11 @@ class TooltipManagerViews : public TooltipManager,
#if defined(USE_WAYLAND)
virtual base::MessagePumpObserver::EventStatus WillProcessEvent(
ui::WaylandEvent* event) OVERRIDE;
-#elif defined(USE_X11)
+#else
// MessageLoopForUI::Observer
- virtual base::MessagePumpObserver::EventStatus WillProcessXEvent(
- XEvent* xevent) OVERRIDE;
-#elif defined(OS_WIN)
- virtual void WillProcessMessage(const MSG& msg) OVERRIDE;
- virtual void DidProcessMessage(const MSG& msg) OVERRIDE;
+ virtual base::EventStatus WillProcessEvent(
+ const base::NativeEvent& event) OVERRIDE;
+ virtual void DidProcessEvent(const base::NativeEvent& event) OVERRIDE;
#endif
private: