diff options
author | glotov@google.com <glotov@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-20 23:15:41 +0000 |
---|---|---|
committer | glotov@google.com <glotov@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-20 23:15:41 +0000 |
commit | e5be7289649a7e40698c5e469657b3b8f2580981 (patch) | |
tree | c1b75a48031e8f3416288d0c0cd0670f4d251005 /chrome/browser/chromeos/status | |
parent | e32d94ef042eac126d15823cc2e9258b0332c6d1 (diff) | |
download | chromium_src-e5be7289649a7e40698c5e469657b3b8f2580981.zip chromium_src-e5be7289649a7e40698c5e469657b3b8f2580981.tar.gz chromium_src-e5be7289649a7e40698c5e469657b3b8f2580981.tar.bz2 |
LocaleChanged() added to update the view after the UI language was switched.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/1568033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45107 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/status')
-rw-r--r-- | chrome/browser/chromeos/status/language_menu_button.cc | 15 | ||||
-rw-r--r-- | chrome/browser/chromeos/status/language_menu_button.h | 4 |
2 files changed, 18 insertions, 1 deletions
diff --git a/chrome/browser/chromeos/status/language_menu_button.cc b/chrome/browser/chromeos/status/language_menu_button.cc index 6212944..88fc0ae 100644 --- a/chrome/browser/chromeos/status/language_menu_button.cc +++ b/chrome/browser/chromeos/status/language_menu_button.cc @@ -134,7 +134,7 @@ LanguageMenuButton::LanguageMenuButton(StatusAreaHost* host) set_border(NULL); SetFont(ResourceBundle::GetSharedInstance().GetFont( ResourceBundle::BaseFont).DeriveFont(1, gfx::Font::BOLD)); - SetEnabledColor(0xB3FFFFFF); // White with 70% Alpha + SetEnabledColor(0xB3FFFFFF); // White with 70% Alpha SetShowHighlighted(false); // Update the model RebuildModel(); @@ -366,6 +366,19 @@ void LanguageMenuButton::ImePropertiesChanged(LanguageLibrary* obj) { RebuildModel(); } +//////////////////////////////////////////////////////////////////////////////// +// views::View implementation: + +void LanguageMenuButton::LocaleChanged() { + input_method_descriptors_.reset(CrosLibrary::Get()->GetLanguageLibrary()-> + GetActiveInputMethods()); + std::wstring name = FormatInputLanguage( + CrosLibrary::Get()->GetLanguageLibrary()->current_input_method(), false); + UpdateIcon(name); + Layout(); + SchedulePaint(); +} + void LanguageMenuButton::UpdateIcon(const std::wstring& name) { SetText(name); set_alignment(TextButton::ALIGN_RIGHT); diff --git a/chrome/browser/chromeos/status/language_menu_button.h b/chrome/browser/chromeos/status/language_menu_button.h index b51e513..2bfc06a 100644 --- a/chrome/browser/chromeos/status/language_menu_button.h +++ b/chrome/browser/chromeos/status/language_menu_button.h @@ -49,6 +49,10 @@ class LanguageMenuButton : public views::MenuButton, virtual void InputMethodChanged(LanguageLibrary* obj); virtual void ImePropertiesChanged(LanguageLibrary* obj); + protected: + // views::View implementation. + virtual void LocaleChanged(); + private: // views::ViewMenuDelegate implementation. virtual void RunMenu(views::View* source, const gfx::Point& pt); |