Update NFC to use a SwitchPreference

- do the switch

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

Change-Id: I78ab5b86fe6b541f9f3dc3d77115fde656d40c80
diff --git a/res/xml/wireless_settings.xml b/res/xml/wireless_settings.xml
index a2ddcdb..f30e393 100644
--- a/res/xml/wireless_settings.xml
+++ b/res/xml/wireless_settings.xml
@@ -32,7 +32,7 @@
         android:summary="%s"
         android:persistent="false" />
 
-    <CheckBoxPreference
+    <SwitchPreference
         android:key="toggle_nfc"
         android:title="@string/nfc_quick_toggle_title"
         android:summary="@string/nfc_quick_toggle_summary"
diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java
index b63a5a1..b256f94 100644
--- a/src/com/android/settings/WirelessSettings.java
+++ b/src/com/android/settings/WirelessSettings.java
@@ -256,7 +256,7 @@
 
         final Activity activity = getActivity();
         mAirplaneModePreference = (SwitchPreference) findPreference(KEY_TOGGLE_AIRPLANE);
-        CheckBoxPreference nfc = (CheckBoxPreference) findPreference(KEY_TOGGLE_NFC);
+        SwitchPreference nfc = (SwitchPreference) findPreference(KEY_TOGGLE_NFC);
         PreferenceScreen androidBeam = (PreferenceScreen) findPreference(KEY_ANDROID_BEAM_SETTINGS);
         CheckBoxPreference nsd = (CheckBoxPreference) findPreference(KEY_TOGGLE_NSD);
 
diff --git a/src/com/android/settings/nfc/NfcEnabler.java b/src/com/android/settings/nfc/NfcEnabler.java
index 018b8ae..2fb95e4 100644
--- a/src/com/android/settings/nfc/NfcEnabler.java
+++ b/src/com/android/settings/nfc/NfcEnabler.java
@@ -21,10 +21,10 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.nfc.NfcAdapter;
-import android.preference.CheckBoxPreference;
 import android.preference.Preference;
 import android.preference.PreferenceScreen;
 
+import android.preference.SwitchPreference;
 import com.android.settings.R;
 
 /**
@@ -34,7 +34,7 @@
  */
 public class NfcEnabler implements Preference.OnPreferenceChangeListener {
     private final Context mContext;
-    private final CheckBoxPreference mCheckbox;
+    private final SwitchPreference mSwitch;
     private final PreferenceScreen mAndroidBeam;
     private final NfcAdapter mNfcAdapter;
     private final IntentFilter mIntentFilter;
@@ -50,16 +50,16 @@
         }
     };
 
-    public NfcEnabler(Context context, CheckBoxPreference checkBoxPreference,
+    public NfcEnabler(Context context, SwitchPreference switchPreference,
             PreferenceScreen androidBeam) {
         mContext = context;
-        mCheckbox = checkBoxPreference;
+        mSwitch = switchPreference;
         mAndroidBeam = androidBeam;
         mNfcAdapter = NfcAdapter.getDefaultAdapter(context);
 
         if (mNfcAdapter == null) {
             // NFC is not supported
-            mCheckbox.setEnabled(false);
+            mSwitch.setEnabled(false);
             mAndroidBeam.setEnabled(false);
             mIntentFilter = null;
             return;
@@ -73,7 +73,7 @@
         }
         handleNfcStateChanged(mNfcAdapter.getAdapterState());
         mContext.registerReceiver(mReceiver, mIntentFilter);
-        mCheckbox.setOnPreferenceChangeListener(this);
+        mSwitch.setOnPreferenceChangeListener(this);
     }
 
     public void pause() {
@@ -81,14 +81,14 @@
             return;
         }
         mContext.unregisterReceiver(mReceiver);
-        mCheckbox.setOnPreferenceChangeListener(null);
+        mSwitch.setOnPreferenceChangeListener(null);
     }
 
     public boolean onPreferenceChange(Preference preference, Object value) {
         // Turn NFC on/off
 
         final boolean desiredState = (Boolean) value;
-        mCheckbox.setEnabled(false);
+        mSwitch.setEnabled(false);
 
         if (desiredState) {
             mNfcAdapter.enable();
@@ -102,14 +102,14 @@
     private void handleNfcStateChanged(int newState) {
         switch (newState) {
         case NfcAdapter.STATE_OFF:
-            mCheckbox.setChecked(false);
-            mCheckbox.setEnabled(true);
+            mSwitch.setChecked(false);
+            mSwitch.setEnabled(true);
             mAndroidBeam.setEnabled(false);
             mAndroidBeam.setSummary(R.string.android_beam_disabled_summary);
             break;
         case NfcAdapter.STATE_ON:
-            mCheckbox.setChecked(true);
-            mCheckbox.setEnabled(true);
+            mSwitch.setChecked(true);
+            mSwitch.setEnabled(true);
             mAndroidBeam.setEnabled(true);
             if (mNfcAdapter.isNdefPushEnabled()) {
                 mAndroidBeam.setSummary(R.string.android_beam_on_summary);
@@ -118,13 +118,13 @@
             }
             break;
         case NfcAdapter.STATE_TURNING_ON:
-            mCheckbox.setChecked(true);
-            mCheckbox.setEnabled(false);
+            mSwitch.setChecked(true);
+            mSwitch.setEnabled(false);
             mAndroidBeam.setEnabled(false);
             break;
         case NfcAdapter.STATE_TURNING_OFF:
-            mCheckbox.setChecked(false);
-            mCheckbox.setEnabled(false);
+            mSwitch.setChecked(false);
+            mSwitch.setEnabled(false);
             mAndroidBeam.setEnabled(false);
             break;
         }