summaryrefslogtreecommitdiffstats
path: root/chrome/browser/translate/translate_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/translate/translate_manager.cc')
-rw-r--r--chrome/browser/translate/translate_manager.cc42
1 files changed, 12 insertions, 30 deletions
diff --git a/chrome/browser/translate/translate_manager.cc b/chrome/browser/translate/translate_manager.cc
index 9f425e1..ddb7597 100644
--- a/chrome/browser/translate/translate_manager.cc
+++ b/chrome/browser/translate/translate_manager.cc
@@ -20,7 +20,6 @@
#include "chrome/browser/translate/translate_accept_languages.h"
#include "chrome/browser/translate/translate_infobar_delegate.h"
#include "chrome/browser/translate/translate_prefs.h"
-#include "chrome/browser/translate/translate_script.h"
#include "chrome/browser/translate/translate_tab_helper.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h"
@@ -38,6 +37,7 @@
#include "components/translate/core/browser/translate_download_manager.h"
#include "components/translate/core/browser/translate_error_details.h"
#include "components/translate/core/browser/translate_language_list.h"
+#include "components/translate/core/browser/translate_script.h"
#include "components/translate/core/browser/translate_url_util.h"
#include "components/translate/core/common/language_detection_details.h"
#include "components/translate/core/common/translate_constants.h"
@@ -124,14 +124,6 @@ bool TranslateManager::IsAcceptLanguage(Profile* profile,
return false;
}
-void TranslateManager::SetTranslateScriptExpirationDelay(int delay_ms) {
- if (script_.get() == NULL) {
- NOTREACHED();
- return;
- }
- script_->set_expiration_delay(delay_ms);
-}
-
void TranslateManager::Observe(int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) {
@@ -258,7 +250,6 @@ TranslateManager::TranslateManager()
notification_registrar_.Add(this, chrome::NOTIFICATION_PAGE_TRANSLATED,
content::NotificationService::AllSources());
accept_languages_.reset(new TranslateAcceptLanguages);
- script_.reset(new TranslateScript);
}
void TranslateManager::InitiateTranslation(WebContents* web_contents,
@@ -449,11 +440,12 @@ void TranslateManager::TranslatePage(WebContents* web_contents,
ShortcutConfig());
}
- DCHECK(script_.get() != NULL);
+ TranslateScript* script = TranslateDownloadManager::GetInstance()->script();
+ DCHECK(script != NULL);
- const std::string& translate_script = script_->data();
- if (!translate_script.empty()) {
- DoTranslatePage(web_contents, translate_script, source_lang, target_lang);
+ const std::string& script_data = script->data();
+ if (!script_data.empty()) {
+ DoTranslatePage(web_contents, script_data, source_lang, target_lang);
return;
}
@@ -468,10 +460,10 @@ void TranslateManager::TranslatePage(WebContents* web_contents,
request.target_lang = target_lang;
pending_requests_.push_back(request);
- if (script_->HasPendingRequest())
+ if (script->HasPendingRequest())
return;
- script_->Request(
+ script->Request(
base::Bind(&TranslateManager::OnTranslateScriptFetchComplete,
base::Unretained(this)));
}
@@ -522,14 +514,6 @@ void TranslateManager::ReportLanguageDetectionError(WebContents* web_contents) {
content::PAGE_TRANSITION_AUTO_BOOKMARK);
}
-void TranslateManager::ClearTranslateScript() {
- if (script_.get() == NULL) {
- NOTREACHED();
- return;
- }
- script_->Clear();
-}
-
void TranslateManager::DoTranslatePage(WebContents* web_contents,
const std::string& translate_script,
const std::string& source_lang,
@@ -588,10 +572,6 @@ void TranslateManager::PageTranslated(WebContents* web_contents,
}
}
-void TranslateManager::CleanupPendingUlrFetcher() {
- script_.reset();
-}
-
void TranslateManager::OnTranslateScriptFetchComplete(
bool success, const std::string& data) {
std::vector<PendingRequest>::const_iterator iter;
@@ -613,8 +593,10 @@ void TranslateManager::OnTranslateScriptFetchComplete(
if (success) {
// Translate the page.
- const std::string& translate_script = script_->data();
- DoTranslatePage(web_contents, translate_script,
+ TranslateScript* translate_script =
+ TranslateDownloadManager::GetInstance()->script();
+ DCHECK(translate_script);
+ DoTranslatePage(web_contents, translate_script->data(),
request.source_lang, request.target_lang);
} else {
if (IsTranslateBubbleEnabled()) {