Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(857)

Unified Diff: ui/events/event_source.h

Issue 210203002: events: Introduce EventRewriter. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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

Powered by Google App Engine
This is Rietveld 408576698