Index: chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateInfoBar.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateInfoBar.java b/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateInfoBar.java |
index 7e4f68b1bdb235da218cb05efae92d4c5d72b36a..5d462e4d85ab9bdb0f502e7934775a40f803b1d5 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateInfoBar.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/infobar/TranslateInfoBar.java |
@@ -11,7 +11,9 @@ import android.text.SpannableStringBuilder; |
import android.text.TextUtils; |
import android.text.style.ClickableSpan; |
import android.view.View; |
+import android.view.ViewGroup; |
import android.widget.CheckBox; |
+import android.widget.Switch; |
import org.chromium.base.annotations.CalledByNative; |
import org.chromium.chrome.R; |
@@ -189,9 +191,9 @@ public class TranslateInfoBar extends InfoBar implements SubPanelListener { |
if (getInfoBarType() == AFTER_TRANSLATE_INFOBAR |
&& !needsAlwaysPanel() |
&& !mOptions.triggeredFromMenu()) { |
- // Long always translate version |
- TranslateCheckBox checkBox = new TranslateCheckBox(context, mOptions, this); |
- layout.setCustomContent(checkBox); |
+ // Fully expanded version of the "Always Translate" InfoBar. |
+ ViewGroup subLayout = TranslateAlwaysPanel.createAlwaysToggle(context, mOptions); |
+ layout.setCustomContent(subLayout); |
} |
} |
@@ -230,6 +232,13 @@ public class TranslateInfoBar extends InfoBar implements SubPanelListener { |
public void onOptionsChanged() { |
if (mNativeTranslateInfoBarPtr == 0) return; |
+ // Handle the "Always Translate" checkbox. |
+ if (getInfoBarType() == AFTER_TRANSLATE_INFOBAR) { |
+ Switch alwaysSwitch = |
+ (Switch) getContentWrapper().findViewById(R.id.translate_infobar_always_toggle); |
+ mOptions.toggleAlwaysTranslateLanguageState(alwaysSwitch.isChecked()); |
+ } |
+ |
if (mOptions.optionsChanged()) { |
nativeApplyTranslateOptions(mNativeTranslateInfoBarPtr, mOptions.sourceLanguageIndex(), |
mOptions.targetLanguageIndex(), mOptions.alwaysTranslateLanguageState(), |