diff options
-rw-r--r-- | chrome/browser/translate/translate_infobar_delegate.cc | 18 | ||||
-rw-r--r-- | chrome/browser/translate/translate_infobar_delegate.h | 1 |
2 files changed, 10 insertions, 9 deletions
diff --git a/chrome/browser/translate/translate_infobar_delegate.cc b/chrome/browser/translate/translate_infobar_delegate.cc index ca9df4c..311421e 100644 --- a/chrome/browser/translate/translate_infobar_delegate.cc +++ b/chrome/browser/translate/translate_infobar_delegate.cc @@ -74,6 +74,16 @@ void TranslateInfoBarDelegate::Create( original_language, target_language)); infobar->UpdateBackgroundAnimation(old_delegate); + // Do not create the after translate infobar if we are auto translating. + if (infobar_type == TranslateInfoBarDelegate::AFTER_TRANSLATE || + infobar_type == TranslateInfoBarDelegate::TRANSLATING) { + TranslateTabHelper* translate_tab_helper = + TranslateTabHelper::FromWebContents(infobar_service->web_contents()); + if (!translate_tab_helper || + translate_tab_helper->language_state().InTranslateNavigation()) + return; + } + // Add the new delegate if necessary. if (!old_delegate) { infobar_service->AddInfoBar(infobar.PassAs<InfoBarDelegate>()); @@ -126,14 +136,6 @@ void TranslateInfoBarDelegate::TranslationDeclined() { UMA_HISTOGRAM_BOOLEAN(kDeclineTranslate, true); } -bool TranslateInfoBarDelegate::InTranslateNavigation() { - TranslateTabHelper* translate_tab_helper = - TranslateTabHelper::FromWebContents(web_contents()); - if (!translate_tab_helper) - return false; - return translate_tab_helper->language_state().InTranslateNavigation(); -} - bool TranslateInfoBarDelegate::IsTranslatableLanguageByPrefs() { Profile* profile = Profile::FromBrowserContext(web_contents()->GetBrowserContext()); diff --git a/chrome/browser/translate/translate_infobar_delegate.h b/chrome/browser/translate/translate_infobar_delegate.h index 257a32d..066df9b 100644 --- a/chrome/browser/translate/translate_infobar_delegate.h +++ b/chrome/browser/translate/translate_infobar_delegate.h @@ -148,7 +148,6 @@ class TranslateInfoBarDelegate : public InfoBarDelegate { string16 GetMessageInfoBarButtonText(); void MessageInfoBarButtonPressed(); bool ShouldShowMessageInfoBarButton(); - bool InTranslateNavigation(); // Called by the before translate infobar to figure-out if it should show // an extra shortcut to let the user black-list/white-list that language |