| Index: ash/wm/workspace/workspace_window_resizer.cc
|
| diff --git a/ash/wm/workspace/workspace_window_resizer.cc b/ash/wm/workspace/workspace_window_resizer.cc
|
| index 666821afa6f04e7d79f09df03de45e13be1f35bd..5bb9874161e111a516c1ad4e45eaa28970ae416d 100644
|
| --- a/ash/wm/workspace/workspace_window_resizer.cc
|
| +++ b/ash/wm/workspace/workspace_window_resizer.cc
|
| @@ -124,8 +124,11 @@ void WorkspaceWindowResizer::Drag(const gfx::Point& location, int event_flags) {
|
| if (wm::IsWindowNormal(window()))
|
| AdjustBoundsForMainWindow(&bounds, grid_size);
|
| if (bounds != window()->bounds()) {
|
| - if (!did_move_or_resize_)
|
| + if (!did_move_or_resize_) {
|
| + if (!details_.restore_bounds.IsEmpty())
|
| + ClearRestoreBounds(window());
|
| RestackWindows();
|
| + }
|
| did_move_or_resize_ = true;
|
| }
|
|
|
| @@ -214,6 +217,9 @@ void WorkspaceWindowResizer::RevertDrag() {
|
| return;
|
|
|
| window()->SetBounds(details_.initial_bounds);
|
| + if (!details_.restore_bounds.IsEmpty())
|
| + SetRestoreBoundsInScreen(details_.window, details_.restore_bounds);
|
| +
|
| if (details_.window_component == HTRIGHT) {
|
| int last_x = details_.initial_bounds.right();
|
| for (size_t i = 0; i < attached_windows_.size(); ++i) {
|
|
|