Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/translate/translate_infobar_delegate.h" | 5 #include "chrome/browser/translate/translate_infobar_delegate.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/i18n/string_compare.h" | 9 #include "base/i18n/string_compare.h" |
| 10 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
| (...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 204 void TranslateInfoBarDelegate::AlwaysTranslatePageLanguage() { | 204 void TranslateInfoBarDelegate::AlwaysTranslatePageLanguage() { |
| 205 const std::string& original_lang = original_language_code(); | 205 const std::string& original_lang = original_language_code(); |
| 206 const std::string& target_lang = target_language_code(); | 206 const std::string& target_lang = target_language_code(); |
| 207 DCHECK(!prefs_.IsLanguagePairWhitelisted(original_lang, target_lang)); | 207 DCHECK(!prefs_.IsLanguagePairWhitelisted(original_lang, target_lang)); |
| 208 prefs_.WhitelistLanguagePair(original_lang, target_lang); | 208 prefs_.WhitelistLanguagePair(original_lang, target_lang); |
| 209 Translate(); | 209 Translate(); |
| 210 } | 210 } |
| 211 | 211 |
| 212 void TranslateInfoBarDelegate::NeverTranslatePageLanguage() { | 212 void TranslateInfoBarDelegate::NeverTranslatePageLanguage() { |
| 213 std::string original_lang = original_language_code(); | 213 std::string original_lang = original_language_code(); |
| 214 DCHECK(!prefs_.IsBlockedLanguage(original_lang)); | 214 |
| 215 // Don't use DCHECK(...) to check if the language is listed in the blocked | |
|
Evan Stade
2013/09/12 22:53:41
this comment seems pretty long to explain why a th
hajimehoshi
2013/09/13 01:39:19
Ok, I'll write the explanation at the description
| |
| 216 // language list here because the language might already be listed. For | |
| 217 // example: | |
| 218 // 1. After the user add the language, he/she removes the language from | |
| 219 // chrome://settings/languages. In this case, Translate infobar will | |
| 220 // appear. | |
| 221 // 2. While the Translate infobar is shown, the user can change if Translate | |
| 222 // should be offered in the language. In this case, the user can push | |
| 223 // "Never Translate (language)" button while the language is already | |
| 224 // blocked. | |
| 215 prefs_.BlockLanguage(original_lang); | 225 prefs_.BlockLanguage(original_lang); |
| 216 RemoveSelf(); | 226 RemoveSelf(); |
| 217 } | 227 } |
| 218 | 228 |
| 219 string16 TranslateInfoBarDelegate::GetMessageInfoBarText() { | 229 string16 TranslateInfoBarDelegate::GetMessageInfoBarText() { |
| 220 if (infobar_type_ == TRANSLATING) { | 230 if (infobar_type_ == TRANSLATING) { |
| 221 return l10n_util::GetStringFUTF16(IDS_TRANSLATE_INFOBAR_TRANSLATING_TO, | 231 return l10n_util::GetStringFUTF16(IDS_TRANSLATE_INFOBAR_TRANSLATING_TO, |
| 222 language_name_at(target_language_index_)); | 232 language_name_at(target_language_index_)); |
| 223 } | 233 } |
| 224 | 234 |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 425 | 435 |
| 426 TranslateInfoBarDelegate* | 436 TranslateInfoBarDelegate* |
| 427 TranslateInfoBarDelegate::AsTranslateInfoBarDelegate() { | 437 TranslateInfoBarDelegate::AsTranslateInfoBarDelegate() { |
| 428 return this; | 438 return this; |
| 429 } | 439 } |
| 430 | 440 |
| 431 std::string TranslateInfoBarDelegate::GetPageHost() { | 441 std::string TranslateInfoBarDelegate::GetPageHost() { |
| 432 NavigationEntry* entry = web_contents()->GetController().GetActiveEntry(); | 442 NavigationEntry* entry = web_contents()->GetController().GetActiveEntry(); |
| 433 return entry ? entry->GetURL().HostNoBrackets() : std::string(); | 443 return entry ? entry->GetURL().HostNoBrackets() : std::string(); |
| 434 } | 444 } |
| OLD | NEW |