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
This commit is contained in:
Fabrice Di Meglio
2014-10-15 19:00:35 -07:00
parent 886387373e
commit daef2e2b06
14 changed files with 43 additions and 61 deletions

View File

@@ -128,7 +128,7 @@
android:entries="@array/apn_protocol_entries" android:entries="@array/apn_protocol_entries"
android:entryValues="@array/apn_protocol_values" android:entryValues="@array/apn_protocol_values"
/> />
<CheckBoxPreference <SwitchPreference
android:title="@string/carrier_enabled" android:title="@string/carrier_enabled"
android:key="carrier_enabled" android:key="carrier_enabled"
android:enabled="false" android:enabled="false"

View File

@@ -97,7 +97,7 @@
android:key="game_controller_settings_category" android:key="game_controller_settings_category"
android:title="@string/game_controller_settings_category"> android:title="@string/game_controller_settings_category">
<CheckBoxPreference <SwitchPreference
android:key="vibrate_input_devices" android:key="vibrate_input_devices"
android:title="@string/vibrate_input_devices" android:title="@string/vibrate_input_devices"
android:summaryOn="@string/vibrate_input_devices_summary" android:summaryOn="@string/vibrate_input_devices_summary"

View File

@@ -77,7 +77,7 @@
android:targetClass="com.android.settings.wimax.WimaxSettings" /> android:targetClass="com.android.settings.wimax.WimaxSettings" />
</PreferenceScreen> </PreferenceScreen>
<CheckBoxPreference <SwitchPreference
android:key="toggle_nsd" android:key="toggle_nsd"
android:title="@string/nsd_quick_toggle_title" android:title="@string/nsd_quick_toggle_title"
android:summary="@string/nsd_quick_toggle_summary" android:summary="@string/nsd_quick_toggle_summary"

View File

@@ -23,7 +23,6 @@ import android.os.Handler;
import android.os.Message; import android.os.Message;
import android.os.SystemProperties; import android.os.SystemProperties;
import android.os.UserHandle; import android.os.UserHandle;
import android.preference.CheckBoxPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.SwitchPreference; import android.preference.SwitchPreference;
import android.provider.Settings; import android.provider.Settings;
@@ -59,12 +58,12 @@ public class AirplaneModeEnabler implements Preference.OnPreferenceChangeListene
} }
}; };
public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeCheckBoxPreference) { public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeSwitchPreference) {
mContext = context; mContext = context;
mSwitchPref = airplaneModeCheckBoxPreference; mSwitchPref = airplaneModeSwitchPreference;
airplaneModeCheckBoxPreference.setPersistent(false); airplaneModeSwitchPreference.setPersistent(false);
mPhoneStateReceiver = new PhoneStateIntentReceiver(mContext, mHandler); mPhoneStateReceiver = new PhoneStateIntentReceiver(mContext, mHandler);
mPhoneStateReceiver.notifyServiceState(EVENT_SERVICE_STATE_CHANGED); mPhoneStateReceiver.notifyServiceState(EVENT_SERVICE_STATE_CHANGED);

View File

@@ -32,6 +32,7 @@ import android.preference.ListPreference;
import android.preference.CheckBoxPreference; import android.preference.CheckBoxPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.PreferenceActivity; import android.preference.PreferenceActivity;
import android.preference.SwitchPreference;
import android.provider.Telephony; import android.provider.Telephony;
import android.telephony.TelephonyManager; import android.telephony.TelephonyManager;
import android.util.Log; import android.util.Log;
@@ -81,7 +82,7 @@ public class ApnEditor extends PreferenceActivity
private EditTextPreference mApnType; private EditTextPreference mApnType;
private ListPreference mProtocol; private ListPreference mProtocol;
private ListPreference mRoamingProtocol; private ListPreference mRoamingProtocol;
private CheckBoxPreference mCarrierEnabled; private SwitchPreference mCarrierEnabled;
private ListPreference mBearer; private ListPreference mBearer;
private ListPreference mMvnoType; private ListPreference mMvnoType;
private EditTextPreference mMvnoMatchData; private EditTextPreference mMvnoMatchData;
@@ -177,7 +178,7 @@ public class ApnEditor extends PreferenceActivity
mRoamingProtocol = (ListPreference) findPreference(KEY_ROAMING_PROTOCOL); mRoamingProtocol = (ListPreference) findPreference(KEY_ROAMING_PROTOCOL);
mRoamingProtocol.setOnPreferenceChangeListener(this); mRoamingProtocol.setOnPreferenceChangeListener(this);
mCarrierEnabled = (CheckBoxPreference) findPreference(KEY_CARRIER_ENABLED); mCarrierEnabled = (SwitchPreference) findPreference(KEY_CARRIER_ENABLED);
mBearer = (ListPreference) findPreference(KEY_BEARER); mBearer = (ListPreference) findPreference(KEY_BEARER);
mBearer.setOnPreferenceChangeListener(this); mBearer.setOnPreferenceChangeListener(this);

View File

@@ -21,18 +21,16 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.net.nsd.NsdManager; import android.net.nsd.NsdManager;
import android.preference.CheckBoxPreference;
import android.preference.Preference; 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. * NsdEnabler is a helper to manage network service discovery on/off checkbox state.
*/ */
public class NsdEnabler implements Preference.OnPreferenceChangeListener { public class NsdEnabler implements Preference.OnPreferenceChangeListener {
private final Context mContext; private final Context mContext;
private final CheckBoxPreference mCheckbox; private final SwitchPreference mSwitchPreference;
private final IntentFilter mIntentFilter; private final IntentFilter mIntentFilter;
private NsdManager mNsdManager; private NsdManager mNsdManager;
@@ -47,27 +45,27 @@ public class NsdEnabler implements Preference.OnPreferenceChangeListener {
} }
}; };
public NsdEnabler(Context context, CheckBoxPreference checkBoxPreference) { public NsdEnabler(Context context, SwitchPreference pref) {
mContext = context; mContext = context;
mCheckbox = checkBoxPreference; mSwitchPreference = pref;
mNsdManager = (NsdManager) mContext.getSystemService(Context.NSD_SERVICE); mNsdManager = (NsdManager) mContext.getSystemService(Context.NSD_SERVICE);
mIntentFilter = new IntentFilter(NsdManager.ACTION_NSD_STATE_CHANGED); mIntentFilter = new IntentFilter(NsdManager.ACTION_NSD_STATE_CHANGED);
} }
public void resume() { public void resume() {
mContext.registerReceiver(mReceiver, mIntentFilter); mContext.registerReceiver(mReceiver, mIntentFilter);
mCheckbox.setOnPreferenceChangeListener(this); mSwitchPreference.setOnPreferenceChangeListener(this);
} }
public void pause() { public void pause() {
mContext.unregisterReceiver(mReceiver); mContext.unregisterReceiver(mReceiver);
mCheckbox.setOnPreferenceChangeListener(null); mSwitchPreference.setOnPreferenceChangeListener(null);
} }
public boolean onPreferenceChange(Preference preference, Object value) { public boolean onPreferenceChange(Preference preference, Object value) {
final boolean desiredState = (Boolean) value; final boolean desiredState = (Boolean) value;
mCheckbox.setEnabled(false); mSwitchPreference.setEnabled(false);
mNsdManager.setEnabled(desiredState); mNsdManager.setEnabled(desiredState);
return false; return false;
} }
@@ -75,12 +73,12 @@ public class NsdEnabler implements Preference.OnPreferenceChangeListener {
private void handleNsdStateChanged(int newState) { private void handleNsdStateChanged(int newState) {
switch (newState) { switch (newState) {
case NsdManager.NSD_STATE_DISABLED: case NsdManager.NSD_STATE_DISABLED:
mCheckbox.setChecked(false); mSwitchPreference.setChecked(false);
mCheckbox.setEnabled(true); mSwitchPreference.setEnabled(true);
break; break;
case NsdManager.NSD_STATE_ENABLED: case NsdManager.NSD_STATE_ENABLED:
mCheckbox.setChecked(true); mSwitchPreference.setChecked(true);
mCheckbox.setEnabled(true); mSwitchPreference.setEnabled(true);
break; break;
} }
} }

View File

@@ -16,8 +16,6 @@
package com.android.settings; package com.android.settings;
import java.util.HashSet;
import android.app.Activity; import android.app.Activity;
import android.content.BroadcastReceiver; import android.content.BroadcastReceiver;
import android.content.Context; import android.content.Context;
@@ -27,8 +25,6 @@ import android.content.RestrictionsManager;
import android.os.Bundle; import android.os.Bundle;
import android.os.PersistableBundle; import android.os.PersistableBundle;
import android.os.UserManager; 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. * Base class for settings screens that should be pin protected when in restricted mode.

View File

@@ -35,7 +35,6 @@ import android.os.Bundle;
import android.os.SystemProperties; import android.os.SystemProperties;
import android.os.UserHandle; import android.os.UserHandle;
import android.os.UserManager; import android.os.UserManager;
import android.preference.CheckBoxPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener; import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.PreferenceScreen; import android.preference.PreferenceScreen;
@@ -262,7 +261,7 @@ public class WirelessSettings extends SettingsPreferenceFragment
mAirplaneModePreference = (SwitchPreference) findPreference(KEY_TOGGLE_AIRPLANE); mAirplaneModePreference = (SwitchPreference) findPreference(KEY_TOGGLE_AIRPLANE);
SwitchPreference nfc = (SwitchPreference) findPreference(KEY_TOGGLE_NFC); SwitchPreference nfc = (SwitchPreference) findPreference(KEY_TOGGLE_NFC);
PreferenceScreen androidBeam = (PreferenceScreen) findPreference(KEY_ANDROID_BEAM_SETTINGS); 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); mAirplaneModeEnabler = new AirplaneModeEnabler(activity, mAirplaneModePreference);
mNfcEnabler = new NfcEnabler(activity, nfc, androidBeam); mNfcEnabler = new NfcEnabler(activity, nfc, androidBeam);

View File

@@ -24,28 +24,23 @@ import android.content.ContentResolver;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.pm.ServiceInfo; import android.content.pm.ServiceInfo;
import android.content.res.Configuration; import android.content.res.Configuration;
import android.content.res.Resources;
import android.database.ContentObserver; import android.database.ContentObserver;
import android.hardware.input.InputDeviceIdentifier; import android.hardware.input.InputDeviceIdentifier;
import android.hardware.input.InputManager; import android.hardware.input.InputManager;
import android.hardware.input.KeyboardLayout; import android.hardware.input.KeyboardLayout;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.UserHandle;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference; import android.preference.ListPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener; import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceCategory; import android.preference.PreferenceCategory;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.preference.PreferenceScreen; import android.preference.PreferenceScreen;
import android.preference.SwitchPreference;
import android.provider.Settings; import android.provider.Settings;
import android.provider.Settings.System; import android.provider.Settings.System;
import android.speech.RecognitionService;
import android.speech.tts.TtsEngines; import android.speech.tts.TtsEngines;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.InputDevice; import android.view.InputDevice;
@@ -326,11 +321,11 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
getSystemService(Context.INPUT_METHOD_SERVICE); getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showInputMethodPicker(); imm.showInputMethodPicker();
} }
} else if (preference instanceof CheckBoxPreference) { } else if (preference instanceof SwitchPreference) {
final CheckBoxPreference chkPref = (CheckBoxPreference) preference; final SwitchPreference pref = (SwitchPreference) preference;
if (chkPref == mGameControllerCategory.findPreference("vibrate_input_devices")) { if (pref == mGameControllerCategory.findPreference("vibrate_input_devices")) {
System.putInt(getContentResolver(), Settings.System.VIBRATE_INPUT_DEVICES, System.putInt(getContentResolver(), Settings.System.VIBRATE_INPUT_DEVICES,
chkPref.isChecked() ? 1 : 0); pref.isChecked() ? 1 : 0);
return true; return true;
} }
} }
@@ -601,9 +596,9 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
if (haveInputDeviceWithVibrator()) { if (haveInputDeviceWithVibrator()) {
getPreferenceScreen().addPreference(mGameControllerCategory); getPreferenceScreen().addPreference(mGameControllerCategory);
CheckBoxPreference chkPref = (CheckBoxPreference) SwitchPreference pref = (SwitchPreference)
mGameControllerCategory.findPreference("vibrate_input_devices"); mGameControllerCategory.findPreference("vibrate_input_devices");
chkPref.setChecked(System.getInt(getContentResolver(), pref.setChecked(System.getInt(getContentResolver(),
Settings.System.VIBRATE_INPUT_DEVICES, 1) > 0); Settings.System.VIBRATE_INPUT_DEVICES, 1) > 0);
} else { } else {
getPreferenceScreen().removePreference(mGameControllerCategory); getPreferenceScreen().removePreference(mGameControllerCategory);

View File

@@ -22,11 +22,11 @@ import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.Message; import android.os.Message;
import android.preference.CheckBoxPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener; import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.preference.PreferenceScreen; import android.preference.PreferenceScreen;
import android.preference.SwitchPreference;
import android.provider.Settings; import android.provider.Settings;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
@@ -95,7 +95,7 @@ public class PaymentSettings extends SettingsPreferenceFragment implements
emptyImage.setVisibility(View.VISIBLE); emptyImage.setVisibility(View.VISIBLE);
getListView().setVisibility(View.GONE); getListView().setVisibility(View.GONE);
} else { } else {
CheckBoxPreference foreground = new CheckBoxPreference(getActivity()); SwitchPreference foreground = new SwitchPreference(getActivity());
boolean foregroundMode = mPaymentBackend.isForegroundMode(); boolean foregroundMode = mPaymentBackend.isForegroundMode();
foreground.setPersistent(false); foreground.setPersistent(false);
foreground.setTitle(getString(R.string.nfc_payment_favor_foreground)); foreground.setTitle(getString(R.string.nfc_payment_favor_foreground));
@@ -231,7 +231,7 @@ public class PaymentSettings extends SettingsPreferenceFragment implements
@Override @Override
public boolean onPreferenceChange(Preference preference, Object newValue) { public boolean onPreferenceChange(Preference preference, Object newValue) {
if (preference instanceof CheckBoxPreference) { if (preference instanceof SwitchPreference) {
mPaymentBackend.setForegroundMode(((Boolean) newValue).booleanValue()); mPaymentBackend.setForegroundMode(((Boolean) newValue).booleanValue());
return true; return true;
} else { } else {

View File

@@ -22,7 +22,6 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.os.Bundle; import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference; import android.preference.ListPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener; import android.preference.Preference.OnPreferenceChangeListener;

View File

@@ -31,9 +31,6 @@ import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo;
import android.content.res.Resources; import android.content.res.Resources;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.ColorFilter;
import android.graphics.ColorMatrix;
import android.graphics.ColorMatrixColorFilter;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.os.AsyncTask; import android.os.AsyncTask;
import android.os.Bundle; import android.os.Bundle;
@@ -41,7 +38,6 @@ import android.os.RemoteException;
import android.os.ServiceManager; import android.os.ServiceManager;
import android.os.UserHandle; import android.os.UserHandle;
import android.os.UserManager; import android.os.UserManager;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference; import android.preference.ListPreference;
import android.preference.MultiSelectListPreference; import android.preference.MultiSelectListPreference;
import android.preference.Preference; import android.preference.Preference;
@@ -929,10 +925,10 @@ public class AppRestrictionsFragment extends SettingsPreferenceFragment implemen
Preference p = null; Preference p = null;
switch (entry.getType()) { switch (entry.getType()) {
case RestrictionEntry.TYPE_BOOLEAN: case RestrictionEntry.TYPE_BOOLEAN:
p = new CheckBoxPreference(context); p = new SwitchPreference(context);
p.setTitle(entry.getTitle()); p.setTitle(entry.getTitle());
p.setSummary(entry.getDescription()); p.setSummary(entry.getDescription());
((CheckBoxPreference)p).setChecked(entry.getSelectedState()); ((SwitchPreference)p).setChecked(entry.getSelectedState());
break; break;
case RestrictionEntry.TYPE_CHOICE: case RestrictionEntry.TYPE_CHOICE:
case RestrictionEntry.TYPE_CHOICE_LEVEL: case RestrictionEntry.TYPE_CHOICE_LEVEL:

View File

@@ -39,12 +39,12 @@ import android.net.wifi.WpsInfo;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.Looper; import android.os.Looper;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference; import android.preference.ListPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.PreferenceCategory; import android.preference.PreferenceCategory;
import android.preference.PreferenceGroup; import android.preference.PreferenceGroup;
import android.preference.PreferenceScreen; import android.preference.PreferenceScreen;
import android.preference.SwitchPreference;
import android.provider.Settings; import android.provider.Settings;
import android.util.Slog; import android.util.Slog;
import android.util.TypedValue; import android.util.TypedValue;
@@ -360,7 +360,7 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment {
} }
// switch for Listen Mode // switch for Listen Mode
CheckBoxPreference cbp = new CheckBoxPreference(getActivity()) { SwitchPreference pref = new SwitchPreference(getActivity()) {
@Override @Override
protected void onClick() { protected void onClick() {
mListen = !mListen; mListen = !mListen;
@@ -368,12 +368,12 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment {
setChecked(mListen); setChecked(mListen);
} }
}; };
cbp.setTitle(R.string.wifi_display_listen_mode); pref.setTitle(R.string.wifi_display_listen_mode);
cbp.setChecked(mListen); pref.setChecked(mListen);
mCertCategory.addPreference(cbp); mCertCategory.addPreference(pref);
// switch for Autonomous GO // switch for Autonomous GO
cbp = new CheckBoxPreference(getActivity()) { pref = new SwitchPreference(getActivity()) {
@Override @Override
protected void onClick() { protected void onClick() {
mAutoGO = !mAutoGO; mAutoGO = !mAutoGO;
@@ -385,9 +385,9 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment {
setChecked(mAutoGO); setChecked(mAutoGO);
} }
}; };
cbp.setTitle(R.string.wifi_display_autonomous_go); pref.setTitle(R.string.wifi_display_autonomous_go);
cbp.setChecked(mAutoGO); pref.setChecked(mAutoGO);
mCertCategory.addPreference(cbp); mCertCategory.addPreference(pref);
// Drop down list for choosing WPS method (PBC/KEYPAD/DISPLAY) // Drop down list for choosing WPS method (PBC/KEYPAD/DISPLAY)
ListPreference lp = new ListPreference(getActivity()) { ListPreference lp = new ListPreference(getActivity()) {

View File

@@ -29,7 +29,6 @@ import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager; import android.net.wifi.WifiManager;
import android.net.wifi.WpsInfo; import android.net.wifi.WpsInfo;
import android.os.Bundle; import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference; import android.preference.ListPreference;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener; import android.preference.Preference.OnPreferenceClickListener;