| 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 #include "ash/common/wm/window_state.h" | 5 #include "ash/common/wm/window_state.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "ash/common/wm/default_state.h" | 9 #include "ash/common/wm/default_state.h" |
| 10 #include "ash/common/wm/window_positioning_utils.h" | 10 #include "ash/common/wm/window_positioning_utils.h" |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 return WM_EVENT_NORMAL; | 27 return WM_EVENT_NORMAL; |
| 28 case ui::SHOW_STATE_MINIMIZED: | 28 case ui::SHOW_STATE_MINIMIZED: |
| 29 return WM_EVENT_MINIMIZE; | 29 return WM_EVENT_MINIMIZE; |
| 30 case ui::SHOW_STATE_MAXIMIZED: | 30 case ui::SHOW_STATE_MAXIMIZED: |
| 31 return WM_EVENT_MAXIMIZE; | 31 return WM_EVENT_MAXIMIZE; |
| 32 case ui::SHOW_STATE_FULLSCREEN: | 32 case ui::SHOW_STATE_FULLSCREEN: |
| 33 return WM_EVENT_FULLSCREEN; | 33 return WM_EVENT_FULLSCREEN; |
| 34 case ui::SHOW_STATE_INACTIVE: | 34 case ui::SHOW_STATE_INACTIVE: |
| 35 return WM_EVENT_SHOW_INACTIVE; | 35 return WM_EVENT_SHOW_INACTIVE; |
| 36 | 36 |
| 37 // TODO(afakhry): Remove Docked Windows in M58. | |
| 38 case ui::SHOW_STATE_DOCKED: | |
| 39 return WM_EVENT_DOCK; | |
| 40 case ui::SHOW_STATE_END: | 37 case ui::SHOW_STATE_END: |
| 41 NOTREACHED() << "No WMEvent defined for the show state:" | 38 NOTREACHED() << "No WMEvent defined for the show state:" |
| 42 << requested_show_state; | 39 << requested_show_state; |
| 43 } | 40 } |
| 44 return WM_EVENT_NORMAL; | 41 return WM_EVENT_NORMAL; |
| 45 } | 42 } |
| 46 | 43 |
| 47 } // namespace | 44 } // namespace |
| 48 | 45 |
| 49 WindowState::~WindowState() {} | 46 WindowState::~WindowState() {} |
| 50 | 47 |
| 51 bool WindowState::HasDelegate() const { | 48 bool WindowState::HasDelegate() const { |
| 52 return !!delegate_; | 49 return !!delegate_; |
| 53 } | 50 } |
| 54 | 51 |
| 55 void WindowState::SetDelegate(std::unique_ptr<WindowStateDelegate> delegate) { | 52 void WindowState::SetDelegate(std::unique_ptr<WindowStateDelegate> delegate) { |
| 56 DCHECK(!delegate_.get()); | 53 DCHECK(!delegate_.get()); |
| 57 delegate_ = std::move(delegate); | 54 delegate_ = std::move(delegate); |
| 58 } | 55 } |
| 59 | 56 |
| 60 WindowStateType WindowState::GetStateType() const { | 57 WindowStateType WindowState::GetStateType() const { |
| 61 return current_state_->GetType(); | 58 return current_state_->GetType(); |
| 62 } | 59 } |
| 63 | 60 |
| 64 bool WindowState::IsMinimized() const { | 61 bool WindowState::IsMinimized() const { |
| 65 return GetStateType() == WINDOW_STATE_TYPE_MINIMIZED || | 62 return GetStateType() == WINDOW_STATE_TYPE_MINIMIZED; |
| 66 GetStateType() == WINDOW_STATE_TYPE_DOCKED_MINIMIZED; | |
| 67 } | 63 } |
| 68 | 64 |
| 69 bool WindowState::IsMaximized() const { | 65 bool WindowState::IsMaximized() const { |
| 70 return GetStateType() == WINDOW_STATE_TYPE_MAXIMIZED; | 66 return GetStateType() == WINDOW_STATE_TYPE_MAXIMIZED; |
| 71 } | 67 } |
| 72 | 68 |
| 73 bool WindowState::IsFullscreen() const { | 69 bool WindowState::IsFullscreen() const { |
| 74 return GetStateType() == WINDOW_STATE_TYPE_FULLSCREEN; | 70 return GetStateType() == WINDOW_STATE_TYPE_FULLSCREEN; |
| 75 } | 71 } |
| 76 | 72 |
| (...skipping 22 matching lines...) Expand all Loading... |
| 99 } | 95 } |
| 100 | 96 |
| 101 bool WindowState::IsNormalOrSnapped() const { | 97 bool WindowState::IsNormalOrSnapped() const { |
| 102 return IsNormalStateType() || IsSnapped(); | 98 return IsNormalStateType() || IsSnapped(); |
| 103 } | 99 } |
| 104 | 100 |
| 105 bool WindowState::IsActive() const { | 101 bool WindowState::IsActive() const { |
| 106 return window_->IsActive(); | 102 return window_->IsActive(); |
| 107 } | 103 } |
| 108 | 104 |
| 109 bool WindowState::IsDocked() const { | |
| 110 return GetStateType() == WINDOW_STATE_TYPE_DOCKED || | |
| 111 GetStateType() == WINDOW_STATE_TYPE_DOCKED_MINIMIZED; | |
| 112 } | |
| 113 | |
| 114 bool WindowState::IsUserPositionable() const { | 105 bool WindowState::IsUserPositionable() const { |
| 115 return (window_->GetType() == ui::wm::WINDOW_TYPE_NORMAL || | 106 return (window_->GetType() == ui::wm::WINDOW_TYPE_NORMAL || |
| 116 window_->GetType() == ui::wm::WINDOW_TYPE_PANEL); | 107 window_->GetType() == ui::wm::WINDOW_TYPE_PANEL); |
| 117 } | 108 } |
| 118 | 109 |
| 119 bool WindowState::CanMaximize() const { | 110 bool WindowState::CanMaximize() const { |
| 120 // Window must allow maximization and have no maximum width or height. | 111 // Window must allow maximization and have no maximum width or height. |
| 121 if (!window_->CanMaximize()) | 112 if (!window_->CanMaximize()) |
| 122 return false; | 113 return false; |
| 123 | 114 |
| (...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 392 if (!window_->GetTargetVisibility()) { | 383 if (!window_->GetTargetVisibility()) { |
| 393 SetBoundsConstrained(new_bounds); | 384 SetBoundsConstrained(new_bounds); |
| 394 return; | 385 return; |
| 395 } | 386 } |
| 396 | 387 |
| 397 window_->SetBoundsDirectCrossFade(new_bounds); | 388 window_->SetBoundsDirectCrossFade(new_bounds); |
| 398 } | 389 } |
| 399 | 390 |
| 400 } // namespace wm | 391 } // namespace wm |
| 401 } // namespace ash | 392 } // namespace ash |
| OLD | NEW |