OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef COMPONENTS_EXO_WM_HELPER_H_ | 5 #ifndef COMPONENTS_EXO_WM_HELPER_H_ |
6 #define COMPONENTS_EXO_WM_HELPER_H_ | 6 #define COMPONENTS_EXO_WM_HELPER_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/observer_list.h" | 9 #include "base/observer_list.h" |
10 #include "ui/base/cursor/cursor.h" | 10 #include "ui/base/cursor/cursor.h" |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 | 55 |
56 class MaximizeModeObserver { | 56 class MaximizeModeObserver { |
57 public: | 57 public: |
58 virtual void OnMaximizeModeStarted() = 0; | 58 virtual void OnMaximizeModeStarted() = 0; |
59 virtual void OnMaximizeModeEnded() = 0; | 59 virtual void OnMaximizeModeEnded() = 0; |
60 | 60 |
61 protected: | 61 protected: |
62 virtual ~MaximizeModeObserver() {} | 62 virtual ~MaximizeModeObserver() {} |
63 }; | 63 }; |
64 | 64 |
| 65 class AccessibilityObserver { |
| 66 public: |
| 67 virtual void OnAccessibilityModeChanged() = 0; |
| 68 |
| 69 protected: |
| 70 virtual ~AccessibilityObserver() {} |
| 71 }; |
| 72 |
65 virtual ~WMHelper(); | 73 virtual ~WMHelper(); |
66 | 74 |
67 static void SetInstance(WMHelper* helper); | 75 static void SetInstance(WMHelper* helper); |
68 static WMHelper* GetInstance(); | 76 static WMHelper* GetInstance(); |
69 | 77 |
70 void AddActivationObserver(ActivationObserver* observer); | 78 void AddActivationObserver(ActivationObserver* observer); |
71 void RemoveActivationObserver(ActivationObserver* observer); | 79 void RemoveActivationObserver(ActivationObserver* observer); |
72 void AddFocusObserver(FocusObserver* observer); | 80 void AddFocusObserver(FocusObserver* observer); |
73 void RemoveFocusObserver(FocusObserver* observer); | 81 void RemoveFocusObserver(FocusObserver* observer); |
74 void AddCursorObserver(CursorObserver* observer); | 82 void AddCursorObserver(CursorObserver* observer); |
75 void RemoveCursorObserver(CursorObserver* observer); | 83 void RemoveCursorObserver(CursorObserver* observer); |
76 void AddMaximizeModeObserver(MaximizeModeObserver* observer); | 84 void AddMaximizeModeObserver(MaximizeModeObserver* observer); |
77 void RemoveMaximizeModeObserver(MaximizeModeObserver* observer); | 85 void RemoveMaximizeModeObserver(MaximizeModeObserver* observer); |
| 86 void AddAccessibilityObserver(AccessibilityObserver* observer); |
| 87 void RemoveAccessibilityObserver(AccessibilityObserver* observer); |
78 | 88 |
79 virtual const display::ManagedDisplayInfo GetDisplayInfo( | 89 virtual const display::ManagedDisplayInfo GetDisplayInfo( |
80 int64_t display_id) const = 0; | 90 int64_t display_id) const = 0; |
81 virtual aura::Window* GetContainer(int container_id) = 0; | 91 virtual aura::Window* GetContainer(int container_id) = 0; |
82 virtual aura::Window* GetActiveWindow() const = 0; | 92 virtual aura::Window* GetActiveWindow() const = 0; |
83 virtual aura::Window* GetFocusedWindow() const = 0; | 93 virtual aura::Window* GetFocusedWindow() const = 0; |
84 virtual ui::CursorSetType GetCursorSet() const = 0; | 94 virtual ui::CursorSetType GetCursorSet() const = 0; |
85 virtual void AddPreTargetHandler(ui::EventHandler* handler) = 0; | 95 virtual void AddPreTargetHandler(ui::EventHandler* handler) = 0; |
86 virtual void PrependPreTargetHandler(ui::EventHandler* handler) = 0; | 96 virtual void PrependPreTargetHandler(ui::EventHandler* handler) = 0; |
87 virtual void RemovePreTargetHandler(ui::EventHandler* handler) = 0; | 97 virtual void RemovePreTargetHandler(ui::EventHandler* handler) = 0; |
88 virtual void AddPostTargetHandler(ui::EventHandler* handler) = 0; | 98 virtual void AddPostTargetHandler(ui::EventHandler* handler) = 0; |
89 virtual void RemovePostTargetHandler(ui::EventHandler* handler) = 0; | 99 virtual void RemovePostTargetHandler(ui::EventHandler* handler) = 0; |
90 virtual bool IsMaximizeModeWindowManagerEnabled() const = 0; | 100 virtual bool IsMaximizeModeWindowManagerEnabled() const = 0; |
| 101 virtual bool IsSpokenFeedbackEnabled() const = 0; |
| 102 virtual void PlayEarcon(int sound_key) const = 0; |
91 | 103 |
92 protected: | 104 protected: |
93 WMHelper(); | 105 WMHelper(); |
94 | 106 |
95 void NotifyWindowActivated(aura::Window* gained_active, | 107 void NotifyWindowActivated(aura::Window* gained_active, |
96 aura::Window* lost_active); | 108 aura::Window* lost_active); |
97 void NotifyWindowFocused(aura::Window* gained_focus, | 109 void NotifyWindowFocused(aura::Window* gained_focus, |
98 aura::Window* lost_focus); | 110 aura::Window* lost_focus); |
99 void NotifyCursorVisibilityChanged(bool is_visible); | 111 void NotifyCursorVisibilityChanged(bool is_visible); |
100 void NotifyCursorSetChanged(ui::CursorSetType cursor_set); | 112 void NotifyCursorSetChanged(ui::CursorSetType cursor_set); |
101 void NotifyMaximizeModeStarted(); | 113 void NotifyMaximizeModeStarted(); |
102 void NotifyMaximizeModeEnded(); | 114 void NotifyMaximizeModeEnded(); |
| 115 void NotifyAccessibilityModeChanged(); |
103 | 116 |
104 private: | 117 private: |
105 base::ObserverList<ActivationObserver> activation_observers_; | 118 base::ObserverList<ActivationObserver> activation_observers_; |
106 base::ObserverList<FocusObserver> focus_observers_; | 119 base::ObserverList<FocusObserver> focus_observers_; |
107 base::ObserverList<CursorObserver> cursor_observers_; | 120 base::ObserverList<CursorObserver> cursor_observers_; |
108 base::ObserverList<MaximizeModeObserver> maximize_mode_observers_; | 121 base::ObserverList<MaximizeModeObserver> maximize_mode_observers_; |
| 122 base::ObserverList<AccessibilityObserver> accessibility_observers_; |
109 | 123 |
110 DISALLOW_COPY_AND_ASSIGN(WMHelper); | 124 DISALLOW_COPY_AND_ASSIGN(WMHelper); |
111 }; | 125 }; |
112 | 126 |
113 } // namespace exo | 127 } // namespace exo |
114 | 128 |
115 #endif // COMPONENTS_EXO_WM_HELPER_H_ | 129 #endif // COMPONENTS_EXO_WM_HELPER_H_ |
OLD | NEW |