Index: ui/views/event_monitor.h |
diff --git a/ui/views/event_monitor.h b/ui/views/event_monitor.h |
index 277321909fd0346963c60e1da7a6cfa95c6269eb..183e0950418c7a864ff7121535c96e9167664703 100644 |
--- a/ui/views/event_monitor.h |
+++ b/ui/views/event_monitor.h |
@@ -5,7 +5,9 @@ |
#ifndef UI_VIEWS_EVENT_MONITOR_H_ |
#define UI_VIEWS_EVENT_MONITOR_H_ |
+#include "base/memory/scoped_ptr.h" |
#include "ui/gfx/geometry/point.h" |
+#include "ui/gfx/native_widget_types.h" |
#include "ui/views/views_export.h" |
namespace ui { |
@@ -14,13 +16,25 @@ class EventHandler; |
namespace views { |
-// RAII-style class that forwards events posted to the application to |
-// |event_handler| before they are dispatched. |
+// RAII-style class that forwards events to |event_handler| before they are |
+// dispatched. |
class VIEWS_EXPORT EventMonitor { |
public: |
virtual ~EventMonitor() {} |
- static EventMonitor* Create(ui::EventHandler* event_handler); |
+ // Create an instance for monitoring application events. |
+ // Events will be forwarded to |event_handler| before they are dispatched to |
+ // the application. |
+ static scoped_ptr<EventMonitor> CreateApplicationMonitor( |
+ ui::EventHandler* event_handler); |
+ |
+ // Create an instance for monitoring events on a specific window. |
+ // Events will be forwarded to |event_handler| before they are dispatched to |
+ // |target_window|. |
+ // The EventMonitor instance must be destroyed before |target_window|. |
+ static scoped_ptr<EventMonitor> CreateWindowMonitor( |
+ ui::EventHandler* event_handler, |
+ gfx::NativeWindow target_window); |
// Returns the last mouse location seen in a mouse event in screen |
// coordinates. |