Chromium Code Reviews| Index: ui/events/event_source.h |
| diff --git a/ui/events/event_source.h b/ui/events/event_source.h |
| index aba2c1f6600d9a2787fc99d8ec61027dd2174b1f..74ea68a0b48f376eceb2c159783cf76dbaa87fe6 100644 |
| --- a/ui/events/event_source.h |
| +++ b/ui/events/event_source.h |
| @@ -12,6 +12,7 @@ namespace ui { |
| class Event; |
| class EventProcessor; |
| +class EventRewriter; |
| // EventSource receives events from the native platform (e.g. X11, win32 etc.) |
| // and sends the events to an EventProcessor. |
| @@ -21,8 +22,20 @@ class EVENTS_EXPORT EventSource { |
| virtual EventProcessor* GetEventProcessor() = 0; |
| + // Adds a rewriter to modify events before they are sent to the |
| + // EventProcessor. The rewriter must be explicitly removed from the |
| + // EventSource before the rewriter is destroyed. The EventSource |
| + // does not take ownership of the rewriter. |
| + void AddEventRewriter(EventRewriter* rewriter); |
| + void RemoveEventRewriter(EventRewriter* rewriter); |
| + |
| protected: |
| EventDispatchDetails SendEventToProcessor(Event* event); |
| + |
| + private: |
| + typedef std::vector<EventRewriter*> EventRewriterList; |
| + EventDispatchDetails DeliverEventToProcessor(Event* event); |
| + EventRewriterList rewriter_list_; |
|
sadrul
2014/03/24 21:15:38
DISALLOW_COPY_AND_ASSIGN
|
| }; |
| } // namespace ui |