diff options
author | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-27 01:39:13 +0000 |
---|---|---|
committer | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-27 01:39:13 +0000 |
commit | 8b9a8f156c4f0038012718378dab89416731f2f5 (patch) | |
tree | 22e90a98d3d1f3773c6cb952d35cea7000342378 /chrome | |
parent | dd29fbe689b366ac754837d5b2f2956650cf6e45 (diff) | |
download | chromium_src-8b9a8f156c4f0038012718378dab89416731f2f5.zip chromium_src-8b9a8f156c4f0038012718378dab89416731f2f5.tar.gz chromium_src-8b9a8f156c4f0038012718378dab89416731f2f5.tar.bz2 |
Make theme change notifications auto-propagate through the view hierarchy, instead of forcing subclasses to manually call their superclass implementation. This fixes some problems where not all views would get notified of a theme change.
Make naming for theme and locale changes consistent and clear.
BUG=50107
TEST=none
Review URL: http://codereview.chromium.org/2878055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53736 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
33 files changed, 39 insertions, 41 deletions
diff --git a/chrome/browser/chromeos/login/background_view.cc b/chrome/browser/chromeos/login/background_view.cc index 01f0d6e..8ba96a5 100644 --- a/chrome/browser/chromeos/login/background_view.cc +++ b/chrome/browser/chromeos/login/background_view.cc @@ -164,7 +164,7 @@ bool BackgroundView::IsScreenLockerMode() const { return false; } -void BackgroundView::LocaleChanged() { +void BackgroundView::OnLocaleChanged() { Layout(); SchedulePaint(); } diff --git a/chrome/browser/chromeos/login/background_view.h b/chrome/browser/chromeos/login/background_view.h index 65438ca..cd6279f 100644 --- a/chrome/browser/chromeos/login/background_view.h +++ b/chrome/browser/chromeos/login/background_view.h @@ -58,7 +58,7 @@ class BackgroundView : public views::View, public StatusAreaHost { virtual void Paint(gfx::Canvas* canvas); virtual void Layout(); virtual void ChildPreferredSizeChanged(View* child); - virtual void LocaleChanged(); + virtual void OnLocaleChanged(); // Overridden from StatusAreaHost: virtual Profile* GetProfile() const { return NULL; } diff --git a/chrome/browser/chromeos/login/eula_view.cc b/chrome/browser/chromeos/login/eula_view.cc index 2cdaff2..ad3dd25 100644 --- a/chrome/browser/chromeos/login/eula_view.cc +++ b/chrome/browser/chromeos/login/eula_view.cc @@ -208,7 +208,7 @@ void EulaView::UpdateLocalizedStrings() { //////////////////////////////////////////////////////////////////////////////// // views::View: implementation: -void EulaView::LocaleChanged() { +void EulaView::OnLocaleChanged() { UpdateLocalizedStrings(); Layout(); } diff --git a/chrome/browser/chromeos/login/eula_view.h b/chrome/browser/chromeos/login/eula_view.h index c82f7ce..2a59345 100644 --- a/chrome/browser/chromeos/login/eula_view.h +++ b/chrome/browser/chromeos/login/eula_view.h @@ -81,7 +81,7 @@ class EulaView protected: // views::View implementation. - virtual void LocaleChanged(); + virtual void OnLocaleChanged(); // views::ButtonListener implementation. virtual void ButtonPressed(views::Button* sender, const views::Event& event); diff --git a/chrome/browser/chromeos/login/network_selection_view.cc b/chrome/browser/chromeos/login/network_selection_view.cc index 2e206a1..b2735bd 100644 --- a/chrome/browser/chromeos/login/network_selection_view.cc +++ b/chrome/browser/chromeos/login/network_selection_view.cc @@ -156,7 +156,7 @@ void NetworkSelectionView::ChildPreferredSizeChanged(View* child) { SchedulePaint(); } -void NetworkSelectionView::LocaleChanged() { +void NetworkSelectionView::OnLocaleChanged() { UpdateLocalizedStrings(); NetworkModelChanged(); // Explicitly set selected item - index 0 is a localized string. diff --git a/chrome/browser/chromeos/login/network_selection_view.h b/chrome/browser/chromeos/login/network_selection_view.h index 09f8f82..9bfdac1 100644 --- a/chrome/browser/chromeos/login/network_selection_view.h +++ b/chrome/browser/chromeos/login/network_selection_view.h @@ -59,7 +59,7 @@ class NetworkSelectionView : public views::View { protected: // Overridden from views::View. virtual void ChildPreferredSizeChanged(View* child); - virtual void LocaleChanged(); + virtual void OnLocaleChanged(); private: // Delete and recreate native controls that diff --git a/chrome/browser/chromeos/login/new_user_view.cc b/chrome/browser/chromeos/login/new_user_view.cc index 397821d..79c8d95 100644 --- a/chrome/browser/chromeos/login/new_user_view.cc +++ b/chrome/browser/chromeos/login/new_user_view.cc @@ -198,7 +198,7 @@ void NewUserView::UpdateLocalizedStrings() { languages_menubutton_->SetText(language_switch_menu_.GetCurrentLocaleName()); } -void NewUserView::LocaleChanged() { +void NewUserView::OnLocaleChanged() { UpdateLocalizedStrings(); Layout(); SchedulePaint(); diff --git a/chrome/browser/chromeos/login/new_user_view.h b/chrome/browser/chromeos/login/new_user_view.h index 8befdb8..e8623bf 100644 --- a/chrome/browser/chromeos/login/new_user_view.h +++ b/chrome/browser/chromeos/login/new_user_view.h @@ -110,7 +110,7 @@ class NewUserView : public views::View, virtual void NativeViewHierarchyChanged(bool attached, gfx::NativeView native_view, views::RootView* root_view); - virtual void LocaleChanged(); + virtual void OnLocaleChanged(); private: // Enables/disables input controls (textfields, buttons). diff --git a/chrome/browser/chromeos/login/oobe_progress_bar.cc b/chrome/browser/chromeos/login/oobe_progress_bar.cc index 0da6853..0bfc7d6 100644 --- a/chrome/browser/chromeos/login/oobe_progress_bar.cc +++ b/chrome/browser/chromeos/login/oobe_progress_bar.cc @@ -122,7 +122,7 @@ void OobeProgressBar::Paint(gfx::Canvas* canvas) { } } -void OobeProgressBar::LocaleChanged() { +void OobeProgressBar::OnLocaleChanged() { SchedulePaint(); } diff --git a/chrome/browser/chromeos/login/oobe_progress_bar.h b/chrome/browser/chromeos/login/oobe_progress_bar.h index 35e8c80..da68db3 100644 --- a/chrome/browser/chromeos/login/oobe_progress_bar.h +++ b/chrome/browser/chromeos/login/oobe_progress_bar.h @@ -36,7 +36,7 @@ class OobeProgressBar : public views::View { protected: // Overridden from View: - virtual void LocaleChanged(); + virtual void OnLocaleChanged(); private: static void InitClass(); diff --git a/chrome/browser/chromeos/login/user_image_view.cc b/chrome/browser/chromeos/login/user_image_view.cc index eb93af3..3d8c18f 100644 --- a/chrome/browser/chromeos/login/user_image_view.cc +++ b/chrome/browser/chromeos/login/user_image_view.cc @@ -147,7 +147,7 @@ void UserImageView::OnVideoImageClicked() { ok_button_->RequestFocus(); } -void UserImageView::LocaleChanged() { +void UserImageView::OnLocaleChanged() { UpdateLocalizedStrings(); Layout(); } diff --git a/chrome/browser/chromeos/login/user_image_view.h b/chrome/browser/chromeos/login/user_image_view.h index 83e1b45..61a0ace 100644 --- a/chrome/browser/chromeos/login/user_image_view.h +++ b/chrome/browser/chromeos/login/user_image_view.h @@ -61,7 +61,7 @@ class UserImageView : public views::View, protected: // views::View overrides: - virtual void LocaleChanged(); + virtual void OnLocaleChanged(); private: // Delete and recreate native controls that fail to update preferred size diff --git a/chrome/browser/chromeos/status/language_menu_button.cc b/chrome/browser/chromeos/status/language_menu_button.cc index 169640d..993a0b0 100644 --- a/chrome/browser/chromeos/status/language_menu_button.cc +++ b/chrome/browser/chromeos/status/language_menu_button.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2009 The Chromium Authors. All rights reserved. +// Copyright (c) 2010 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -446,7 +446,7 @@ void LanguageMenuButton::ImePropertiesChanged(InputMethodLibrary* obj) { //////////////////////////////////////////////////////////////////////////////// // views::View implementation: -void LanguageMenuButton::LocaleChanged() { +void LanguageMenuButton::OnLocaleChanged() { const InputMethodDescriptor& input_method = CrosLibrary::Get()->GetInputMethodLibrary()->current_input_method(); UpdateIndicatorFromInputMethod(input_method); diff --git a/chrome/browser/chromeos/status/language_menu_button.h b/chrome/browser/chromeos/status/language_menu_button.h index ec5d2e2..abc694d 100644 --- a/chrome/browser/chromeos/status/language_menu_button.h +++ b/chrome/browser/chromeos/status/language_menu_button.h @@ -78,7 +78,7 @@ class LanguageMenuButton : public views::MenuButton, protected: // views::View implementation. - virtual void LocaleChanged(); + virtual void OnLocaleChanged(); private: // views::ViewMenuDelegate implementation. diff --git a/chrome/browser/views/bookmark_bar_instructions_view.cc b/chrome/browser/views/bookmark_bar_instructions_view.cc index 4b625d9..895ae0c 100644 --- a/chrome/browser/views/bookmark_bar_instructions_view.cc +++ b/chrome/browser/views/bookmark_bar_instructions_view.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2009 The Chromium Authors. All rights reserved. +// Copyright (c) 2010 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -75,7 +75,7 @@ void BookmarkBarInstructionsView::Layout() { } } -void BookmarkBarInstructionsView::ThemeChanged() { +void BookmarkBarInstructionsView::OnThemeChanged() { UpdateColors(); } diff --git a/chrome/browser/views/bookmark_bar_instructions_view.h b/chrome/browser/views/bookmark_bar_instructions_view.h index aa60c66..c16b536 100644 --- a/chrome/browser/views/bookmark_bar_instructions_view.h +++ b/chrome/browser/views/bookmark_bar_instructions_view.h @@ -1,4 +1,4 @@ -// Copyright (c) 2009 The Chromium Authors. All rights reserved. +// Copyright (c) 2010 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -37,7 +37,7 @@ class BookmarkBarInstructionsView : public views::View, // View overrides. virtual gfx::Size GetPreferredSize(); virtual void Layout(); - virtual void ThemeChanged(); + virtual void OnThemeChanged(); virtual void ViewHierarchyChanged(bool is_add, views::View* parent, views::View* child); diff --git a/chrome/browser/views/bookmark_bar_view.cc b/chrome/browser/views/bookmark_bar_view.cc index 26baaac..2ea1c66 100644 --- a/chrome/browser/views/bookmark_bar_view.cc +++ b/chrome/browser/views/bookmark_bar_view.cc @@ -1325,7 +1325,7 @@ void BookmarkBarView::Observe(NotificationType type, } } -void BookmarkBarView::ThemeChanged() { +void BookmarkBarView::OnThemeChanged() { UpdateColors(); } diff --git a/chrome/browser/views/bookmark_bar_view.h b/chrome/browser/views/bookmark_bar_view.h index 5c473812..78ceb89 100644 --- a/chrome/browser/views/bookmark_bar_view.h +++ b/chrome/browser/views/bookmark_bar_view.h @@ -382,7 +382,7 @@ class BookmarkBarView : public DetachableToolbarView, const NotificationDetails& details); // Overridden from views::View. - virtual void ThemeChanged(); + virtual void OnThemeChanged(); // If the ModelChangedListener is non-null, ModelChanged is invoked on it. void NotifyModelChanged(); diff --git a/chrome/browser/views/constrained_window_win.cc b/chrome/browser/views/constrained_window_win.cc index c8924f0..43bcb05 100644 --- a/chrome/browser/views/constrained_window_win.cc +++ b/chrome/browser/views/constrained_window_win.cc @@ -178,7 +178,7 @@ class ConstrainedWindowFrameView // Overridden from views::View: virtual void Paint(gfx::Canvas* canvas); virtual void Layout(); - virtual void ThemeChanged(); + virtual void OnThemeChanged(); // Overridden from views::ButtonListener: virtual void ButtonPressed(views::Button* sender, const views::Event& event); @@ -372,7 +372,7 @@ void ConstrainedWindowFrameView::Layout() { client_view_bounds_ = CalculateClientAreaBounds(width(), height()); } -void ConstrainedWindowFrameView::ThemeChanged() { +void ConstrainedWindowFrameView::OnThemeChanged() { InitWindowResources(); } diff --git a/chrome/browser/views/download_shelf_view.cc b/chrome/browser/views/download_shelf_view.cc index f0c37f1..5c2b606 100644 --- a/chrome/browser/views/download_shelf_view.cc +++ b/chrome/browser/views/download_shelf_view.cc @@ -302,7 +302,7 @@ void DownloadShelfView::UpdateButtonColors() { } } -void DownloadShelfView::ThemeChanged() { +void DownloadShelfView::OnThemeChanged() { UpdateButtonColors(); } diff --git a/chrome/browser/views/download_shelf_view.h b/chrome/browser/views/download_shelf_view.h index 5341436..8ffe53f 100644 --- a/chrome/browser/views/download_shelf_view.h +++ b/chrome/browser/views/download_shelf_view.h @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. +// Copyright (c) 2010 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -85,7 +85,7 @@ class DownloadShelfView : public DownloadShelf, void UpdateButtonColors(); // Overridden from views::View. - virtual void ThemeChanged(); + virtual void OnThemeChanged(); // Called when the "close shelf" animation ended. void Closed(); diff --git a/chrome/browser/views/extensions/extension_shelf.cc b/chrome/browser/views/extensions/extension_shelf.cc index 7bb5391..acdb298 100644 --- a/chrome/browser/views/extensions/extension_shelf.cc +++ b/chrome/browser/views/extensions/extension_shelf.cc @@ -780,7 +780,7 @@ bool ExtensionShelf::GetAccessibleRole(AccessibilityTypes::Role* role) { return true; } -void ExtensionShelf::ThemeChanged() { +void ExtensionShelf::OnThemeChanged() { // Refresh the CSS to update toolstrip text colors from theme. int count = model_->count(); for (int i = 0; i < count; ++i) diff --git a/chrome/browser/views/extensions/extension_shelf.h b/chrome/browser/views/extensions/extension_shelf.h index 79c022a..bf94241 100644 --- a/chrome/browser/views/extensions/extension_shelf.h +++ b/chrome/browser/views/extensions/extension_shelf.h @@ -52,7 +52,7 @@ class ExtensionShelf : public DetachableToolbarView, virtual void OnMouseExited(const views::MouseEvent& event); virtual void OnMouseEntered(const views::MouseEvent& event); virtual bool GetAccessibleRole(AccessibilityTypes::Role* role); - virtual void ThemeChanged(); + virtual void OnThemeChanged(); // ExtensionContainer methods: virtual void OnExtensionMouseEvent(ExtensionView* view); diff --git a/chrome/browser/views/find_bar_view.cc b/chrome/browser/views/find_bar_view.cc index ae78c3c..5af5125 100644 --- a/chrome/browser/views/find_bar_view.cc +++ b/chrome/browser/views/find_bar_view.cc @@ -323,7 +323,7 @@ void FindBarView::Layout() { sz.width(), sz.height()); // Set the color. - ThemeChanged(); + OnThemeChanged(); // Next, the FindNext button to the left the close button. sz = find_next_button_->GetPreferredSize(); @@ -525,7 +525,7 @@ FindBarHost* FindBarView::find_bar_host() const { return static_cast<FindBarHost*>(host()); } -void FindBarView::ThemeChanged() { +void FindBarView::OnThemeChanged() { ResourceBundle& rb = ResourceBundle::GetSharedInstance(); if (GetThemeProvider()) { close_button_->SetBackground( diff --git a/chrome/browser/views/find_bar_view.h b/chrome/browser/views/find_bar_view.h index ae49c6df..ab119b9 100644 --- a/chrome/browser/views/find_bar_view.h +++ b/chrome/browser/views/find_bar_view.h @@ -77,7 +77,7 @@ class FindBarView : public DropdownBarView, void UpdateMatchCountAppearance(bool no_match); // Overridden from views::View. - virtual void ThemeChanged(); + virtual void OnThemeChanged(); // We use a hidden view to grab mouse clicks and bring focus to the find // text box. This is because although the find text box may look like it diff --git a/chrome/browser/views/tabs/base_tab.cc b/chrome/browser/views/tabs/base_tab.cc index 0645022..42169ad 100644 --- a/chrome/browser/views/tabs/base_tab.cc +++ b/chrome/browser/views/tabs/base_tab.cc @@ -444,8 +444,7 @@ void BaseTab::ShowContextMenu(views::View* source, controller()->ShowContextMenu(this, p); } -void BaseTab::ThemeChanged() { - views::View::ThemeChanged(); +void BaseTab::OnThemeChanged() { LoadThemeImages(); } diff --git a/chrome/browser/views/tabs/base_tab.h b/chrome/browser/views/tabs/base_tab.h index bf575e8..8bf19ee 100644 --- a/chrome/browser/views/tabs/base_tab.h +++ b/chrome/browser/views/tabs/base_tab.h @@ -129,7 +129,7 @@ class BaseTab : public AnimationDelegate, bool is_mouse_gesture); // views::View overrides: - virtual void ThemeChanged(); + virtual void OnThemeChanged(); // Returns the bounds of the title. virtual const gfx::Rect& title_bounds() const = 0; diff --git a/chrome/browser/views/tabs/tab.cc b/chrome/browser/views/tabs/tab.cc index b519ab2..f2e9a97 100644 --- a/chrome/browser/views/tabs/tab.cc +++ b/chrome/browser/views/tabs/tab.cc @@ -319,8 +319,7 @@ void Tab::Layout() { title_bounds_.set_x(MirroredLeftPointForRect(title_bounds_)); } -void Tab::ThemeChanged() { - BaseTab::ThemeChanged(); +void Tab::OnThemeChanged() { Tab::LoadTabImages(); } diff --git a/chrome/browser/views/tabs/tab.h b/chrome/browser/views/tabs/tab.h index 74b4f87..e99a8fd 100644 --- a/chrome/browser/views/tabs/tab.h +++ b/chrome/browser/views/tabs/tab.h @@ -70,7 +70,7 @@ class Tab : public BaseTab { // Overridden from views::View: virtual void Paint(gfx::Canvas* canvas); virtual void Layout(); - virtual void ThemeChanged(); + virtual void OnThemeChanged(); virtual std::string GetClassName() const { return kViewClassName; } virtual bool HasHitTestMask() const; virtual void GetHitTestMask(gfx::Path* path) const; diff --git a/chrome/browser/views/tabs/tab_strip.cc b/chrome/browser/views/tabs/tab_strip.cc index 4712bd1..318a7e8 100644 --- a/chrome/browser/views/tabs/tab_strip.cc +++ b/chrome/browser/views/tabs/tab_strip.cc @@ -450,7 +450,7 @@ views::View* TabStrip::GetViewForPoint(const gfx::Point& point) { return this; } -void TabStrip::ThemeChanged() { +void TabStrip::OnThemeChanged() { LoadNewTabButtonImage(); } diff --git a/chrome/browser/views/tabs/tab_strip.h b/chrome/browser/views/tabs/tab_strip.h index 0f2b53a..1a2de59 100644 --- a/chrome/browser/views/tabs/tab_strip.h +++ b/chrome/browser/views/tabs/tab_strip.h @@ -80,7 +80,7 @@ class TabStrip : public BaseTabStrip, virtual int OnPerformDrop(const views::DropTargetEvent& event); virtual bool GetAccessibleRole(AccessibilityTypes::Role* role); virtual views::View* GetViewForPoint(const gfx::Point& point); - virtual void ThemeChanged(); + virtual void OnThemeChanged(); protected: // BaseTabStrip overrides: diff --git a/chrome/browser/views/toolbar_view.cc b/chrome/browser/views/toolbar_view.cc index b287bda..598aef3 100644 --- a/chrome/browser/views/toolbar_view.cc +++ b/chrome/browser/views/toolbar_view.cc @@ -505,7 +505,7 @@ void ToolbarView::Paint(gfx::Canvas* canvas) { canvas->FillRectInt(SK_ColorBLACK, 0, height() - 1, width(), 1); } -void ToolbarView::ThemeChanged() { +void ToolbarView::OnThemeChanged() { LoadImages(); } diff --git a/chrome/browser/views/toolbar_view.h b/chrome/browser/views/toolbar_view.h index bf67a84..59f1b68 100644 --- a/chrome/browser/views/toolbar_view.h +++ b/chrome/browser/views/toolbar_view.h @@ -119,7 +119,7 @@ class ToolbarView : public AccessibleToolbarView, virtual gfx::Size GetPreferredSize(); virtual void Layout(); virtual void Paint(gfx::Canvas* canvas); - virtual void ThemeChanged(); + virtual void OnThemeChanged(); protected: |