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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateOptions.java

Issue 2788343002: Translate page in the new UI. (Closed)
Patch Set: compact unit test Created 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateOptions.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateOptions.java b/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateOptions.java
index a687451aefda1185476805cd22dc577812396425..98a7ff17af98871092090bf21a5a5c944ebb2290 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateOptions.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateOptions.java
@@ -105,20 +105,29 @@ public class TranslateOptions {
}
}
- public TranslateOptions(String sourceLanguageCode, String targetLanguageCode,
- ArrayList<TranslateLanguagePair> allLanguages, boolean alwaysTranslate,
+ /**
+ * Creates a TranslateOptions by the given data.
+ */
+ public static TranslateOptions create(String sourceLanguageCode, String targetLanguageCode,
+ String[] languages, String[] codes, boolean alwaysTranslate,
boolean triggeredFromMenu) {
- this(sourceLanguageCode, targetLanguageCode, allLanguages, false, false, alwaysTranslate,
- triggeredFromMenu, null);
+ assert languages.length == codes.length;
+
+ ArrayList<TranslateLanguagePair> languageList = new ArrayList<TranslateLanguagePair>();
+ for (int i = 0; i < languages.length; ++i) {
+ languageList.add(new TranslateLanguagePair(codes[i], languages[i]));
+ }
+ return new TranslateOptions(sourceLanguageCode, targetLanguageCode, languageList, false,
+ false, alwaysTranslate, triggeredFromMenu, null);
}
/**
- * Copy constructor
+ * Returns a copy of the current instance.
*/
- public TranslateOptions(TranslateOptions other) {
- this(other.mSourceLanguageCode, other.mTargetLanguageCode, other.mAllLanguages,
- other.mOptions[NEVER_LANGUAGE], other.mOptions[NEVER_DOMAIN],
- other.mOptions[ALWAYS_LANGUAGE], other.mTriggeredFromMenu, other.mOriginalOptions);
+ TranslateOptions copy() {
+ return new TranslateOptions(mSourceLanguageCode, mTargetLanguageCode, mAllLanguages,
+ mOptions[NEVER_LANGUAGE], mOptions[NEVER_DOMAIN], mOptions[ALWAYS_LANGUAGE],
+ mTriggeredFromMenu, mOriginalOptions);
}
public String sourceLanguageName() {

Powered by Google App Engine
This is Rietveld 408576698