OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 UI_WM_CORE_BASE_FOCUS_RULES_H_ | 5 #ifndef UI_WM_CORE_BASE_FOCUS_RULES_H_ |
6 #define UI_WM_CORE_BASE_FOCUS_RULES_H_ | 6 #define UI_WM_CORE_BASE_FOCUS_RULES_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "ui/wm/core/focus_rules.h" | 10 #include "ui/wm/core/focus_rules.h" |
11 | 11 |
12 namespace wm { | 12 namespace wm { |
13 | 13 |
14 // A set of basic focus and activation rules. Specializations should most likely | 14 // A set of basic focus and activation rules. Specializations should most likely |
15 // subclass this and call up to these methods rather than reimplementing them. | 15 // subclass this and call up to these methods rather than reimplementing them. |
16 class WM_EXPORT BaseFocusRules : public FocusRules { | 16 class WM_EXPORT BaseFocusRules : public FocusRules { |
17 protected: | 17 protected: |
18 BaseFocusRules(); | 18 BaseFocusRules(); |
19 virtual ~BaseFocusRules(); | 19 ~BaseFocusRules() override; |
20 | 20 |
21 // Returns true if the children of |window| can be activated. | 21 // Returns true if the children of |window| can be activated. |
22 virtual bool SupportsChildActivation(aura::Window* window) const = 0; | 22 virtual bool SupportsChildActivation(aura::Window* window) const = 0; |
23 | 23 |
24 // Returns true if |window| is considered visible for activation purposes. | 24 // Returns true if |window| is considered visible for activation purposes. |
25 virtual bool IsWindowConsideredVisibleForActivation( | 25 virtual bool IsWindowConsideredVisibleForActivation( |
26 aura::Window* window) const; | 26 aura::Window* window) const; |
27 | 27 |
28 // Overridden from FocusRules: | 28 // Overridden from FocusRules: |
29 virtual bool IsToplevelWindow(aura::Window* window) const override; | 29 bool IsToplevelWindow(aura::Window* window) const override; |
30 virtual bool CanActivateWindow(aura::Window* window) const override; | 30 bool CanActivateWindow(aura::Window* window) const override; |
31 virtual bool CanFocusWindow(aura::Window* window) const override; | 31 bool CanFocusWindow(aura::Window* window) const override; |
32 virtual aura::Window* GetToplevelWindow(aura::Window* window) const override; | 32 aura::Window* GetToplevelWindow(aura::Window* window) const override; |
33 virtual aura::Window* GetActivatableWindow( | 33 aura::Window* GetActivatableWindow(aura::Window* window) const override; |
34 aura::Window* window) const override; | 34 aura::Window* GetFocusableWindow(aura::Window* window) const override; |
35 virtual aura::Window* GetFocusableWindow(aura::Window* window) const override; | 35 aura::Window* GetNextActivatableWindow(aura::Window* ignore) const override; |
36 virtual aura::Window* GetNextActivatableWindow( | |
37 aura::Window* ignore) const override; | |
38 | 36 |
39 private: | 37 private: |
40 DISALLOW_COPY_AND_ASSIGN(BaseFocusRules); | 38 DISALLOW_COPY_AND_ASSIGN(BaseFocusRules); |
41 }; | 39 }; |
42 | 40 |
43 } // namespace wm | 41 } // namespace wm |
44 | 42 |
45 #endif // UI_WM_CORE_BASE_FOCUS_RULES_H_ | 43 #endif // UI_WM_CORE_BASE_FOCUS_RULES_H_ |
OLD | NEW |