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

Unified Diff: components/translate/ios/browser/ios_translate_driver.mm

Issue 2913573002: Updates language model on iOS. (Closed)
Patch Set: Created 3 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: components/translate/ios/browser/ios_translate_driver.mm
diff --git a/components/translate/ios/browser/ios_translate_driver.mm b/components/translate/ios/browser/ios_translate_driver.mm
index dc5a92033f38f0b98699da1886e3048b15b28d89..e2d79467ce7872387b22f41f244083548d1bcf69 100644
--- a/components/translate/ios/browser/ios_translate_driver.mm
+++ b/components/translate/ios/browser/ios_translate_driver.mm
@@ -9,6 +9,7 @@
#include "base/strings/sys_string_conversions.h"
#include "base/threading/thread_task_runner_handle.h"
#include "base/time/time.h"
+#include "components/translate/core/browser/language_model.h"
#include "components/translate/core/browser/translate_client.h"
#include "components/translate/core/browser/translate_manager.h"
#include "components/translate/core/common/translate_constants.h"
@@ -49,9 +50,11 @@ const char kAutoDetectionLanguage[] = "auto";
IOSTranslateDriver::IOSTranslateDriver(
web::WebState* web_state,
web::NavigationManager* navigation_manager,
- TranslateManager* translate_manager)
+ TranslateManager* translate_manager,
+ LanguageModel* language_model)
: web::WebStateObserver(web_state),
navigation_manager_(navigation_manager),
+ language_model_(language_model),
translate_manager_(translate_manager->GetWeakPtr()),
page_seq_no_(0),
pending_page_seq_no_(0),
@@ -92,6 +95,11 @@ void IOSTranslateDriver::OnLanguageDetermined(
translate_manager_->GetLanguageState().LanguageDetermined(
details.adopted_language, true);
+ // Update language model.
+ if (language_model_ && details.is_cld_reliable) {
+ language_model_->OnPageVisited(details.cld_language);
+ }
+
if (web_state())
translate_manager_->InitiateTranslation(details.adopted_language);
}

Powered by Google App Engine
This is Rietveld 408576698