Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1099)

Unified Diff: chrome/browser/ui/views/infobars/translate_infobar_base.cc

Issue 10952016: Simplify the translate infobar code some. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/infobars/translate_infobar_base.cc
===================================================================
--- chrome/browser/ui/views/infobars/translate_infobar_base.cc (revision 157463)
+++ chrome/browser/ui/views/infobars/translate_infobar_base.cc (working copy)
@@ -22,23 +22,11 @@
InfoBar* TranslateInfoBarDelegate::CreateInfoBar(InfoBarService* owner) {
InfoBarTabHelper* helper = static_cast<InfoBarTabHelper*>(owner);
- TranslateInfoBarBase* infobar = NULL;
- switch (type_) {
- case BEFORE_TRANSLATE:
- infobar = new BeforeTranslateInfoBar(helper, this);
- break;
- case AFTER_TRANSLATE:
- infobar = new AfterTranslateInfoBar(helper, this);
- break;
- case TRANSLATING:
- case TRANSLATION_ERROR:
- infobar = new TranslateMessageInfoBar(helper, this);
- break;
- default:
- NOTREACHED();
- }
- infobar_view_ = infobar;
- return infobar;
+ if (type_ == BEFORE_TRANSLATE)
+ return new BeforeTranslateInfoBar(helper, this);
+ if (type_ == AFTER_TRANSLATE)
+ return new AfterTranslateInfoBar(helper, this);
+ return new TranslateMessageInfoBar(helper, this);
}
// TranslateInfoBarBase -------------------------------------------------------
@@ -56,6 +44,15 @@
TranslateInfoBarBase::~TranslateInfoBarBase() {
}
+void TranslateInfoBarBase::UpdateLanguageButtonText(views::MenuButton* button,
+ const string16& text) {
+ DCHECK(button);
+ button->SetText(text);
+ // The button may have to grow to show the new text.
+ Layout();
+ SchedulePaint();
+}
+
void TranslateInfoBarBase::ViewHierarchyChanged(bool is_add,
View* parent,
View* child) {
@@ -79,20 +76,6 @@
InfoBarView::ViewHierarchyChanged(is_add, parent, child);
}
-void TranslateInfoBarBase::UpdateLanguageButtonText(
- views::MenuButton* button,
- LanguagesMenuModel::LanguageType language_type) {
- DCHECK(button);
- TranslateInfoBarDelegate* delegate = GetDelegate();
- bool is_original = language_type == LanguagesMenuModel::ORIGINAL;
- int index = is_original ? delegate->original_language_index()
- : delegate->target_language_index();
- button->SetText(delegate->GetLanguageDisplayableNameAt(index));
- // The button may have to grow to show the new text.
- Layout();
- SchedulePaint();
-}
-
TranslateInfoBarDelegate* TranslateInfoBarBase::GetDelegate() {
return delegate()->AsTranslateInfoBarDelegate();
}

Powered by Google App Engine
This is Rietveld 408576698