Fix bug #15730311 Checkboxes on R side should update to Quantum/Material on/off switch

Per UX request, convert more CheckBoxes to Switches

Change-Id: I04712bce4c0a54516d9ecedbb554f403fd6dd9e7
diff --git a/src/com/android/settings/AirplaneModeEnabler.java b/src/com/android/settings/AirplaneModeEnabler.java
index 4ce5198..5b8ad0d 100644
--- a/src/com/android/settings/AirplaneModeEnabler.java
+++ b/src/com/android/settings/AirplaneModeEnabler.java
@@ -23,7 +23,6 @@
 import android.os.Message;
 import android.os.SystemProperties;
 import android.os.UserHandle;
-import android.preference.CheckBoxPreference;
 import android.preference.Preference;
 import android.preference.SwitchPreference;
 import android.provider.Settings;
@@ -59,12 +58,12 @@
         }
     };
 
-    public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeCheckBoxPreference) {
+    public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeSwitchPreference) {
         
         mContext = context;
-        mSwitchPref = airplaneModeCheckBoxPreference;
-        
-        airplaneModeCheckBoxPreference.setPersistent(false);
+        mSwitchPref = airplaneModeSwitchPreference;
+
+        airplaneModeSwitchPreference.setPersistent(false);
     
         mPhoneStateReceiver = new PhoneStateIntentReceiver(mContext, mHandler);
         mPhoneStateReceiver.notifyServiceState(EVENT_SERVICE_STATE_CHANGED);
diff --git a/src/com/android/settings/ApnEditor.java b/src/com/android/settings/ApnEditor.java
index 8cfee92..6d88c50 100644
--- a/src/com/android/settings/ApnEditor.java
+++ b/src/com/android/settings/ApnEditor.java
@@ -32,6 +32,7 @@
 import android.preference.CheckBoxPreference;
 import android.preference.Preference;
 import android.preference.PreferenceActivity;
+import android.preference.SwitchPreference;
 import android.provider.Telephony;
 import android.telephony.TelephonyManager;
 import android.util.Log;
@@ -81,7 +82,7 @@
     private EditTextPreference mApnType;
     private ListPreference mProtocol;
     private ListPreference mRoamingProtocol;
-    private CheckBoxPreference mCarrierEnabled;
+    private SwitchPreference mCarrierEnabled;
     private ListPreference mBearer;
     private ListPreference mMvnoType;
     private EditTextPreference mMvnoMatchData;
@@ -177,7 +178,7 @@
         mRoamingProtocol = (ListPreference) findPreference(KEY_ROAMING_PROTOCOL);
         mRoamingProtocol.setOnPreferenceChangeListener(this);
 
-        mCarrierEnabled = (CheckBoxPreference) findPreference(KEY_CARRIER_ENABLED);
+        mCarrierEnabled = (SwitchPreference) findPreference(KEY_CARRIER_ENABLED);
 
         mBearer = (ListPreference) findPreference(KEY_BEARER);
         mBearer.setOnPreferenceChangeListener(this);
diff --git a/src/com/android/settings/NsdEnabler.java b/src/com/android/settings/NsdEnabler.java
index acdf92e..f638bc3 100644
--- a/src/com/android/settings/NsdEnabler.java
+++ b/src/com/android/settings/NsdEnabler.java
@@ -21,18 +21,16 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.net.nsd.NsdManager;
-import android.preference.CheckBoxPreference;
 import android.preference.Preference;
-import android.preference.PreferenceScreen;
 
-import com.android.settings.R;
+import android.preference.SwitchPreference;
 
 /**
  * NsdEnabler is a helper to manage network service discovery on/off checkbox state.
  */
 public class NsdEnabler implements Preference.OnPreferenceChangeListener {
     private final Context mContext;
-    private final CheckBoxPreference mCheckbox;
+    private final SwitchPreference mSwitchPreference;
     private final IntentFilter mIntentFilter;
     private NsdManager mNsdManager;
 
@@ -47,27 +45,27 @@
         }
     };
 
-    public NsdEnabler(Context context, CheckBoxPreference checkBoxPreference) {
+    public NsdEnabler(Context context, SwitchPreference pref) {
         mContext = context;
-        mCheckbox = checkBoxPreference;
+        mSwitchPreference = pref;
         mNsdManager = (NsdManager) mContext.getSystemService(Context.NSD_SERVICE);
         mIntentFilter = new IntentFilter(NsdManager.ACTION_NSD_STATE_CHANGED);
     }
 
     public void resume() {
         mContext.registerReceiver(mReceiver, mIntentFilter);
-        mCheckbox.setOnPreferenceChangeListener(this);
+        mSwitchPreference.setOnPreferenceChangeListener(this);
     }
 
     public void pause() {
         mContext.unregisterReceiver(mReceiver);
-        mCheckbox.setOnPreferenceChangeListener(null);
+        mSwitchPreference.setOnPreferenceChangeListener(null);
     }
 
     public boolean onPreferenceChange(Preference preference, Object value) {
 
         final boolean desiredState = (Boolean) value;
-        mCheckbox.setEnabled(false);
+        mSwitchPreference.setEnabled(false);
         mNsdManager.setEnabled(desiredState);
         return false;
     }
@@ -75,12 +73,12 @@
     private void handleNsdStateChanged(int newState) {
         switch (newState) {
             case NsdManager.NSD_STATE_DISABLED:
-                mCheckbox.setChecked(false);
-                mCheckbox.setEnabled(true);
+                mSwitchPreference.setChecked(false);
+                mSwitchPreference.setEnabled(true);
                 break;
             case NsdManager.NSD_STATE_ENABLED:
-                mCheckbox.setChecked(true);
-                mCheckbox.setEnabled(true);
+                mSwitchPreference.setChecked(true);
+                mSwitchPreference.setEnabled(true);
                 break;
         }
     }
diff --git a/src/com/android/settings/RestrictedSettingsFragment.java b/src/com/android/settings/RestrictedSettingsFragment.java
index 7d7599f..64e1e3f 100644
--- a/src/com/android/settings/RestrictedSettingsFragment.java
+++ b/src/com/android/settings/RestrictedSettingsFragment.java
@@ -16,8 +16,6 @@
 
 package com.android.settings;
 
-import java.util.HashSet;
-
 import android.app.Activity;
 import android.content.BroadcastReceiver;
 import android.content.Context;
@@ -27,8 +25,6 @@
 import android.os.Bundle;
 import android.os.PersistableBundle;
 import android.os.UserManager;
-import android.preference.CheckBoxPreference;
-import android.preference.Preference;
 
 /**
  * Base class for settings screens that should be pin protected when in restricted mode.
diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java
index 9cb3d72..d142412 100644
--- a/src/com/android/settings/WirelessSettings.java
+++ b/src/com/android/settings/WirelessSettings.java
@@ -35,7 +35,6 @@
 import android.os.SystemProperties;
 import android.os.UserHandle;
 import android.os.UserManager;
-import android.preference.CheckBoxPreference;
 import android.preference.Preference;
 import android.preference.Preference.OnPreferenceChangeListener;
 import android.preference.PreferenceScreen;
@@ -262,7 +261,7 @@
         mAirplaneModePreference = (SwitchPreference) findPreference(KEY_TOGGLE_AIRPLANE);
         SwitchPreference nfc = (SwitchPreference) findPreference(KEY_TOGGLE_NFC);
         PreferenceScreen androidBeam = (PreferenceScreen) findPreference(KEY_ANDROID_BEAM_SETTINGS);
-        CheckBoxPreference nsd = (CheckBoxPreference) findPreference(KEY_TOGGLE_NSD);
+        SwitchPreference nsd = (SwitchPreference) findPreference(KEY_TOGGLE_NSD);
 
         mAirplaneModeEnabler = new AirplaneModeEnabler(activity, mAirplaneModePreference);
         mNfcEnabler = new NfcEnabler(activity, nfc, androidBeam);
diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
index bae9dbc..c529f34 100644
--- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
+++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
@@ -24,28 +24,23 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.SharedPreferences;
-import android.content.pm.PackageManager;
-import android.content.pm.ResolveInfo;
 import android.content.pm.ServiceInfo;
 import android.content.res.Configuration;
-import android.content.res.Resources;
 import android.database.ContentObserver;
 import android.hardware.input.InputDeviceIdentifier;
 import android.hardware.input.InputManager;
 import android.hardware.input.KeyboardLayout;
 import android.os.Bundle;
 import android.os.Handler;
-import android.os.UserHandle;
-import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.Preference;
 import android.preference.Preference.OnPreferenceClickListener;
 import android.preference.PreferenceCategory;
 import android.preference.PreferenceManager;
 import android.preference.PreferenceScreen;
+import android.preference.SwitchPreference;
 import android.provider.Settings;
 import android.provider.Settings.System;
-import android.speech.RecognitionService;
 import android.speech.tts.TtsEngines;
 import android.text.TextUtils;
 import android.view.InputDevice;
@@ -326,11 +321,11 @@
                         getSystemService(Context.INPUT_METHOD_SERVICE);
                 imm.showInputMethodPicker();
             }
-        } else if (preference instanceof CheckBoxPreference) {
-            final CheckBoxPreference chkPref = (CheckBoxPreference) preference;
-            if (chkPref == mGameControllerCategory.findPreference("vibrate_input_devices")) {
+        } else if (preference instanceof SwitchPreference) {
+            final SwitchPreference pref = (SwitchPreference) preference;
+            if (pref == mGameControllerCategory.findPreference("vibrate_input_devices")) {
                 System.putInt(getContentResolver(), Settings.System.VIBRATE_INPUT_DEVICES,
-                        chkPref.isChecked() ? 1 : 0);
+                        pref.isChecked() ? 1 : 0);
                 return true;
             }
         }
@@ -601,9 +596,9 @@
         if (haveInputDeviceWithVibrator()) {
             getPreferenceScreen().addPreference(mGameControllerCategory);
 
-            CheckBoxPreference chkPref = (CheckBoxPreference)
+            SwitchPreference pref = (SwitchPreference)
                     mGameControllerCategory.findPreference("vibrate_input_devices");
-            chkPref.setChecked(System.getInt(getContentResolver(),
+            pref.setChecked(System.getInt(getContentResolver(),
                     Settings.System.VIBRATE_INPUT_DEVICES, 1) > 0);
         } else {
             getPreferenceScreen().removePreference(mGameControllerCategory);
diff --git a/src/com/android/settings/nfc/PaymentSettings.java b/src/com/android/settings/nfc/PaymentSettings.java
index df4e396..02254dd 100644
--- a/src/com/android/settings/nfc/PaymentSettings.java
+++ b/src/com/android/settings/nfc/PaymentSettings.java
@@ -22,11 +22,11 @@
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
-import android.preference.CheckBoxPreference;
 import android.preference.Preference;
 import android.preference.Preference.OnPreferenceChangeListener;
 import android.preference.PreferenceManager;
 import android.preference.PreferenceScreen;
+import android.preference.SwitchPreference;
 import android.provider.Settings;
 import android.text.TextUtils;
 import android.util.Log;
@@ -95,7 +95,7 @@
             emptyImage.setVisibility(View.VISIBLE);
             getListView().setVisibility(View.GONE);
         } else {
-            CheckBoxPreference foreground = new CheckBoxPreference(getActivity());
+            SwitchPreference foreground = new SwitchPreference(getActivity());
             boolean foregroundMode = mPaymentBackend.isForegroundMode();
             foreground.setPersistent(false);
             foreground.setTitle(getString(R.string.nfc_payment_favor_foreground));
@@ -231,7 +231,7 @@
 
     @Override
     public boolean onPreferenceChange(Preference preference, Object newValue) {
-        if (preference instanceof CheckBoxPreference) {
+        if (preference instanceof SwitchPreference) {
             mPaymentBackend.setForegroundMode(((Boolean) newValue).booleanValue());
             return true;
         } else {
diff --git a/src/com/android/settings/tts/TtsEngineSettingsFragment.java b/src/com/android/settings/tts/TtsEngineSettingsFragment.java
index 2449353..542de41 100644
--- a/src/com/android/settings/tts/TtsEngineSettingsFragment.java
+++ b/src/com/android/settings/tts/TtsEngineSettingsFragment.java
@@ -22,7 +22,6 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.os.Bundle;
-import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.Preference;
 import android.preference.Preference.OnPreferenceChangeListener;
diff --git a/src/com/android/settings/users/AppRestrictionsFragment.java b/src/com/android/settings/users/AppRestrictionsFragment.java
index 9eee4ac..6fa5a79 100644
--- a/src/com/android/settings/users/AppRestrictionsFragment.java
+++ b/src/com/android/settings/users/AppRestrictionsFragment.java
@@ -31,9 +31,6 @@
 import android.content.pm.ResolveInfo;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
-import android.graphics.ColorFilter;
-import android.graphics.ColorMatrix;
-import android.graphics.ColorMatrixColorFilter;
 import android.graphics.drawable.Drawable;
 import android.os.AsyncTask;
 import android.os.Bundle;
@@ -41,7 +38,6 @@
 import android.os.ServiceManager;
 import android.os.UserHandle;
 import android.os.UserManager;
-import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.MultiSelectListPreference;
 import android.preference.Preference;
@@ -929,10 +925,10 @@
             Preference p = null;
             switch (entry.getType()) {
             case RestrictionEntry.TYPE_BOOLEAN:
-                p = new CheckBoxPreference(context);
+                p = new SwitchPreference(context);
                 p.setTitle(entry.getTitle());
                 p.setSummary(entry.getDescription());
-                ((CheckBoxPreference)p).setChecked(entry.getSelectedState());
+                ((SwitchPreference)p).setChecked(entry.getSelectedState());
                 break;
             case RestrictionEntry.TYPE_CHOICE:
             case RestrictionEntry.TYPE_CHOICE_LEVEL:
diff --git a/src/com/android/settings/wfd/WifiDisplaySettings.java b/src/com/android/settings/wfd/WifiDisplaySettings.java
index c3f22a7..fdaa042 100755
--- a/src/com/android/settings/wfd/WifiDisplaySettings.java
+++ b/src/com/android/settings/wfd/WifiDisplaySettings.java
@@ -39,12 +39,12 @@
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Looper;
-import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.Preference;
 import android.preference.PreferenceCategory;
 import android.preference.PreferenceGroup;
 import android.preference.PreferenceScreen;
+import android.preference.SwitchPreference;
 import android.provider.Settings;
 import android.util.Slog;
 import android.util.TypedValue;
@@ -360,7 +360,7 @@
         }
 
         // switch for Listen Mode
-        CheckBoxPreference cbp = new CheckBoxPreference(getActivity()) {
+        SwitchPreference pref = new SwitchPreference(getActivity()) {
             @Override
             protected void onClick() {
                 mListen = !mListen;
@@ -368,12 +368,12 @@
                 setChecked(mListen);
             }
         };
-        cbp.setTitle(R.string.wifi_display_listen_mode);
-        cbp.setChecked(mListen);
-        mCertCategory.addPreference(cbp);
+        pref.setTitle(R.string.wifi_display_listen_mode);
+        pref.setChecked(mListen);
+        mCertCategory.addPreference(pref);
 
         // switch for Autonomous GO
-        cbp = new CheckBoxPreference(getActivity()) {
+        pref = new SwitchPreference(getActivity()) {
             @Override
             protected void onClick() {
                 mAutoGO = !mAutoGO;
@@ -385,9 +385,9 @@
                 setChecked(mAutoGO);
             }
         };
-        cbp.setTitle(R.string.wifi_display_autonomous_go);
-        cbp.setChecked(mAutoGO);
-        mCertCategory.addPreference(cbp);
+        pref.setTitle(R.string.wifi_display_autonomous_go);
+        pref.setChecked(mAutoGO);
+        mCertCategory.addPreference(pref);
 
         // Drop down list for choosing WPS method (PBC/KEYPAD/DISPLAY)
         ListPreference lp = new ListPreference(getActivity()) {
diff --git a/src/com/android/settings/wifi/AdvancedWifiSettings.java b/src/com/android/settings/wifi/AdvancedWifiSettings.java
index bda13ff..29056d7 100644
--- a/src/com/android/settings/wifi/AdvancedWifiSettings.java
+++ b/src/com/android/settings/wifi/AdvancedWifiSettings.java
@@ -29,7 +29,6 @@
 import android.net.wifi.WifiManager;
 import android.net.wifi.WpsInfo;
 import android.os.Bundle;
-import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.Preference;
 import android.preference.Preference.OnPreferenceClickListener;