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:entryValues="@array/apn_protocol_values"
/>
<CheckBoxPreference
<SwitchPreference
android:title="@string/carrier_enabled"
android:key="carrier_enabled"
android:enabled="false"

View File

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

View File

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

View File

@@ -23,7 +23,6 @@ import android.os.Handler;
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 class AirplaneModeEnabler implements Preference.OnPreferenceChangeListene
}
};
public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeCheckBoxPreference) {
public AirplaneModeEnabler(Context context, SwitchPreference airplaneModeSwitchPreference) {
mContext = context;
mSwitchPref = airplaneModeCheckBoxPreference;
mSwitchPref = airplaneModeSwitchPreference;
airplaneModeCheckBoxPreference.setPersistent(false);
airplaneModeSwitchPreference.setPersistent(false);
mPhoneStateReceiver = new PhoneStateIntentReceiver(mContext, mHandler);
mPhoneStateReceiver.notifyServiceState(EVENT_SERVICE_STATE_CHANGED);

View File

@@ -32,6 +32,7 @@ import android.preference.ListPreference;
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 @@ public class ApnEditor extends PreferenceActivity
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 @@ public class ApnEditor extends PreferenceActivity
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);

View File

@@ -21,18 +21,16 @@ import android.content.Context;
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 class NsdEnabler implements Preference.OnPreferenceChangeListener {
}
};
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 @@ public class NsdEnabler implements Preference.OnPreferenceChangeListener {
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;
}
}

View File

@@ -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.content.RestrictionsManager;
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.

View File

@@ -35,7 +35,6 @@ import android.os.Bundle;
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 @@ public class WirelessSettings extends SettingsPreferenceFragment
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);

View File

@@ -24,28 +24,23 @@ import android.content.ContentResolver;
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 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
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 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment
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);

View File

@@ -22,11 +22,11 @@ import android.net.Uri;
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 @@ public class PaymentSettings extends SettingsPreferenceFragment implements
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 @@ public class PaymentSettings extends SettingsPreferenceFragment implements
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
if (preference instanceof CheckBoxPreference) {
if (preference instanceof SwitchPreference) {
mPaymentBackend.setForegroundMode(((Boolean) newValue).booleanValue());
return true;
} else {

View File

@@ -22,7 +22,6 @@ import android.content.Context;
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;

View File

@@ -31,9 +31,6 @@ import android.content.pm.PackageManager.NameNotFoundException;
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.RemoteException;
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 @@ public class AppRestrictionsFragment extends SettingsPreferenceFragment implemen
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:

View File

@@ -39,12 +39,12 @@ import android.net.wifi.WpsInfo;
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 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment {
}
// switch for Listen Mode
CheckBoxPreference cbp = new CheckBoxPreference(getActivity()) {
SwitchPreference pref = new SwitchPreference(getActivity()) {
@Override
protected void onClick() {
mListen = !mListen;
@@ -368,12 +368,12 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment {
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 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment {
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()) {

View File

@@ -29,7 +29,6 @@ import android.net.wifi.WifiInfo;
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;