| Index: trunk/src/components/translate/content/browser/content_translate_driver.cc
|
| ===================================================================
|
| --- trunk/src/components/translate/content/browser/content_translate_driver.cc (revision 272260)
|
| +++ trunk/src/components/translate/content/browser/content_translate_driver.cc (working copy)
|
| @@ -8,6 +8,7 @@
|
| #include "components/translate/content/common/translate_messages.h"
|
| #include "content/public/browser/browser_context.h"
|
| #include "content/public/browser/navigation_controller.h"
|
| +#include "content/public/browser/navigation_details.h"
|
| #include "content/public/browser/navigation_entry.h"
|
| #include "content/public/browser/page_navigator.h"
|
| #include "content/public/browser/render_view_host.h"
|
| @@ -18,12 +19,22 @@
|
| ContentTranslateDriver::ContentTranslateDriver(
|
| content::NavigationController* nav_controller)
|
| : navigation_controller_(nav_controller),
|
| + language_state_(this),
|
| observer_(NULL) {
|
| DCHECK(navigation_controller_);
|
| }
|
|
|
| ContentTranslateDriver::~ContentTranslateDriver() {}
|
|
|
| +void ContentTranslateDriver::DidNavigate(
|
| + const content::LoadCommittedDetails& details) {
|
| + const bool reload =
|
| + details.entry->GetTransitionType() == content::PAGE_TRANSITION_RELOAD ||
|
| + details.type == content::NAVIGATION_TYPE_SAME_PAGE;
|
| + language_state_.DidNavigate(
|
| + details.is_in_page, details.is_main_frame, reload);
|
| +}
|
| +
|
| // TranslateDriver methods
|
|
|
| bool ContentTranslateDriver::IsLinkNavigation() {
|
| @@ -48,6 +59,10 @@
|
| }
|
| }
|
|
|
| +LanguageState& ContentTranslateDriver::GetLanguageState() {
|
| + return language_state_;
|
| +}
|
| +
|
| void ContentTranslateDriver::TranslatePage(const std::string& translate_script,
|
| const std::string& source_lang,
|
| const std::string& target_lang) {
|
|
|