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 ASH_WM_WINDOW_UTIL_H_ | 5 #ifndef ASH_WM_WINDOW_UTIL_H_ |
6 #define ASH_WM_WINDOW_UTIL_H_ | 6 #define ASH_WM_WINDOW_UTIL_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include "ash/ash_export.h" | 10 #include "ash/ash_export.h" |
11 #include "base/compiler_specific.h" | 11 #include "base/compiler_specific.h" |
12 #include "ui/base/ui_base_types.h" | 12 #include "ui/base/ui_base_types.h" |
13 | 13 |
14 namespace aura { | 14 namespace aura { |
15 class Window; | 15 class Window; |
16 } | 16 } |
17 | 17 |
18 namespace gfx { | 18 namespace gfx { |
19 class Point; | 19 class Point; |
20 } | 20 } |
21 | 21 |
22 namespace ui { | 22 namespace ui { |
23 class Event; | 23 class Event; |
| 24 class EventHandler; |
24 } | 25 } |
25 | 26 |
26 namespace ash { | 27 namespace ash { |
27 namespace wm { | 28 namespace wm { |
28 | 29 |
29 // Utility functions for window activation. | 30 // Utility functions for window activation. |
30 ASH_EXPORT void ActivateWindow(aura::Window* window); | 31 ASH_EXPORT void ActivateWindow(aura::Window* window); |
31 ASH_EXPORT void DeactivateWindow(aura::Window* window); | 32 ASH_EXPORT void DeactivateWindow(aura::Window* window); |
32 ASH_EXPORT bool IsActiveWindow(aura::Window* window); | 33 ASH_EXPORT bool IsActiveWindow(aura::Window* window); |
33 ASH_EXPORT aura::Window* GetActiveWindow(); | 34 ASH_EXPORT aura::Window* GetActiveWindow(); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
69 // Mark the container window so that InstallSnapLayoutManagerToContainers | 70 // Mark the container window so that InstallSnapLayoutManagerToContainers |
70 // installs the SnapToPixelLayoutManager. | 71 // installs the SnapToPixelLayoutManager. |
71 ASH_EXPORT void SetSnapsChildrenToPhysicalPixelBoundary( | 72 ASH_EXPORT void SetSnapsChildrenToPhysicalPixelBoundary( |
72 aura::Window* container); | 73 aura::Window* container); |
73 | 74 |
74 // Convenience for window->delegate()->GetNonClientComponent(location) that | 75 // Convenience for window->delegate()->GetNonClientComponent(location) that |
75 // returns HTNOWHERE if window->delegate() is null. | 76 // returns HTNOWHERE if window->delegate() is null. |
76 ASH_EXPORT int GetNonClientComponent(aura::Window* window, | 77 ASH_EXPORT int GetNonClientComponent(aura::Window* window, |
77 const gfx::Point& location); | 78 const gfx::Point& location); |
78 | 79 |
| 80 // Requests the |window| to close and destroy itself. This is intended to |
| 81 // forward to an associated widget. |
| 82 ASH_EXPORT void CloseWidgetForWindow(aura::Window* window); |
| 83 |
| 84 // Adds or removes a handler to receive events targeted at this window, before |
| 85 // this window handles the events itself; the handler does not receive events |
| 86 // from embedded windows. This only supports windows with internal widgets; |
| 87 // see ash::GetInternalWidgetForWindow(). Ownership of the handler is not |
| 88 // transferred. |
| 89 // |
| 90 // Also note that the target of these events is always an aura::Window. |
| 91 ASH_EXPORT void AddLimitedPreTargetHandlerForWindow(ui::EventHandler* handler, |
| 92 aura::Window* window); |
| 93 ASH_EXPORT void RemoveLimitedPreTargetHandlerForWindow( |
| 94 ui::EventHandler* handler, |
| 95 aura::Window* window); |
| 96 |
79 } // namespace wm | 97 } // namespace wm |
80 } // namespace ash | 98 } // namespace ash |
81 | 99 |
82 #endif // ASH_WM_WINDOW_UTIL_H_ | 100 #endif // ASH_WM_WINDOW_UTIL_H_ |
OLD | NEW |