Save and restore State for ShellWindows, including panels 

This replaces ShellWindow::CreateParams::State with 
ui::WindowShowState for simplicty and consistency with 
Browser session restore. 

BUG=233556
[email protected], [email protected], [email protected]

Original CL: https://codereview.chromium.org/14031021/
+ disabled flakey browser tests on linux

Review URL: https://chromiumcodereview.appspot.com/14663010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199145 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/ui/cocoa/browser_window_cocoa.mm b/chrome/browser/ui/cocoa/browser_window_cocoa.mm
index 773dff8..65c506b 100644
--- a/chrome/browser/ui/cocoa/browser_window_cocoa.mm
+++ b/chrome/browser/ui/cocoa/browser_window_cocoa.mm
@@ -316,6 +316,14 @@
   return bounds;
 }
 
+ui::WindowShowState BrowserWindowCocoa::GetRestoredState() const {
+  if (IsMaximized())
+    return ui::SHOW_STATE_MAXIMIZED;
+  if (IsMinimized())
+    return ui::SHOW_STATE_MINIMIZED;
+  return ui::SHOW_STATE_NORMAL;
+}
+
 gfx::Rect BrowserWindowCocoa::GetBounds() const {
   return GetRestoredBounds();
 }