Index: ui/views/widget/widget.cc |
diff --git a/ui/views/widget/widget.cc b/ui/views/widget/widget.cc |
index 64f5541bb811e63f509079eb3d18a0249a2244ec..0a997ed061f9ba4f02a786b9ba5c2df417a149ff 100644 |
--- a/ui/views/widget/widget.cc |
+++ b/ui/views/widget/widget.cc |
@@ -1128,16 +1128,20 @@ void Widget::OnNativeWidgetSizeChanged(const gfx::Size& new_size) { |
} |
} |
// Size changed notifications can fire prior to full initialization |
sky
2014/08/12 13:21:28
1130-1131 and 1140-1141 can now be nuked since cov
jackhou1
2014/08/13 01:57:51
Done.
|
- // i.e. during session restore. Avoid saving session state during these |
- // startup procedures. |
- if (native_widget_initialized_) |
- SaveWindowPlacement(); |
+ // i.e. during session restore. |
+ SaveWindowPlacementIfInitialized(); |
FOR_EACH_OBSERVER(WidgetObserver, observers_, OnWidgetBoundsChanged( |
this, |
GetWindowBoundsInScreen())); |
} |
+void Widget::OnNativeWidgetWindowShowStateChanged() { |
+ // Size changed notifications can fire prior to full initialization |
+ // i.e. during session restore. |
+ SaveWindowPlacementIfInitialized(); |
+} |
+ |
void Widget::OnNativeWidgetBeginUserBoundsChange() { |
widget_delegate_->OnWindowBeginUserBoundsChange(); |
} |
@@ -1426,6 +1430,11 @@ void Widget::SaveWindowPlacement() { |
widget_delegate_->SaveWindowPlacement(bounds, show_state); |
} |
+void Widget::SaveWindowPlacementIfInitialized() { |
+ if (native_widget_initialized_) |
+ SaveWindowPlacement(); |
+} |
+ |
void Widget::SetInitialBounds(const gfx::Rect& bounds) { |
if (!non_client_view_) |
return; |