Index: ash/accelerators/accelerator_controller.cc |
diff --git a/ash/accelerators/accelerator_controller.cc b/ash/accelerators/accelerator_controller.cc |
index b4acff9187012dc3fe59c6faa328beceacb9b2d2..cc92fa5384989671a461197184fc2ff59757c7b6 100644 |
--- a/ash/accelerators/accelerator_controller.cc |
+++ b/ash/accelerators/accelerator_controller.cc |
@@ -841,7 +841,7 @@ bool AcceleratorController::PerformAction(int action, |
case WINDOW_SNAP_LEFT: |
case WINDOW_SNAP_RIGHT: { |
wm::WindowState* window_state = wm::GetActiveWindowState(); |
- // Disable window docking shortcut key for full screen window due to |
+ // Disable window snapping shortcut key for full screen window due to |
// http://crbug.com/135487. |
if (!window_state || |
window_state->window()->type() != aura::client::WINDOW_TYPE_NORMAL || |
@@ -870,7 +870,10 @@ bool AcceleratorController::PerformAction(int action, |
} |
case WINDOW_POSITION_CENTER: { |
aura::Window* window = wm::GetActiveWindow(); |
- if (window) { |
+ // Centering a window does not maintain state and state change |
+ // notifications are not sent. Disable centering for docked windows. |
+ if (window && !wm::GetWindowState(window)->IsDocked()) { |
+ wm::GetWindowState(window)->SetWindowShowTypeUnsnapped(); |
wm::CenterWindow(window); |
return true; |
} |