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

Unified Diff: components/translate/core/browser/translate_manager.cc

Issue 290573013: LanguageState should be owned by TranslateManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Deleting unwanted forward references Created 6 years, 7 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: components/translate/core/browser/translate_manager.cc
diff --git a/components/translate/core/browser/translate_manager.cc b/components/translate/core/browser/translate_manager.cc
index dcc8c3084fc07dba176be7a981cfa773c989ed0b..63ada40d465b0bb49b86e6d565d93828a0ec6acb 100644
--- a/components/translate/core/browser/translate_manager.cc
+++ b/components/translate/core/browser/translate_manager.cc
@@ -73,6 +73,7 @@ TranslateManager::TranslateManager(
: accept_languages_pref_name_(accept_languages_pref_name),
translate_client_(translate_client),
translate_driver_(translate_client_->GetTranslateDriver()),
+ language_state_(translate_driver_),
weak_method_factory_(this) {}
base::WeakPtr<TranslateManager> TranslateManager::GetWeakPtr() {
@@ -82,11 +83,10 @@ base::WeakPtr<TranslateManager> TranslateManager::GetWeakPtr() {
void TranslateManager::InitiateTranslation(const std::string& page_lang) {
// Short-circuit out if not in a state where initiating translation makes
// sense (this method may be called muhtiple times for a given page).
- LanguageState& language_state = translate_driver_->GetLanguageState();
- if (!language_state.page_needs_translation() ||
- language_state.translation_pending() ||
- language_state.translation_declined() ||
- language_state.IsPageTranslated()) {
+ if (!language_state_.page_needs_translation() ||
+ language_state_.translation_pending() ||
+ language_state_.translation_declined() ||
+ language_state_.IsPageTranslated()) {
return;
}
@@ -190,7 +190,7 @@ void TranslateManager::InitiateTranslation(const std::string& page_lang) {
}
}
- std::string auto_translate_to = language_state.AutoTranslateTo();
+ std::string auto_translate_to = language_state_.AutoTranslateTo();
if (!auto_translate_to.empty()) {
// This page was navigated through a click from a translated page.
TranslateBrowserMetrics::ReportInitiationStatus(
@@ -252,8 +252,8 @@ void TranslateManager::TranslatePage(const std::string& original_source_lang,
void TranslateManager::RevertTranslation() {
translate_driver_->RevertTranslation();
- translate_driver_->GetLanguageState().SetCurrentLanguage(
- translate_driver_->GetLanguageState().original_language());
+ language_state_.SetCurrentLanguage(
+ language_state_.original_language());
}
void TranslateManager::ReportLanguageDetectionError() {
@@ -269,7 +269,7 @@ void TranslateManager::ReportLanguageDetectionError() {
report_error_url = net::AppendQueryParameter(
report_error_url,
kSourceLanguageQueryName,
- translate_driver_->GetLanguageState().original_language());
+ language_state_.original_language());
report_error_url = TranslateURLUtil::AddHostLocaleToUrl(report_error_url);
report_error_url = TranslateURLUtil::AddApiKeyToUrl(report_error_url);
@@ -280,15 +280,15 @@ void TranslateManager::ReportLanguageDetectionError() {
void TranslateManager::DoTranslatePage(const std::string& translate_script,
const std::string& source_lang,
const std::string& target_lang) {
- translate_driver_->GetLanguageState().set_translation_pending(true);
+ language_state_.set_translation_pending(true);
translate_driver_->TranslatePage(translate_script, source_lang, target_lang);
}
void TranslateManager::PageTranslated(const std::string& source_lang,
const std::string& target_lang,
TranslateErrors::Type error_type) {
- translate_driver_->GetLanguageState().SetCurrentLanguage(target_lang);
- translate_driver_->GetLanguageState().set_translation_pending(false);
+ language_state_.SetCurrentLanguage(target_lang);
+ language_state_.set_translation_pending(false);
if ((error_type == TranslateErrors::NONE) &&
source_lang != translate::kUnknownLanguageCode &&
@@ -385,3 +385,7 @@ std::string TranslateManager::GetAutoTargetLanguage(
}
return std::string();
}
+
+LanguageState& TranslateManager::GetLanguageState() {
+ return language_state_;
+}

Powered by Google App Engine
This is Rietveld 408576698