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

Side by Side Diff: chrome/browser/translate/translate_tab_helper.cc

Issue 227043005: Eliminate TranslateManager listening to //chrome-level notifications. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 "chrome/browser/translate/translate_tab_helper.h" 5 #include "chrome/browser/translate/translate_tab_helper.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "chrome/browser/chrome_notification_types.h" 8 #include "chrome/browser/chrome_notification_types.h"
9 #include "chrome/browser/profiles/profile.h" 9 #include "chrome/browser/profiles/profile.h"
10 #include "chrome/browser/translate/translate_accept_languages_factory.h" 10 #include "chrome/browser/translate/translate_accept_languages_factory.h"
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after
309 } 309 }
310 } 310 }
311 #endif // defined(CLD2_DYNAMIC_MODE) 311 #endif // defined(CLD2_DYNAMIC_MODE)
312 312
313 void TranslateTabHelper::OnLanguageDetermined( 313 void TranslateTabHelper::OnLanguageDetermined(
314 const LanguageDetectionDetails& details, 314 const LanguageDetectionDetails& details,
315 bool page_needs_translation) { 315 bool page_needs_translation) {
316 translate_driver_.GetLanguageState().LanguageDetermined( 316 translate_driver_.GetLanguageState().LanguageDetermined(
317 details.adopted_language, page_needs_translation); 317 details.adopted_language, page_needs_translation);
318 318
319 if (web_contents())
320 translate_manager_->InitiateTranslation(details.adopted_language);
321
319 content::NotificationService::current()->Notify( 322 content::NotificationService::current()->Notify(
320 chrome::NOTIFICATION_TAB_LANGUAGE_DETERMINED, 323 chrome::NOTIFICATION_TAB_LANGUAGE_DETERMINED,
321 content::Source<content::WebContents>(web_contents()), 324 content::Source<content::WebContents>(web_contents()),
322 content::Details<const LanguageDetectionDetails>(&details)); 325 content::Details<const LanguageDetectionDetails>(&details));
323 } 326 }
324 327
325 void TranslateTabHelper::OnPageTranslated(int32 page_id, 328 void TranslateTabHelper::OnPageTranslated(int32 page_id,
326 const std::string& original_lang, 329 const std::string& original_lang,
327 const std::string& translated_lang, 330 const std::string& translated_lang,
328 TranslateErrors::Type error_type) { 331 TranslateErrors::Type error_type) {
329 DCHECK(web_contents()); 332 DCHECK(web_contents());
330 translate_driver_.GetLanguageState().SetCurrentLanguage(translated_lang); 333 translate_manager_->PageTranslated(
331 translate_driver_.GetLanguageState().set_translation_pending(false); 334 original_lang, translated_lang, error_type);
335
332 PageTranslatedDetails details; 336 PageTranslatedDetails details;
333 details.source_language = original_lang; 337 details.source_language = original_lang;
334 details.target_language = translated_lang; 338 details.target_language = translated_lang;
335 details.error_type = error_type; 339 details.error_type = error_type;
336 content::NotificationService::current()->Notify( 340 content::NotificationService::current()->Notify(
337 chrome::NOTIFICATION_PAGE_TRANSLATED, 341 chrome::NOTIFICATION_PAGE_TRANSLATED,
338 content::Source<content::WebContents>(web_contents()), 342 content::Source<content::WebContents>(web_contents()),
339 content::Details<PageTranslatedDetails>(&details)); 343 content::Details<PageTranslatedDetails>(&details));
340 } 344 }
341 345
(...skipping 29 matching lines...) Expand all
371 if (GetLanguageState().InTranslateNavigation()) 375 if (GetLanguageState().InTranslateNavigation())
372 return; 376 return;
373 } 377 }
374 378
375 TranslateBubbleFactory::Show( 379 TranslateBubbleFactory::Show(
376 browser->window(), web_contents(), step, error_type); 380 browser->window(), web_contents(), step, error_type);
377 #else 381 #else
378 NOTREACHED(); 382 NOTREACHED();
379 #endif 383 #endif
380 } 384 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698