summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos
diff options
context:
space:
mode:
authoryusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-16 14:50:21 +0000
committeryusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-16 14:50:21 +0000
commite0279dd40ae1deec7646199ccbc6428b90eaeb32 (patch)
tree9c1b82ac2ee7eb7906c52afe8e54ab01db6747a1 /chrome/browser/chromeos
parent92c4a81f28a463cd71d782f7ae9b768c91e59d10 (diff)
downloadchromium_src-e0279dd40ae1deec7646199ccbc6428b90eaeb32.zip
chromium_src-e0279dd40ae1deec7646199ccbc6428b90eaeb32.tar.gz
chromium_src-e0279dd40ae1deec7646199ccbc6428b90eaeb32.tar.bz2
Handle all checkboxes. Currently, the ButtonPressed() handler ignores checkboxes other than the last one.
BUG=none TEST=open the configuration dialog, click all checkboxes, verify that all IMEs are activated. Review URL: http://codereview.chromium.org/1024002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41720 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos')
-rw-r--r--chrome/browser/chromeos/options/language_config_view.cc22
-rw-r--r--chrome/browser/chromeos/options/language_config_view.h3
2 files changed, 14 insertions, 11 deletions
diff --git a/chrome/browser/chromeos/options/language_config_view.cc b/chrome/browser/chromeos/options/language_config_view.cc
index 88419da..2aea165 100644
--- a/chrome/browser/chromeos/options/language_config_view.cc
+++ b/chrome/browser/chromeos/options/language_config_view.cc
@@ -38,11 +38,10 @@ class LanguageCheckbox : public views::Checkbox {
DISALLOW_COPY_AND_ASSIGN(LanguageCheckbox);
};
-LanguageConfigView::LanguageConfigView() :
- contents_(NULL),
- hangul_configure_button_(NULL),
- language_checkbox_(NULL),
- preferred_language_table_(NULL) {
+LanguageConfigView::LanguageConfigView()
+ : contents_(NULL),
+ hangul_configure_button_(NULL),
+ preferred_language_table_(NULL) {
}
LanguageConfigView::~LanguageConfigView() {
@@ -55,7 +54,9 @@ void LanguageConfigView::ButtonPressed(
NULL, gfx::Rect(), new LanguageHangulConfigView());
window->SetIsAlwaysOnTop(true);
window->Show();
- } else if (sender == static_cast<views::Button*>(language_checkbox_)) {
+ } else if (std::find(language_checkboxes_.begin(),
+ language_checkboxes_.end(),
+ sender) != language_checkboxes_.end()) {
LanguageCheckbox* checkbox = static_cast<LanguageCheckbox*>(sender);
const InputLanguage& language = checkbox->language();
// Check if the checkbox is now being checked.
@@ -207,16 +208,17 @@ void LanguageConfigView::Init() {
active_language_list->end(),
language) != active_language_list->end());
// Create a checkbox.
- language_checkbox_ = new LanguageCheckbox(language);
- language_checkbox_->SetChecked(language_is_active);
- language_checkbox_->set_listener(this);
+ LanguageCheckbox* language_checkbox = new LanguageCheckbox(language);
+ language_checkbox->SetChecked(language_is_active);
+ language_checkbox->set_listener(this);
+ language_checkboxes_.push_back(language_checkbox);
// We use two columns. Start a column if the counter is an even number.
if (i % 2 == 0) {
layout->StartRow(0, kDoubleColumnSetId);
}
// Add the checkbox to the layout manager.
- layout->AddView(language_checkbox_);
+ layout->AddView(language_checkbox);
}
// Add the configure button for the Hangul IME.
diff --git a/chrome/browser/chromeos/options/language_config_view.h b/chrome/browser/chromeos/options/language_config_view.h
index 957b71a6..84388d2 100644
--- a/chrome/browser/chromeos/options/language_config_view.h
+++ b/chrome/browser/chromeos/options/language_config_view.h
@@ -6,6 +6,7 @@
#define CHROME_BROWSER_CHROMEOS_OPTIONS_LANGUAGE_CONFIG_VIEW_H_
#include <string>
+#include <vector>
#include "app/table_model.h"
#include "chrome/browser/chromeos/cros/language_library.h"
@@ -64,7 +65,7 @@ class LanguageConfigView : public TableModel,
views::View* contents_;
views::NativeButton* hangul_configure_button_;
- LanguageCheckbox* language_checkbox_;
+ std::vector<views::Button*> language_checkboxes_;
// A table for preferred languages and its model.
views::TableView2* preferred_language_table_;