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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/preferences/website/TranslatePreferences.java

Issue 850813002: Upstream Site Settings. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@location_settings_singleton
Patch Set: use findbugs annotations; fix test Created 5 years, 11 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/preferences/website/TranslatePreferences.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/TranslatePreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/TranslatePreferences.java
new file mode 100644
index 0000000000000000000000000000000000000000..e26afccce05e4c6bf88c5a6b05659695b2548db6
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/TranslatePreferences.java
@@ -0,0 +1,94 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.preferences.website;
+
+import android.content.Context;
+import android.os.Bundle;
+import android.preference.Preference;
+import android.preference.Preference.OnPreferenceChangeListener;
+import android.preference.Preference.OnPreferenceClickListener;
+import android.preference.PreferenceFragment;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.widget.Toast;
+
+import org.chromium.chrome.R;
+import org.chromium.chrome.browser.preferences.ButtonPreference;
+import org.chromium.chrome.browser.preferences.ChromeSwitchPreference;
+import org.chromium.chrome.browser.preferences.ManagedPreferenceDelegate;
+import org.chromium.chrome.browser.preferences.PrefServiceBridge;
+import org.chromium.chrome.browser.preferences.Preferences;
+
+/**
+ * Fragment to keep track of the translate preferences.
+ */
+public class TranslatePreferences extends PreferenceFragment {
+
+ public static final String PREF_TRANSLATE_SWITCH = "translate_switch";
+ public static final String PREF_RESET_TRANSLATE_BUTTON = "reset_translate_button";
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ addPreferencesFromResource(R.xml.translate_preferences);
+ getActivity().setTitle(R.string.google_translate);
+ setHasOptionsMenu(true);
+
+ final Context context = getActivity();
+ if (context == null) return;
+
+ ChromeSwitchPreference translateSwitch =
+ (ChromeSwitchPreference) findPreference(PREF_TRANSLATE_SWITCH);
+
+ boolean isTranslateEnabled = PrefServiceBridge.getInstance().isTranslateEnabled();
+ translateSwitch.setChecked(isTranslateEnabled);
+
+ translateSwitch.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ PrefServiceBridge.getInstance().setTranslateEnabled((boolean) newValue);
+ return true;
+ }
+ });
+ translateSwitch.setManagedPreferenceDelegate(new ManagedPreferenceDelegate() {
+ @Override
+ public boolean isPreferenceControlledByPolicy(Preference preference) {
+ return PrefServiceBridge.getInstance().isTranslateManaged();
+ }
+ });
+
+ ButtonPreference resetTranslateButton = (ButtonPreference)
+ findPreference(PREF_RESET_TRANSLATE_BUTTON);
+
+ resetTranslateButton.setOnPreferenceClickListener(new OnPreferenceClickListener(){
+ @Override
+ public boolean onPreferenceClick(Preference preference) {
+ PrefServiceBridge.getInstance().resetTranslateDefaults();
+ Toast.makeText(getActivity(), getString(
+ R.string.translate_prefs_toast_description),
+ Toast.LENGTH_SHORT).show();
+ return true;
+ }
+ });
+
+ }
+
+ @Override
+ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+ menu.clear();
+ menu.add(Menu.NONE, R.id.menu_id_translate_help, Menu.NONE, R.string.menu_help);
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ int itemId = item.getItemId();
+ if (itemId == R.id.menu_id_translate_help) {
+ ((Preferences) getActivity()).showGoogleTranslateHelp();
+ return true;
+ }
+ return false;
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698