| Index: chrome/browser/ui/views/frame/browser_view.cc
|
| diff --git a/chrome/browser/ui/views/frame/browser_view.cc b/chrome/browser/ui/views/frame/browser_view.cc
|
| index 52b3d78f2162330d686a3a1daeb6ab1a535249cb..9d220fb0c789d78663d5af269379d96d2aaefa4f 100644
|
| --- a/chrome/browser/ui/views/frame/browser_view.cc
|
| +++ b/chrome/browser/ui/views/frame/browser_view.cc
|
| @@ -1648,6 +1648,22 @@ base::string16 BrowserView::GetAccessibleTabLabel(bool include_app_name,
|
| return base::string16();
|
| }
|
|
|
| +void BrowserView::NativeThemeUpdated(const ui::NativeTheme* theme) {
|
| + // We don't handle theme updates in OnThemeChanged() as that function is
|
| + // called while views are being iterated over. Please see
|
| + // View::PropagateNativeThemeChanged() for details. The theme update
|
| + // handling in UserChangedTheme() can cause views to be nuked or created
|
| + // which is a bad thing during iteration.
|
| +
|
| + // Do not handle native theme changes before the browser view is initialized.
|
| + if (!initialized_)
|
| + return;
|
| + // Don't infinitely recurse.
|
| + if (!handling_theme_changed_)
|
| + UserChangedTheme();
|
| + chrome::MaybeShowInvertBubbleView(this);
|
| +}
|
| +
|
| views::View* BrowserView::GetInitiallyFocusedView() {
|
| return nullptr;
|
| }
|
| @@ -1970,17 +1986,6 @@ void BrowserView::OnThemeChanged() {
|
| views::View::OnThemeChanged();
|
| }
|
|
|
| -void BrowserView::OnNativeThemeChanged(const ui::NativeTheme* theme) {
|
| - // Do not handle native theme changes before the browser view is initialized.
|
| - if (!initialized_)
|
| - return;
|
| - ClientView::OnNativeThemeChanged(theme);
|
| - // Don't infinitely recurse.
|
| - if (!handling_theme_changed_)
|
| - UserChangedTheme();
|
| - chrome::MaybeShowInvertBubbleView(this);
|
| -}
|
| -
|
| ///////////////////////////////////////////////////////////////////////////////
|
| // BrowserView, ui::AcceleratorTarget overrides:
|
|
|
|
|