Index: ash/accelerators/accelerator_dispatcher.h |
diff --git a/ash/accelerators/accelerator_dispatcher.h b/ash/accelerators/accelerator_dispatcher.h |
index af75f48b88aab239e0d468a939a1734c10eae9c7..209b67dcc2ad011902d237c0536b31b2a1fea17e 100644 |
--- a/ash/accelerators/accelerator_dispatcher.h |
+++ b/ash/accelerators/accelerator_dispatcher.h |
@@ -9,6 +9,7 @@ |
#include "ash/ash_export.h" |
#include "base/message_loop.h" |
#include "ui/aura/window.h" |
+#include "ui/aura/window_observer.h" |
namespace ash { |
@@ -16,10 +17,12 @@ namespace ash { |
// Wraps a nested dispatcher to which control is passed if no accelerator key |
// has been pressed. |
// TODO(pkotwicz): Port AcceleratorDispatcher to mac. |
-class ASH_EXPORT AcceleratorDispatcher : public MessageLoop::Dispatcher { |
+class ASH_EXPORT AcceleratorDispatcher : public MessageLoop::Dispatcher, |
+ public aura::WindowObserver { |
public: |
explicit AcceleratorDispatcher(MessageLoop::Dispatcher* nested_dispatcher, |
aura::Window* associated_window); |
+ virtual ~AcceleratorDispatcher(); |
#if defined(USE_X11) |
virtual base::MessagePumpDispatcher::DispatchStatus Dispatch( |
@@ -28,6 +31,9 @@ class ASH_EXPORT AcceleratorDispatcher : public MessageLoop::Dispatcher { |
bool AcceleratorDispatcher::Dispatch(const MSG& msg) OVERRIDE; |
#endif |
+ // aura::WindowObserver overrides: |
+ virtual void OnWindowDestroying(aura::Window* window) OVERRIDE; |
+ |
private: |
MessageLoop::Dispatcher* nested_dispatcher_; |