OLD | NEW |
---|---|
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/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "chrome/browser/browser_process.h" | 9 #include "chrome/browser/browser_process.h" |
10 #include "chrome/browser/prefs/pref_service.h" | 10 #include "chrome/browser/prefs/pref_service.h" |
11 #include "chrome/browser/profiles/profile.h" | 11 #include "chrome/browser/profiles/profile.h" |
12 #include "chrome/browser/ui/ash/ash_init.h" | 12 #include "chrome/browser/ui/ash/ash_init.h" |
13 #include "chrome/browser/ui/browser.h" | 13 #include "chrome/browser/ui/browser.h" |
14 #include "chrome/browser/ui/browser_list.h" | 14 #include "chrome/browser/ui/browser_list.h" |
15 #include "chrome/browser/ui/browser_window.h" | 15 #include "chrome/browser/ui/browser_window.h" |
16 #include "chrome/browser/ui/browser_window_state.h" | 16 #include "chrome/browser/ui/browser_window_state.h" |
17 #include "chrome/common/pref_names.h" | 17 #include "chrome/common/pref_names.h" |
18 #include "chrome/common/chrome_switches.h" | 18 #include "chrome/common/chrome_switches.h" |
19 #include "ui/gfx/screen.h" | 19 #include "ui/gfx/screen.h" |
20 | 20 |
21 // Minimum height of the visible part of a window. | 21 // Minimum height of the visible part of a window. |
22 const int kMinVisibleHeight = 30; | 22 const int kMinVisibleHeight = 30; |
23 // Minimum width of the visible part of a window. | 23 // Minimum width of the visible part of a window. |
24 const int kMinVisibleWidth = 30; | 24 const int kMinVisibleWidth = 30; |
25 | 25 |
26 class DefaultMonitorInfoProvider : public MonitorInfoProvider { | 26 class DefaultMonitorInfoProvider : public MonitorInfoProvider { |
27 public: | 27 public: |
28 // Overridden from MonitorInfoProvider: | 28 // Overridden from MonitorInfoProvider: |
29 virtual gfx::Rect GetPrimaryDisplayWorkArea() const OVERRIDE { | 29 virtual gfx::Rect GetPrimaryDisplayWorkArea() const OVERRIDE { |
30 return gfx::Screen::GetPrimaryDisplay().work_area(); | 30 // TODO(scottmg): NativeScreen is wrong. http://crbug.com/133312 |
31 return gfx::Screen::GetNativeScreen()->GetPrimaryDisplay().work_area(); | |
31 } | 32 } |
32 virtual gfx::Rect GetPrimaryDisplayBounds() const OVERRIDE { | 33 virtual gfx::Rect GetPrimaryDisplayBounds() const OVERRIDE { |
33 return gfx::Screen::GetPrimaryDisplay().bounds(); | 34 // TODO(scottmg): NativeScreen is wrong. http://crbug.com/133312 |
35 return gfx::Screen::GetNativeScreen()->GetPrimaryDisplay().bounds(); | |
34 } | 36 } |
35 virtual gfx::Rect GetMonitorWorkAreaMatching( | 37 virtual gfx::Rect GetMonitorWorkAreaMatching( |
36 const gfx::Rect& match_rect) const OVERRIDE { | 38 const gfx::Rect& match_rect) const OVERRIDE { |
37 return gfx::Screen::GetDisplayMatching(match_rect).work_area(); | 39 // TODO(scottmg): NativeScreen is wrong. http://crbug.com/133312 |
40 return gfx::Screen::GetNativeScreen()->GetDisplayMatching( | |
41 match_rect).work_area(); | |
38 } | 42 } |
oshima
2012/10/10 17:58:23
Looks like passing native window (or screen) from
scottmg
2012/10/10 19:04:47
Done.
| |
39 }; | 43 }; |
40 | 44 |
41 /////////////////////////////////////////////////////////////////////////////// | 45 /////////////////////////////////////////////////////////////////////////////// |
42 // An implementation of WindowSizer::StateProvider that gets the last active | 46 // An implementation of WindowSizer::StateProvider that gets the last active |
43 // and persistent state from the browser window and the user's profile. | 47 // and persistent state from the browser window and the user's profile. |
44 class DefaultStateProvider : public WindowSizer::StateProvider { | 48 class DefaultStateProvider : public WindowSizer::StateProvider { |
45 public: | 49 public: |
46 DefaultStateProvider(const std::string& app_name, const Browser* browser) | 50 DefaultStateProvider(const std::string& app_name, const Browser* browser) |
47 : app_name_(app_name), browser_(browser) { | 51 : app_name_(app_name), browser_(browser) { |
48 } | 52 } |
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
389 | 393 |
390 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kStartMaximized)) | 394 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kStartMaximized)) |
391 return ui::SHOW_STATE_MAXIMIZED; | 395 return ui::SHOW_STATE_MAXIMIZED; |
392 | 396 |
393 if (browser_->initial_show_state() != ui::SHOW_STATE_DEFAULT) | 397 if (browser_->initial_show_state() != ui::SHOW_STATE_DEFAULT) |
394 return browser_->initial_show_state(); | 398 return browser_->initial_show_state(); |
395 | 399 |
396 // Otherwise we use the default which can be overridden later on. | 400 // Otherwise we use the default which can be overridden later on. |
397 return ui::SHOW_STATE_DEFAULT; | 401 return ui::SHOW_STATE_DEFAULT; |
398 } | 402 } |
OLD | NEW |