| 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 #include "ash/wm/workspace/workspace_window_resizer.h" | 5 #include "ash/wm/workspace/workspace_window_resizer.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <cmath> | 8 #include <cmath> |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 698 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 709 if (!window_state()->CanResize()) | 709 if (!window_state()->CanResize()) |
| 710 return false; | 710 return false; |
| 711 | 711 |
| 712 for (aura::Window* root_window : Shell::Get()->GetAllRootWindows()) { | 712 for (aura::Window* root_window : Shell::Get()->GetAllRootWindows()) { |
| 713 // Test all children from the desktop in each root window. | 713 // Test all children from the desktop in each root window. |
| 714 const std::vector<aura::Window*>& children = | 714 const std::vector<aura::Window*>& children = |
| 715 root_window->GetChildById(kShellWindowId_DefaultContainer)->children(); | 715 root_window->GetChildById(kShellWindowId_DefaultContainer)->children(); |
| 716 for (auto i = children.rbegin(); | 716 for (auto i = children.rbegin(); |
| 717 i != children.rend() && !matcher.AreEdgesObscured(); ++i) { | 717 i != children.rend() && !matcher.AreEdgesObscured(); ++i) { |
| 718 wm::WindowState* other_state = wm::GetWindowState(*i); | 718 wm::WindowState* other_state = wm::GetWindowState(*i); |
| 719 if (other_state->window()->aura_window() == GetTarget() || | 719 if (other_state->window() == GetTarget() || |
| 720 !other_state->window()->IsVisible() || | 720 !other_state->window()->IsVisible() || |
| 721 !other_state->IsNormalOrSnapped() || !other_state->CanResize()) { | 721 !other_state->IsNormalOrSnapped() || !other_state->CanResize()) { |
| 722 continue; | 722 continue; |
| 723 } | 723 } |
| 724 if (matcher.ShouldAttach(other_state->window()->GetBoundsInScreen(), | 724 if (matcher.ShouldAttach(other_state->window()->GetBoundsInScreen(), |
| 725 &magnetism_edge_)) { | 725 &magnetism_edge_)) { |
| 726 magnetism_window_ = other_state->window()->aura_window(); | 726 magnetism_window_ = other_state->window(); |
| 727 window_tracker_.Add(magnetism_window_); | 727 window_tracker_.Add(magnetism_window_); |
| 728 return true; | 728 return true; |
| 729 } | 729 } |
| 730 } | 730 } |
| 731 } | 731 } |
| 732 return false; | 732 return false; |
| 733 } | 733 } |
| 734 | 734 |
| 735 void WorkspaceWindowResizer::AdjustBoundsForMainWindow(int sticky_size, | 735 void WorkspaceWindowResizer::AdjustBoundsForMainWindow(int sticky_size, |
| 736 gfx::Rect* bounds) { | 736 gfx::Rect* bounds) { |
| (...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 962 snapped_type == wm::WINDOW_STATE_TYPE_RIGHT_SNAPPED); | 962 snapped_type == wm::WINDOW_STATE_TYPE_RIGHT_SNAPPED); |
| 963 gfx::Rect snapped_bounds = | 963 gfx::Rect snapped_bounds = |
| 964 ScreenUtil::GetDisplayWorkAreaBoundsInParent(GetTarget()); | 964 ScreenUtil::GetDisplayWorkAreaBoundsInParent(GetTarget()); |
| 965 if (snapped_type == wm::WINDOW_STATE_TYPE_RIGHT_SNAPPED) | 965 if (snapped_type == wm::WINDOW_STATE_TYPE_RIGHT_SNAPPED) |
| 966 snapped_bounds.set_x(snapped_bounds.right() - bounds_in_parent.width()); | 966 snapped_bounds.set_x(snapped_bounds.right() - bounds_in_parent.width()); |
| 967 snapped_bounds.set_width(bounds_in_parent.width()); | 967 snapped_bounds.set_width(bounds_in_parent.width()); |
| 968 return bounds_in_parent == snapped_bounds; | 968 return bounds_in_parent == snapped_bounds; |
| 969 } | 969 } |
| 970 | 970 |
| 971 } // namespace ash | 971 } // namespace ash |
| OLD | NEW |