Index: chrome/browser/tab_contents/tab_contents.cc |
=================================================================== |
--- chrome/browser/tab_contents/tab_contents.cc (revision 37411) |
+++ chrome/browser/tab_contents/tab_contents.cc (working copy) |
@@ -45,6 +45,7 @@ |
#include "chrome/browser/renderer_host/render_widget_host_view.h" |
#include "chrome/browser/renderer_host/resource_request_details.h" |
#include "chrome/browser/renderer_host/site_instance.h" |
+#include "chrome/browser/renderer_host/translation_service.h" |
#include "chrome/browser/renderer_host/web_cache_manager.h" |
#include "chrome/browser/renderer_preferences_util.h" |
#include "chrome/browser/sessions/session_types.h" |
@@ -1807,6 +1808,19 @@ |
entry->set_language(language); |
} |
+ if (CommandLine::ForCurrentProcess()->HasSwitch( |
+ switches::kAutoPageTranslate) && |
+ TranslationService::IsTranslationEnabled()) { |
+ std::string locale = g_browser_process->GetApplicationLocale(); |
jungshik at Google
2010/01/30 01:27:17
nit: perhaps, s/locale/ui_language/ and s/language
|
+ if (!locale.empty() && locale != language) { |
+ // Don't translate the NTP, download page, history... |
+ if (entry && !entry->url().SchemeIs("chrome") && |
+ TranslationService::ShouldTranslatePage(language, locale)) { |
+ render_view_host()->TranslatePage(entry->page_id(), language, locale); |
+ } |
+ } |
+ } |
+ |
std::string lang = language; |
NotificationService::current()->Notify( |
NotificationType::TAB_LANGUAGE_DETERMINED, |