Index: chrome/browser/translate/translate_tab_helper.cc |
diff --git a/chrome/browser/translate/translate_tab_helper.cc b/chrome/browser/translate/translate_tab_helper.cc |
index fbe08b8c94467a8faa169c3ba4b47fb098ff0650..8ceeea8caf1b8345e14ca1bc0407e97a34ae556e 100644 |
--- a/chrome/browser/translate/translate_tab_helper.cc |
+++ b/chrome/browser/translate/translate_tab_helper.cc |
@@ -6,6 +6,7 @@ |
#include "chrome/browser/chrome_notification_types.h" |
#include "chrome/browser/profiles/profile.h" |
+#include "chrome/browser/translate/translate_accept_languages_factory.h" |
#include "chrome/browser/translate/translate_infobar_delegate.h" |
#include "chrome/browser/translate/translate_service.h" |
#include "chrome/browser/ui/browser.h" |
@@ -13,8 +14,11 @@ |
#include "chrome/browser/ui/browser_window.h" |
#include "chrome/browser/ui/tabs/tab_strip_model.h" |
#include "chrome/browser/ui/translate/translate_bubble_factory.h" |
+#include "chrome/common/pref_names.h" |
#include "chrome/common/render_messages.h" |
#include "components/translate/core/browser/page_translated_details.h" |
+#include "components/translate/core/browser/translate_accept_languages.h" |
+#include "components/translate/core/browser/translate_prefs.h" |
#include "components/translate/core/common/language_detection_details.h" |
#include "content/public/browser/notification_service.h" |
#include "content/public/browser/web_contents.h" |
@@ -89,6 +93,26 @@ LanguageState& TranslateTabHelper::GetLanguageState() { |
return translate_driver_.language_state(); |
} |
+// static |
+scoped_ptr<TranslatePrefs> TranslateTabHelper::CreateTranslatePrefs( |
+ PrefService* prefs) { |
+ return scoped_ptr<TranslatePrefs>(new TranslatePrefs( |
+ prefs, |
+#if defined(OS_CHROMEOS) |
+ prefs::kLanguagePreferredLanguages, |
+#endif |
+ prefs::kAcceptLanguages)); |
+} |
+ |
+// static |
+bool TranslateTabHelper::IsAcceptLanguage( |
+ content::BrowserContext* browser_context, |
+ const std::string& language) { |
+ TranslateAcceptLanguages* accept_languages = |
+ TranslateAcceptLanguagesFactory::GetForBrowserContext(browser_context); |
+ return accept_languages->IsAcceptLanguage(language); |
+} |
+ |
void TranslateTabHelper::ShowTranslateUI(TranslateTabHelper::TranslateStep step, |
content::WebContents* web_contents, |
const std::string source_language, |