| 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 ASH_WM_WINDOW_STATE_H_ | 5 #ifndef ASH_WM_WINDOW_STATE_H_ |
| 6 #define ASH_WM_WINDOW_STATE_H_ | 6 #define ASH_WM_WINDOW_STATE_H_ |
| 7 | 7 |
| 8 #include "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
| 9 #include "ash/wm/wm_types.h" | 9 #include "ash/wm/wm_types.h" |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 51 | 51 |
| 52 // Returns the window's current ash show type. | 52 // Returns the window's current ash show type. |
| 53 // Refer to WindowShowType definition in wm_types.h as for why Ash | 53 // Refer to WindowShowType definition in wm_types.h as for why Ash |
| 54 // has its own show type. | 54 // has its own show type. |
| 55 WindowShowType window_show_type() const { return window_show_type_; } | 55 WindowShowType window_show_type() const { return window_show_type_; } |
| 56 | 56 |
| 57 // Predicates to check window state. | 57 // Predicates to check window state. |
| 58 bool IsMinimized() const; | 58 bool IsMinimized() const; |
| 59 bool IsMaximized() const; | 59 bool IsMaximized() const; |
| 60 bool IsFullscreen() const; | 60 bool IsFullscreen() const; |
| 61 // True if the window's show state is SHOW_STATE_FULLSCREEN and the fullscreen |
| 62 // type allows the top-of-window views to be revealed when the mouse is |
| 63 // hovered at the top of the screen. |
| 64 bool IsImmersiveFullscreen() const; |
| 61 bool IsMaximizedOrFullscreen() const; | 65 bool IsMaximizedOrFullscreen() const; |
| 62 // True if the window's show state is SHOW_STATE_NORMAL or | 66 // True if the window's show state is SHOW_STATE_NORMAL or |
| 63 // SHOW_STATE_DEFAULT. | 67 // SHOW_STATE_DEFAULT. |
| 64 bool IsNormalShowState() const; | 68 bool IsNormalShowState() const; |
| 65 bool IsActive() const; | 69 bool IsActive() const; |
| 66 | 70 |
| 67 // Checks if the window can change its state accordingly. | 71 // Checks if the window can change its state accordingly. |
| 68 bool CanMaximize() const; | 72 bool CanMaximize() const; |
| 69 bool CanMinimize() const; | 73 bool CanMinimize() const; |
| 70 bool CanResize() const; | 74 bool CanResize() const; |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 103 // parent's coordinates. | 107 // parent's coordinates. |
| 104 void SetRestoreBoundsInParent(const gfx::Rect& bounds_in_parent); | 108 void SetRestoreBoundsInParent(const gfx::Rect& bounds_in_parent); |
| 105 | 109 |
| 106 // Sets the restore bounds property on the window in the virtual screen | 110 // Sets the restore bounds property on the window in the virtual screen |
| 107 // coordinates. Deletes existing bounds value if exists. | 111 // coordinates. Deletes existing bounds value if exists. |
| 108 void SetRestoreBoundsInScreen(const gfx::Rect& bounds_in_screen); | 112 void SetRestoreBoundsInScreen(const gfx::Rect& bounds_in_screen); |
| 109 | 113 |
| 110 // Deletes and clears the restore bounds property on the window. | 114 // Deletes and clears the restore bounds property on the window. |
| 111 void ClearRestoreBounds(); | 115 void ClearRestoreBounds(); |
| 112 | 116 |
| 117 // Sets the type of fullscreen. This only has an effect if already in |
| 118 // fullscreen. |
| 119 FullscreenType fullscreen_type() const { |
| 120 return fullscreen_type_; |
| 121 } |
| 122 void SetFullscreenType(FullscreenType type); |
| 123 |
| 113 // Sets whether the window should always be restored to the restore bounds | 124 // Sets whether the window should always be restored to the restore bounds |
| 114 // (sometimes the workspace layout manager restores the window to its original | 125 // (sometimes the workspace layout manager restores the window to its original |
| 115 // bounds instead of the restore bounds. Setting this key overrides that | 126 // bounds instead of the restore bounds. Setting this key overrides that |
| 116 // behaviour). The flag is reset to the default value after the window is | 127 // behaviour). The flag is reset to the default value after the window is |
| 117 // restored. | 128 // restored. |
| 118 bool always_restores_to_restore_bounds() const { | 129 bool always_restores_to_restore_bounds() const { |
| 119 return always_restores_to_restore_bounds_; | 130 return always_restores_to_restore_bounds_; |
| 120 } | 131 } |
| 121 void set_always_restores_to_restore_bounds(bool value) { | 132 void set_always_restores_to_restore_bounds(bool value) { |
| 122 always_restores_to_restore_bounds_ = value; | 133 always_restores_to_restore_bounds_ = value; |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 202 virtual void OnWindowDestroying(aura::Window* window) OVERRIDE; | 213 virtual void OnWindowDestroying(aura::Window* window) OVERRIDE; |
| 203 | 214 |
| 204 private: | 215 private: |
| 205 // Snaps the window to left or right of the desktop with given bounds. | 216 // Snaps the window to left or right of the desktop with given bounds. |
| 206 void SnapWindow(WindowShowType left_or_right, | 217 void SnapWindow(WindowShowType left_or_right, |
| 207 const gfx::Rect& bounds); | 218 const gfx::Rect& bounds); |
| 208 | 219 |
| 209 // The owner of this window settings. | 220 // The owner of this window settings. |
| 210 aura::Window* window_; | 221 aura::Window* window_; |
| 211 | 222 |
| 223 FullscreenType fullscreen_type_; |
| 212 bool tracked_by_workspace_; | 224 bool tracked_by_workspace_; |
| 213 bool window_position_managed_; | 225 bool window_position_managed_; |
| 214 bool bounds_changed_by_user_; | 226 bool bounds_changed_by_user_; |
| 215 bool panel_attached_; | 227 bool panel_attached_; |
| 216 bool continue_drag_after_reparent_; | 228 bool continue_drag_after_reparent_; |
| 217 bool ignored_by_shelf_; | 229 bool ignored_by_shelf_; |
| 218 bool can_consume_system_keys_; | 230 bool can_consume_system_keys_; |
| 219 bool top_row_keys_are_function_keys_; | 231 bool top_row_keys_are_function_keys_; |
| 220 | 232 |
| 221 bool always_restores_to_restore_bounds_; | 233 bool always_restores_to_restore_bounds_; |
| (...skipping 19 matching lines...) Expand all Loading... |
| 241 ASH_EXPORT WindowState* GetWindowState(aura::Window* window); | 253 ASH_EXPORT WindowState* GetWindowState(aura::Window* window); |
| 242 | 254 |
| 243 // const version of GetWindowState. | 255 // const version of GetWindowState. |
| 244 ASH_EXPORT const WindowState* | 256 ASH_EXPORT const WindowState* |
| 245 GetWindowState(const aura::Window* window); | 257 GetWindowState(const aura::Window* window); |
| 246 | 258 |
| 247 } // namespace wm | 259 } // namespace wm |
| 248 } // namespace ash | 260 } // namespace ash |
| 249 | 261 |
| 250 #endif // ASH_WM_WINDOW_STATE_H_ | 262 #endif // ASH_WM_WINDOW_STATE_H_ |
| OLD | NEW |