| 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_AURA_CLIENT_ACTIVATION_CLIENT_H_ | 5 #ifndef UI_AURA_CLIENT_ACTIVATION_CLIENT_H_ |
| 6 #define UI_AURA_CLIENT_ACTIVATION_CLIENT_H_ | 6 #define UI_AURA_CLIENT_ACTIVATION_CLIENT_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include "ui/aura/aura_export.h" | 9 #include "ui/aura/aura_export.h" |
| 10 #include "ui/aura/window.h" | 10 #include "ui/aura/window.h" |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 // client. If |window| is NULL, nothing happens. | 26 // client. If |window| is NULL, nothing happens. |
| 27 virtual void DeactivateWindow(Window* window) = 0; | 27 virtual void DeactivateWindow(Window* window) = 0; |
| 28 | 28 |
| 29 // Retrieves the active window, or NULL if there is none. | 29 // Retrieves the active window, or NULL if there is none. |
| 30 virtual aura::Window* GetActiveWindow() = 0; | 30 virtual aura::Window* GetActiveWindow() = 0; |
| 31 | 31 |
| 32 // Invoked prior to |window| getting focus as a result of the |event|. |event| | 32 // Invoked prior to |window| getting focus as a result of the |event|. |event| |
| 33 // may be NULL. Returning false blocks |window| from getting focus. | 33 // may be NULL. Returning false blocks |window| from getting focus. |
| 34 virtual bool OnWillFocusWindow(Window* window, const Event* event) = 0; | 34 virtual bool OnWillFocusWindow(Window* window, const Event* event) = 0; |
| 35 | 35 |
| 36 // Returns true if |window| can be activated, false otherwise. If |window| has |
| 37 // a modal child it can not be activated. |
| 38 virtual bool CanActivateWindow(Window* window) const = 0; |
| 39 |
| 36 protected: | 40 protected: |
| 37 virtual ~ActivationClient() {} | 41 virtual ~ActivationClient() {} |
| 38 }; | 42 }; |
| 39 | 43 |
| 40 // Sets/Gets the activation client on the RootWindow. | 44 // Sets/Gets the activation client on the RootWindow. |
| 41 AURA_EXPORT void SetActivationClient(RootWindow* root_window, | 45 AURA_EXPORT void SetActivationClient(RootWindow* root_window, |
| 42 ActivationClient* client); | 46 ActivationClient* client); |
| 43 AURA_EXPORT ActivationClient* GetActivationClient(RootWindow* root_window); | 47 AURA_EXPORT ActivationClient* GetActivationClient(RootWindow* root_window); |
| 44 | 48 |
| 45 // A property key to store what the client defines as the active window on the | 49 // A property key to store what the client defines as the active window on the |
| 46 // RootWindow. | 50 // RootWindow. |
| 47 AURA_EXPORT extern const WindowProperty<Window*>* const | 51 AURA_EXPORT extern const WindowProperty<Window*>* const |
| 48 kRootWindowActiveWindowKey; | 52 kRootWindowActiveWindowKey; |
| 49 | 53 |
| 50 // Some types of transient window are only visible when active. | 54 // Some types of transient window are only visible when active. |
| 51 // The transient parents of these windows may have visual appearance properties | 55 // The transient parents of these windows may have visual appearance properties |
| 52 // that differ from transient parents that can be deactivated. | 56 // that differ from transient parents that can be deactivated. |
| 53 // The presence of this property implies these traits. | 57 // The presence of this property implies these traits. |
| 54 // TODO(beng): currently the UI framework (views) implements the actual | 58 // TODO(beng): currently the UI framework (views) implements the actual |
| 55 // close-on-deactivate component of this feature but it should be | 59 // close-on-deactivate component of this feature but it should be |
| 56 // possible to implement in the aura client. | 60 // possible to implement in the aura client. |
| 57 AURA_EXPORT void SetHideOnDeactivate(Window* window, bool hide_on_deactivate); | 61 AURA_EXPORT void SetHideOnDeactivate(Window* window, bool hide_on_deactivate); |
| 58 AURA_EXPORT bool GetHideOnDeactivate(Window* window); | 62 AURA_EXPORT bool GetHideOnDeactivate(Window* window); |
| 59 | 63 |
| 60 } // namespace clients | 64 } // namespace clients |
| 61 } // namespace aura | 65 } // namespace aura |
| 62 | 66 |
| 63 #endif // UI_AURA_CLIENT_ACTIVATION_CLIENT_H_ | 67 #endif // UI_AURA_CLIENT_ACTIVATION_CLIENT_H_ |
| OLD | NEW |