Index: athena/input/public/input_manager.h |
diff --git a/athena/input/public/input_manager.h b/athena/input/public/input_manager.h |
index cc7017530f98ee41d6cf1ea00fedf1620d0f4619..04682e84e9cd9306ad6a20e07737b4e17f144f3d 100644 |
--- a/athena/input/public/input_manager.h |
+++ b/athena/input/public/input_manager.h |
@@ -18,6 +18,17 @@ class EventTarget; |
namespace athena { |
class AcceleratorManager; |
+class PowerButtonObserver { |
+ public: |
+ enum State { |
+ PRESSED, |
+ LONG_PRESSED, |
+ RELEASED, |
+ }; |
+ |
+ virtual void OnPowerButtonStateChanged(State state) = 0; |
+}; |
+ |
class ATHENA_EXPORT InputManager { |
public: |
// Creates and deletes the singleton object of the InputManager |
@@ -30,6 +41,10 @@ class ATHENA_EXPORT InputManager { |
// with EnvObserver::WindowInitialized |
virtual void OnRootWindowCreated(aura::Window* root_window) = 0; |
+ // Add/remove power button observer. |
+ virtual void AddPowerButtonObserver(PowerButtonObserver* observer) = 0; |
+ virtual void RemovePowerButtonObserver(PowerButtonObserver* observer) = 0; |
+ |
virtual ui::EventTarget* GetTopmostEventTarget() = 0; |
virtual AcceleratorManager* GetAcceleratorManager() = 0; |