Chromium Code Reviews| Index: athena/input/accelerator_manager_impl.h |
| diff --git a/athena/input/accelerator_manager_impl.h b/athena/input/accelerator_manager_impl.h |
| index 06a822f9a70d271557d9e8e9076bfd1f5e330ae4..e335ee5cb6db595e567128e8b1def0d34f98c4d8 100644 |
| --- a/athena/input/accelerator_manager_impl.h |
| +++ b/athena/input/accelerator_manager_impl.h |
| @@ -17,10 +17,6 @@ namespace aura { |
| class Window; |
| } |
| -namespace ui { |
| -class AcceleratorManager; |
| -} |
| - |
| namespace wm { |
| class AcceleratorFilter; |
| class NestedAcceleratorController; |
| @@ -35,17 +31,26 @@ namespace athena { |
| class AcceleratorManagerImpl : public AcceleratorManager, |
| public ui::AcceleratorTarget { |
| public: |
| - AcceleratorManagerImpl(); |
| + class AcceleratorWrapper; |
| + |
| + // Creates an AcceleratorManager for global accelerators. |
| + // This is the one returned by AcceleratorManager::Get() |
| + static AcceleratorManagerImpl* CreateGlobalAcceleratorManager(); |
| + |
| + explicit AcceleratorManagerImpl(AcceleratorWrapper* wrapper); |
|
Jun Mukai
2014/06/11 22:07:51
I am not sure what this means. Who can call this
oshima
2014/06/11 22:46:43
Sorry I didn't understand your question.
Jun Mukai
2014/06/11 23:13:22
Ah, it must be called from a static method of its
|
| virtual ~AcceleratorManagerImpl(); |
| void Init(); |
| void OnRootWindowCreated(aura::Window* root_window); |
| - bool IsRegistered(const ui::Accelerator& accelerator) const; |
| - bool IsReserved(const ui::Accelerator& accelerator) const; |
| bool Process(const ui::Accelerator& accelerator); |
| + // AcceleratorManager: |
| + // This is made public so that implementation classes can use this. |
| + virtual bool IsRegistered(const ui::Accelerator& accelerator, |
| + int flags) const OVERRIDE; |
| + |
| private: |
| // AcceleratorManager: |
| virtual void RegisterAccelerators(const AcceleratorData accelerators[], |
| @@ -57,14 +62,12 @@ class AcceleratorManagerImpl : public AcceleratorManager, |
| virtual bool AcceleratorPressed(const ui::Accelerator& accelerator) OVERRIDE; |
| virtual bool CanHandleAccelerators() const OVERRIDE; |
| - class InternalData; |
| - |
| void RegisterAccelerator(const AcceleratorData& accelerator, |
| AcceleratorHandler* handler); |
| + class InternalData; |
|
Jun Mukai
2014/06/11 22:07:51
nit: internal class declaration usually appears ri
oshima
2014/06/11 22:46:43
Done.
|
| std::map<ui::Accelerator, InternalData> accelerators_; |
| - scoped_ptr<ui::AcceleratorManager> accelerator_manager_; |
| - |
| + scoped_ptr<AcceleratorWrapper> accelerator_wrapper_; |
| scoped_ptr<wm::AcceleratorFilter> accelerator_filter_; |
| scoped_ptr<wm::NestedAcceleratorController> nested_accelerator_controller_; |