Index: chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java |
index beaff0f6f6b3611522e0986bbf1212a934e72e8d..209199e18559ba26b6d0f49634a878605bc0810c 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManager.java |
@@ -491,7 +491,18 @@ public class ContextualSearchManager extends ContextualSearchObservable |
boolean shouldPrefetch = mPolicy.shouldPrefetchSearchResult(isTap); |
mSearchRequest = new ContextualSearchRequest(mSelectionController.getSelectedText(), |
null, shouldPrefetch); |
- // TODO(donnd): figure out a way to do translation on long-press selections. |
+ // Always trigger translation using auto-detect when we're not resolving, |
+ // unless disabled by policy. |
+ boolean doForceTranslate = !mPolicy.disableAutoDetectTranslationOnebox(); |
pedro (no code reviews)
2015/11/20 23:56:25
Nit: rename doForceTranslate to shouldAutoDetectTr
Donn Denman
2015/11/21 01:14:00
Done.
|
+ if (doForceTranslate) { |
+ // Use the empty string for the source language in order to trigger auto-detect. |
+ // The translation one-box won't actually show when the source text ends up being |
+ // the same as the target text, so we err on over-triggering. |
+ mSearchRequest.forceTranslation("", |
pedro (no code reviews)
2015/11/20 23:56:25
Nit: Similarly, consider having a new CSRequest me
Donn Denman
2015/11/21 01:14:00
Done.
|
+ mPolicy.bestTargetLanguage(getWritableLanguages())); |
+ // TODO(donnd): Do we really want to log only when translating on long-press? |
+ ContextualSearchUma.logTranslateOnebox(doForceTranslate); |
+ } |
mDidStartLoadingResolvedSearchRequest = false; |
mSearchPanel.displaySearchTerm(mSelectionController.getSelectedText()); |
if (shouldPrefetch) loadSearchUrl(); |