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/views/frame/browser_frame.h" | 5 #include "chrome/browser/ui/views/frame/browser_frame.h" |
6 | 6 |
7 #include "base/debug/leak_annotations.h" | 7 #include "base/debug/leak_annotations.h" |
8 #include "base/i18n/rtl.h" | 8 #include "base/i18n/rtl.h" |
9 #include "chrome/browser/app_mode/app_mode_utils.h" | 9 #include "chrome/browser/app_mode/app_mode_utils.h" |
10 #include "chrome/browser/themes/theme_service.h" | 10 #include "chrome/browser/themes/theme_service.h" |
(...skipping 13 matching lines...) Expand all Loading... |
24 #include "ui/base/theme_provider.h" | 24 #include "ui/base/theme_provider.h" |
25 #include "ui/events/event_handler.h" | 25 #include "ui/events/event_handler.h" |
26 #include "ui/gfx/font_list.h" | 26 #include "ui/gfx/font_list.h" |
27 #include "ui/gfx/screen.h" | 27 #include "ui/gfx/screen.h" |
28 #include "ui/views/controls/menu/menu_runner.h" | 28 #include "ui/views/controls/menu/menu_runner.h" |
29 #include "ui/views/widget/native_widget.h" | 29 #include "ui/views/widget/native_widget.h" |
30 | 30 |
31 #if defined(OS_CHROMEOS) | 31 #if defined(OS_CHROMEOS) |
32 #include "ash/session/session_state_delegate.h" | 32 #include "ash/session/session_state_delegate.h" |
33 #include "ash/shell.h" | 33 #include "ash/shell.h" |
| 34 #include "ui/native_theme/native_theme_dark_aura.h" |
34 #endif | 35 #endif |
35 | 36 |
36 #if defined(OS_LINUX) | 37 #if defined(OS_LINUX) |
37 #include "chrome/browser/ui/views/frame/browser_command_handler_linux.h" | 38 #include "chrome/browser/ui/views/frame/browser_command_handler_linux.h" |
38 #endif | 39 #endif |
39 | 40 |
| 41 #if defined(OS_WIN) |
| 42 #include "ui/native_theme/native_theme_dark_win.h" |
| 43 #endif |
| 44 |
40 //////////////////////////////////////////////////////////////////////////////// | 45 //////////////////////////////////////////////////////////////////////////////// |
41 // BrowserFrame, public: | 46 // BrowserFrame, public: |
42 | 47 |
43 BrowserFrame::BrowserFrame(BrowserView* browser_view) | 48 BrowserFrame::BrowserFrame(BrowserView* browser_view) |
44 : native_browser_frame_(nullptr), | 49 : native_browser_frame_(nullptr), |
45 root_view_(nullptr), | 50 root_view_(nullptr), |
46 browser_frame_view_(nullptr), | 51 browser_frame_view_(nullptr), |
47 browser_view_(browser_view), | 52 browser_view_(browser_view), |
48 theme_provider_(ThemeServiceFactory::GetForProfile( | 53 theme_provider_(ThemeServiceFactory::GetForProfile( |
49 browser_view_->browser()->profile())) { | 54 browser_view_->browser()->profile())) { |
(...skipping 18 matching lines...) Expand all Loading... |
68 NativeBrowserFrameFactory::CreateNativeBrowserFrame(this, browser_view_); | 73 NativeBrowserFrameFactory::CreateNativeBrowserFrame(this, browser_view_); |
69 views::Widget::InitParams params = native_browser_frame_->GetWidgetParams(); | 74 views::Widget::InitParams params = native_browser_frame_->GetWidgetParams(); |
70 params.delegate = browser_view_; | 75 params.delegate = browser_view_; |
71 if (browser_view_->browser()->is_type_tabbed()) { | 76 if (browser_view_->browser()->is_type_tabbed()) { |
72 // Typed panel/popup can only return a size once the widget has been | 77 // Typed panel/popup can only return a size once the widget has been |
73 // created. | 78 // created. |
74 chrome::GetSavedWindowBoundsAndShowState(browser_view_->browser(), | 79 chrome::GetSavedWindowBoundsAndShowState(browser_view_->browser(), |
75 ¶ms.bounds, | 80 ¶ms.bounds, |
76 ¶ms.show_state); | 81 ¶ms.show_state); |
77 } | 82 } |
| 83 |
| 84 if (browser_view_->browser()->profile()->IsOffTheRecord()) { |
| 85 #if defined(OS_WIN) |
| 86 params.native_theme = ui::NativeThemeDarkWin::instance(); |
| 87 #elif defined(OS_CHROMEOS) |
| 88 params.native_theme = ui::NativeThemeDarkAura::instance(); |
| 89 #endif |
| 90 } |
| 91 |
78 Init(params); | 92 Init(params); |
79 | 93 |
80 if (!native_browser_frame_->UsesNativeSystemMenu()) { | 94 if (!native_browser_frame_->UsesNativeSystemMenu()) { |
81 DCHECK(non_client_view()); | 95 DCHECK(non_client_view()); |
82 non_client_view()->set_context_menu_controller(this); | 96 non_client_view()->set_context_menu_controller(this); |
83 } | 97 } |
84 | 98 |
85 #if defined(OS_LINUX) | 99 #if defined(OS_LINUX) |
86 browser_command_handler_.reset(new BrowserCommandHandlerLinux(browser_view_)); | 100 browser_command_handler_.reset(new BrowserCommandHandlerLinux(browser_view_)); |
87 #endif | 101 #endif |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
239 | 253 |
240 AvatarMenuButton* BrowserFrame::GetAvatarMenuButton() { | 254 AvatarMenuButton* BrowserFrame::GetAvatarMenuButton() { |
241 return browser_frame_view_->avatar_button(); | 255 return browser_frame_view_->avatar_button(); |
242 } | 256 } |
243 | 257 |
244 #if defined(FRAME_AVATAR_BUTTON) | 258 #if defined(FRAME_AVATAR_BUTTON) |
245 NewAvatarButton* BrowserFrame::GetNewAvatarMenuButton() { | 259 NewAvatarButton* BrowserFrame::GetNewAvatarMenuButton() { |
246 return browser_frame_view_->new_avatar_button(); | 260 return browser_frame_view_->new_avatar_button(); |
247 } | 261 } |
248 #endif | 262 #endif |
OLD | NEW |