Chromium Code Reviews| Index: chrome/browser/translate/translate_tab_helper.cc |
| diff --git a/chrome/browser/translate/translate_tab_helper.cc b/chrome/browser/translate/translate_tab_helper.cc |
| index d9fcfff698cbcd68ffa2dcc96297d4207bdf7186..1b3207f4280e34b018d5cf3b60cf905ef71cf11d 100644 |
| --- a/chrome/browser/translate/translate_tab_helper.cc |
| +++ b/chrome/browser/translate/translate_tab_helper.cc |
| @@ -17,12 +17,20 @@ DEFINE_WEB_CONTENTS_USER_DATA_KEY(TranslateTabHelper); |
| TranslateTabHelper::TranslateTabHelper(WebContents* web_contents) |
| : content::WebContentsObserver(web_contents), |
| - language_state_(&web_contents->GetController()) { |
| + translate_driver_(&web_contents->GetController()) { |
| } |
| TranslateTabHelper::~TranslateTabHelper() { |
| } |
| +LanguageState& TranslateTabHelper::GetLanguageState() { |
| + return translate_driver_.GetLanguageState(); |
| +} |
| + |
| +ContentTranslateDriver* TranslateTabHelper::GetTranslateDriver() { |
|
blundell
2014/01/20 14:22:53
Why not return this as a reference?
|
| + return &translate_driver_; |
| +} |
| + |
| bool TranslateTabHelper::OnMessageReceived(const IPC::Message& message) { |
| bool handled = true; |
| IPC_BEGIN_MESSAGE_MAP(TranslateTabHelper, message) |
| @@ -39,14 +47,14 @@ void TranslateTabHelper::DidNavigateAnyFrame( |
| const content::LoadCommittedDetails& details, |
| const content::FrameNavigateParams& params) { |
| // Let the LanguageState clear its state. |
| - language_state_.DidNavigate(details); |
| + translate_driver_.DidNavigate(details); |
| } |
| void TranslateTabHelper::OnLanguageDetermined( |
| const LanguageDetectionDetails& details, |
| bool page_needs_translation) { |
| - language_state_.LanguageDetermined(details.adopted_language, |
| - page_needs_translation); |
| + translate_driver_.GetLanguageState().LanguageDetermined( |
| + details.adopted_language, page_needs_translation); |
| content::NotificationService::current()->Notify( |
| chrome::NOTIFICATION_TAB_LANGUAGE_DETERMINED, |
| @@ -58,8 +66,8 @@ void TranslateTabHelper::OnPageTranslated(int32 page_id, |
| const std::string& original_lang, |
| const std::string& translated_lang, |
| TranslateErrors::Type error_type) { |
| - language_state_.SetCurrentLanguage(translated_lang); |
| - language_state_.set_translation_pending(false); |
| + translate_driver_.GetLanguageState().SetCurrentLanguage(translated_lang); |
| + translate_driver_.GetLanguageState().set_translation_pending(false); |
| PageTranslatedDetails details; |
| details.source_language = original_lang; |
| details.target_language = translated_lang; |