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 ceffce9952c384bbabf1bc4870b96ee62c1af888..63c4aed0e71112d817c63f2d2bd71d113efe85f6 100644 |
--- a/ash/wm/workspace/workspace_layout_manager.cc |
+++ b/ash/wm/workspace/workspace_layout_manager.cc |
@@ -162,7 +162,10 @@ void WorkspaceLayoutManager::OnKeyboardBoundsChanging( |
SetChildBounds(window, gfx::Rect(origin, window_bounds.size())); |
} |
} else if (window_state->HasRestoreBounds()) { |
- // Keyboard hidden, restore original bounds if they exist. |
+ // Keyboard hidden, restore original bounds if they exist. If the user has |
+ // resized or dragged the window in the meantime, WorkspaceWindowResizer |
+ // will have cleared the restore bounds and this code will not accidentally |
+ // override user intent. |
window_state->SetAndClearRestoreBounds(); |
} |
} |