Index: base/message_pump_x.cc |
diff --git a/base/message_pump_x.cc b/base/message_pump_x.cc |
index 33ca2d5e6f595c1fa14346b7e247186bf786600d..45f24a6d77e6c2639fd705b630c6b414b5833177 100644 |
--- a/base/message_pump_x.cc |
+++ b/base/message_pump_x.cc |
@@ -193,7 +193,7 @@ bool MessagePumpX::ProcessXEvent(XEvent* xev) { |
have_cookie = true; |
} |
- if (WillProcessXEvent(xev) == MessagePumpObserver::EVENT_CONTINUE) { |
+ if (WillProcessXEvent(xev) == EVENT_CONTINUE) { |
MessagePumpDispatcher::DispatchStatus status = |
GetDispatcher()->Dispatch(xev); |
@@ -203,6 +203,7 @@ bool MessagePumpX::ProcessXEvent(XEvent* xev) { |
} else if (status == MessagePumpDispatcher::EVENT_IGNORED) { |
VLOG(1) << "Event (" << xev->type << ") not handled."; |
} |
+ DidProcessXEvent(xev); |
} |
if (have_cookie) { |
@@ -264,12 +265,20 @@ bool MessagePumpX::WillProcessXEvent(XEvent* xevent) { |
ObserverListBase<MessagePumpObserver>::Iterator it(observers()); |
MessagePumpObserver* obs; |
while ((obs = it.GetNext()) != NULL) { |
- if (obs->WillProcessXEvent(xevent)) |
+ if (obs->WillProcessEvent(xevent)) |
return true; |
} |
return false; |
} |
+void MessagePumpX::DidProcessXEvent(XEvent* xevent) { |
+ ObserverListBase<MessagePumpObserver>::Iterator it(observers()); |
+ MessagePumpObserver* obs; |
+ while ((obs = it.GetNext()) != NULL) { |
+ obs->DidProcessEvent(xevent); |
+ } |
+} |
+ |
#if defined(TOOLKIT_USES_GTK) |
GdkFilterReturn MessagePumpX::GdkEventFilter(GdkXEvent* gxevent, |
GdkEvent* gevent, |
@@ -328,9 +337,4 @@ COMPILE_ASSERT(XLASTEvent >= LASTEvent, XLASTEvent_too_small); |
#endif // defined(TOOLKIT_USES_GTK) |
-MessagePumpObserver::EventStatus |
- MessagePumpObserver::WillProcessXEvent(XEvent* xev) { |
- return EVENT_CONTINUE; |
-} |
- |
} // namespace base |