Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(124)

Side by Side Diff: chrome/browser/ui/window_sizer/window_sizer.cc

Issue 62333015: Ensure that the first browser window which is created in Windows 8 ASH is maximized. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/window_sizer/window_sizer.h" 5 #include "chrome/browser/ui/window_sizer/window_sizer.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 #include "base/prefs/pref_service.h" 9 #include "base/prefs/pref_service.h"
10 #include "chrome/browser/browser_process.h" 10 #include "chrome/browser/browser_process.h"
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 DCHECK(show_state); 181 DCHECK(show_state);
182 // Pre-populate the window state with our default. 182 // Pre-populate the window state with our default.
183 *show_state = GetWindowDefaultShowState(); 183 *show_state = GetWindowDefaultShowState();
184 *bounds = specified_bounds; 184 *bounds = specified_bounds;
185 if (bounds->IsEmpty()) { 185 if (bounds->IsEmpty()) {
186 #if defined(USE_ASH) 186 #if defined(USE_ASH)
187 // See if ash should decide the window placement. 187 // See if ash should decide the window placement.
188 if (IsTabbedBrowserInAsh()) { 188 if (IsTabbedBrowserInAsh()) {
189 GetTabbedBrowserBoundsAsh(bounds, show_state); 189 GetTabbedBrowserBoundsAsh(bounds, show_state);
190 return; 190 return;
191 } else if (chrome::ShouldOpenAshOnStartup() && 191 } else if (browser_ && browser_->host_desktop_type() ==
192 browser_ && browser_->host_desktop_type() ==
193 chrome::HOST_DESKTOP_TYPE_ASH) { 192 chrome::HOST_DESKTOP_TYPE_ASH) {
194 // In ash, saved show state takes precidence. If you have a 193 // In ash, saved show state takes precidence. If you have a
195 // question or an issue, please contact oshima@chromium.org. 194 // question or an issue, please contact oshima@chromium.org.
196 GetSavedWindowBounds(bounds, show_state); 195 GetSavedWindowBounds(bounds, show_state);
197 } 196 }
198 #endif 197 #endif
199 // See if there's last active window's placement information. 198 // See if there's last active window's placement information.
200 if (GetLastWindowBounds(bounds, show_state)) 199 if (GetLastWindowBounds(bounds, show_state))
201 return; 200 return;
202 // See if there's saved placement information. 201 // See if there's saved placement information.
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 391
393 if (browser_->initial_show_state() != ui::SHOW_STATE_DEFAULT) 392 if (browser_->initial_show_state() != ui::SHOW_STATE_DEFAULT)
394 return browser_->initial_show_state(); 393 return browser_->initial_show_state();
395 394
396 // Otherwise we use the default which can be overridden later on. 395 // Otherwise we use the default which can be overridden later on.
397 return ui::SHOW_STATE_DEFAULT; 396 return ui::SHOW_STATE_DEFAULT;
398 } 397 }
399 398
400 #if defined(USE_ASH) 399 #if defined(USE_ASH)
401 bool WindowSizer::IsTabbedBrowserInAsh() const { 400 bool WindowSizer::IsTabbedBrowserInAsh() const {
402 // TODO(beng): insufficient but currently necessary. http://crbug.com/133312 401 return browser_ &&
403 return chrome::ShouldOpenAshOnStartup() &&
404 browser_ &&
405 browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH && 402 browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH &&
406 browser_->is_type_tabbed(); 403 browser_->is_type_tabbed();
407 } 404 }
408 405
409 bool WindowSizer::IsPopupBrowserInAsh() const { 406 bool WindowSizer::IsPopupBrowserInAsh() const {
410 // TODO(beng): insufficient but currently necessary. http://crbug.com/133312 407 return browser_ &&
411 return chrome::ShouldOpenAshOnStartup() &&
412 browser_ &&
413 browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH && 408 browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH &&
414 browser_->is_type_popup(); 409 browser_->is_type_popup();
415 } 410 }
416 #endif 411 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698