Index: chrome/browser/ui/views/frame/browser_frame.cc |
diff --git a/chrome/browser/ui/views/frame/browser_frame.cc b/chrome/browser/ui/views/frame/browser_frame.cc |
index 35bb5658b905cf4bca0b9dd4289b20157acfed43..5ad640b3a1bc242f5777aedb96341d8683b33247 100644 |
--- a/chrome/browser/ui/views/frame/browser_frame.cc |
+++ b/chrome/browser/ui/views/frame/browser_frame.cc |
@@ -31,12 +31,17 @@ |
#if defined(OS_CHROMEOS) |
#include "ash/session/session_state_delegate.h" |
#include "ash/shell.h" |
+#include "ui/native_theme/native_theme_dark_aura.h" |
#endif |
#if defined(OS_LINUX) |
#include "chrome/browser/ui/views/frame/browser_command_handler_linux.h" |
#endif |
+#if defined(OS_WIN) |
+#include "ui/native_theme/native_theme_dark_win.h" |
+#endif |
+ |
//////////////////////////////////////////////////////////////////////////////// |
// BrowserFrame, public: |
@@ -162,6 +167,17 @@ ui::ThemeProvider* BrowserFrame::GetThemeProvider() const { |
return theme_provider_; |
} |
+const ui::NativeTheme* BrowserFrame::GetNativeTheme() const { |
sky
2015/11/16 16:10:17
You sure you don't want to specify the NativeTheme
Evan Stade
2015/11/16 17:52:25
Isn't it the same amount of subclassing? These two
|
+ if (browser_view_->browser()->profile()->IsOffTheRecord()) { |
+#if defined(OS_WIN) |
+ return ui::NativeThemeDarkWin::instance(); |
+#elif defined(OS_CHROMEOS) |
+ return ui::NativeThemeDarkAura::instance(); |
+#endif |
+ } |
+ return views::Widget::GetNativeTheme(); |
+} |
+ |
void BrowserFrame::SchedulePaintInRect(const gfx::Rect& rect) { |
views::Widget::SchedulePaintInRect(rect); |