OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_ | 5 #ifndef UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_ |
6 #define UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_ | 6 #define UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_ |
7 | 7 |
| 8 #include <vector> |
| 9 |
8 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
9 #include "base/logging.h" | 11 #include "base/logging.h" |
| 12 #include "base/observer_list.h" |
10 #include "ui/aura/aura_export.h" | 13 #include "ui/aura/aura_export.h" |
11 #include "ui/aura/client/activation_client.h" | 14 #include "ui/aura/client/activation_client.h" |
12 #include "ui/aura/window_observer.h" | 15 #include "ui/aura/window_observer.h" |
13 | 16 |
14 namespace aura { | 17 namespace aura { |
15 class RootWindow; | |
16 namespace client { | 18 namespace client { |
17 class ActivationChangeObserver; | 19 class ActivationChangeObserver; |
18 } | 20 } |
19 | 21 |
20 namespace client { | 22 namespace client { |
21 | 23 |
22 // Simple ActivationClient implementation for use by tests and other targets | 24 // Simple ActivationClient implementation for use by tests and other targets |
23 // that just need basic behavior (e.g. activate windows whenever requested, | 25 // that just need basic behavior (e.g. activate windows whenever requested, |
24 // restack windows at the top when they're activated, etc.). | 26 // restack windows at the top when they're activated, etc.). |
25 class AURA_EXPORT DefaultActivationClient : public client::ActivationClient, | 27 class AURA_EXPORT DefaultActivationClient : public client::ActivationClient, |
26 public WindowObserver { | 28 public WindowObserver { |
27 public: | 29 public: |
28 explicit DefaultActivationClient(RootWindow* root_window); | 30 explicit DefaultActivationClient(Window* root_window); |
29 virtual ~DefaultActivationClient(); | 31 virtual ~DefaultActivationClient(); |
30 | 32 |
31 // Overridden from client::ActivationClient: | 33 // Overridden from client::ActivationClient: |
32 virtual void AddObserver(client::ActivationChangeObserver* observer) OVERRIDE; | 34 virtual void AddObserver(client::ActivationChangeObserver* observer) OVERRIDE; |
33 virtual void RemoveObserver( | 35 virtual void RemoveObserver( |
34 client::ActivationChangeObserver* observer) OVERRIDE; | 36 client::ActivationChangeObserver* observer) OVERRIDE; |
35 virtual void ActivateWindow(Window* window) OVERRIDE; | 37 virtual void ActivateWindow(Window* window) OVERRIDE; |
36 virtual void DeactivateWindow(Window* window) OVERRIDE; | 38 virtual void DeactivateWindow(Window* window) OVERRIDE; |
37 virtual Window* GetActiveWindow() OVERRIDE; | 39 virtual Window* GetActiveWindow() OVERRIDE; |
38 virtual Window* GetActivatableWindow(Window* window) OVERRIDE; | 40 virtual Window* GetActivatableWindow(Window* window) OVERRIDE; |
(...skipping 19 matching lines...) Expand all Loading... |
58 | 60 |
59 ObserverList<client::ActivationChangeObserver> observers_; | 61 ObserverList<client::ActivationChangeObserver> observers_; |
60 | 62 |
61 DISALLOW_COPY_AND_ASSIGN(DefaultActivationClient); | 63 DISALLOW_COPY_AND_ASSIGN(DefaultActivationClient); |
62 }; | 64 }; |
63 | 65 |
64 } // namespace client | 66 } // namespace client |
65 } // namespace aura | 67 } // namespace aura |
66 | 68 |
67 #endif // UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_ | 69 #endif // UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_ |
OLD | NEW |