Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(129)

Unified Diff: ash/wm/workspace/workspace_layout_manager.cc

Issue 106303005: Fix AdjustBoundsToEnsureWindowVisibility to work with non primary display bounds (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: update bounds without removing Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/wm/window_util_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/wm/workspace/workspace_layout_manager.cc
diff --git a/ash/wm/workspace/workspace_layout_manager.cc b/ash/wm/workspace/workspace_layout_manager.cc
index 672cdedc843f9c1bee8953193d40fa43b1fe628e..2e893ae83cbec827d2cbf6fe3f939ed704a463ce 100644
--- a/ash/wm/workspace/workspace_layout_manager.cc
+++ b/ash/wm/workspace/workspace_layout_manager.cc
@@ -254,8 +254,11 @@ void WorkspaceLayoutManager::AdjustWindowBoundsWhenAdded(
// When a window is dragged and dropped onto a different
// root window, the bounds will be updated after they are added
// to the root window.
- if (window_state->window()->bounds().IsEmpty())
+ if (window_state->window()->bounds().IsEmpty() ||
+ window_state->is_dragged() ||
+ SetMaximizedOrFullscreenBounds(window_state)) {
return;
+ }
Window* window = window_state->window();
gfx::Rect bounds = window->bounds();
@@ -266,17 +269,6 @@ void WorkspaceLayoutManager::AdjustWindowBoundsWhenAdded(
// moved.
gfx::Rect display_area = ScreenAsh::GetDisplayBoundsInParent(window);
- if (window_state->is_dragged()) {
- ash::wm::AdjustBoundsToEnsureMinimumWindowVisibility(
- display_area, &bounds);
- if (window->bounds() != bounds)
- window->SetBounds(bounds);
- return;
- }
-
- if (SetMaximizedOrFullscreenBounds(window_state))
- return;
-
int min_width = bounds.width() * kMinimumPercentOnScreenArea;
int min_height = bounds.height() * kMinimumPercentOnScreenArea;
ash::wm::AdjustBoundsToEnsureWindowVisibility(
« no previous file with comments | « ash/wm/window_util_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698