| Index: chrome/browser/ui/views/frame/browser_frame_ash.cc
|
| diff --git a/chrome/browser/ui/views/frame/browser_frame_ash.cc b/chrome/browser/ui/views/frame/browser_frame_ash.cc
|
| index b48a51bc5e8f76a4c0a36e940c6c4e759c38d7a7..22f2a99747e97210997fafd42e9af4196c9caabd 100644
|
| --- a/chrome/browser/ui/views/frame/browser_frame_ash.cc
|
| +++ b/chrome/browser/ui/views/frame/browser_frame_ash.cc
|
| @@ -121,6 +121,20 @@ void BrowserFrameAsh::GetWindowPlacement(
|
| *show_state != ui::SHOW_STATE_MINIMIZED) {
|
| *show_state = ui::SHOW_STATE_NORMAL;
|
| }
|
| +
|
| + if (ash::wm::GetWindowState(GetNativeWindow())->IsDocked()) {
|
| + if (browser_view_->browser()->is_app()) {
|
| + // Only web app windows (not tabbed browser windows) persist docked state.
|
| + *show_state = ui::SHOW_STATE_DOCKED;
|
| + } else {
|
| + // Restore original restore bounds for tabbed browser windows ignoring
|
| + // the docked origin.
|
| + gfx::Rect* restore_bounds = GetWidget()->GetNativeWindow()->GetProperty(
|
| + aura::client::kRestoreBoundsKey);
|
| + if (restore_bounds)
|
| + *bounds = *restore_bounds;
|
| + }
|
| + }
|
| }
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
|
|