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

Side by Side Diff: components/translate/core/browser/translate_manager.cc

Issue 291503008: Remove most of chrome/ and content/ usage from TranslateInfoBarDelegate (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review comments 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "components/translate/core/browser/translate_manager.h" 5 #include "components/translate/core/browser/translate_manager.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 } 68 }
69 69
70 TranslateManager::TranslateManager( 70 TranslateManager::TranslateManager(
71 TranslateClient* translate_client, 71 TranslateClient* translate_client,
72 const std::string& accept_languages_pref_name) 72 const std::string& accept_languages_pref_name)
73 : accept_languages_pref_name_(accept_languages_pref_name), 73 : accept_languages_pref_name_(accept_languages_pref_name),
74 translate_client_(translate_client), 74 translate_client_(translate_client),
75 translate_driver_(translate_client_->GetTranslateDriver()), 75 translate_driver_(translate_client_->GetTranslateDriver()),
76 weak_method_factory_(this) {} 76 weak_method_factory_(this) {}
77 77
78 base::WeakPtr<TranslateManager> TranslateManager::GetWeakPtr() {
79 return weak_method_factory_.GetWeakPtr();
80 }
81
78 void TranslateManager::InitiateTranslation(const std::string& page_lang) { 82 void TranslateManager::InitiateTranslation(const std::string& page_lang) {
79 // Short-circuit out if not in a state where initiating translation makes 83 // Short-circuit out if not in a state where initiating translation makes
80 // sense (this method may be called muhtiple times for a given page). 84 // sense (this method may be called muhtiple times for a given page).
81 LanguageState& language_state = translate_driver_->GetLanguageState(); 85 LanguageState& language_state = translate_driver_->GetLanguageState();
82 if (!language_state.page_needs_translation() || 86 if (!language_state.page_needs_translation() ||
83 language_state.translation_pending() || 87 language_state.translation_pending() ||
84 language_state.translation_declined() || 88 language_state.translation_declined() ||
85 language_state.IsPageTranslated()) { 89 language_state.IsPageTranslated()) {
86 return; 90 return;
87 } 91 }
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
232 DCHECK(script != NULL); 236 DCHECK(script != NULL);
233 237
234 const std::string& script_data = script->data(); 238 const std::string& script_data = script->data();
235 if (!script_data.empty()) { 239 if (!script_data.empty()) {
236 DoTranslatePage(script_data, source_lang, target_lang); 240 DoTranslatePage(script_data, source_lang, target_lang);
237 return; 241 return;
238 } 242 }
239 243
240 // The script is not available yet. Queue that request and query for the 244 // The script is not available yet. Queue that request and query for the
241 // script. Once it is downloaded we'll do the translate. 245 // script. Once it is downloaded we'll do the translate.
242 TranslateScript::RequestCallback callback = 246 TranslateScript::RequestCallback callback = base::Bind(
243 base::Bind(&TranslateManager::OnTranslateScriptFetchComplete, 247 &TranslateManager::OnTranslateScriptFetchComplete, GetWeakPtr(),
244 weak_method_factory_.GetWeakPtr(), 248 translate_driver_->GetCurrentPageID(), source_lang, target_lang);
245 translate_driver_->GetCurrentPageID(),
246 source_lang,
247 target_lang);
248 249
249 script->Request(callback); 250 script->Request(callback);
250 } 251 }
251 252
252 void TranslateManager::RevertTranslation() { 253 void TranslateManager::RevertTranslation() {
253 translate_driver_->RevertTranslation(); 254 translate_driver_->RevertTranslation();
254 translate_driver_->GetLanguageState().SetCurrentLanguage( 255 translate_driver_->GetLanguageState().SetCurrentLanguage(
255 translate_driver_->GetLanguageState().original_language()); 256 translate_driver_->GetLanguageState().original_language());
256 } 257 }
257 258
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
377 &auto_target_lang)) { 378 &auto_target_lang)) {
378 // We need to confirm that the saved target language is still supported. 379 // We need to confirm that the saved target language is still supported.
379 // Also, GetLanguageCode will take care of removing country code if any. 380 // Also, GetLanguageCode will take care of removing country code if any.
380 auto_target_lang = 381 auto_target_lang =
381 TranslateDownloadManager::GetLanguageCode(auto_target_lang); 382 TranslateDownloadManager::GetLanguageCode(auto_target_lang);
382 if (TranslateDownloadManager::IsSupportedLanguage(auto_target_lang)) 383 if (TranslateDownloadManager::IsSupportedLanguage(auto_target_lang))
383 return auto_target_lang; 384 return auto_target_lang;
384 } 385 }
385 return std::string(); 386 return std::string();
386 } 387 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698