private WifiManager mWifiManager;
private SwitchBar mSwitchBar;
+ private Switch mEnabledSwitch;
private boolean mLastEnabledState;
private boolean mHaveDebugSettings;
private boolean mDontPokeProperties;
final SettingsActivity activity = (SettingsActivity) getActivity();
mSwitchBar = activity.getSwitchBar();
+ mEnabledSwitch = mSwitchBar.getSwitch();
if (mUnavailable) {
- mSwitchBar.setSwitchEnabled(false);
+ mEnabledSwitch.setEnabled(false);
return;
}
}
final ContentResolver cr = getActivity().getContentResolver();
mLastEnabledState = Settings.Global.getInt(cr,
Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 0) != 0;
- mSwitchBar.setSwitchChecked(mLastEnabledState);
+ mEnabledSwitch.setChecked(mLastEnabledState);
setPrefsEnabledState(mLastEnabledState);
if (mHaveDebugSettings && !mLastEnabledState) {
Settings.Global.putInt(getActivity().getContentResolver(),
Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 1);
mLastEnabledState = true;
- mSwitchBar.setSwitchChecked(mLastEnabledState);
+ mEnabledSwitch.setChecked(mLastEnabledState);
setPrefsEnabledState(mLastEnabledState);
}
@Override
public void onSwitchChanged(Switch switchView, boolean isChecked) {
+ if (switchView != mEnabledSwitch) {
+ return;
+ }
if (isChecked != mLastEnabledState) {
if (isChecked) {
mDialogClicked = false;
setPrefsEnabledState(mLastEnabledState);
} else {
// Reset the toggle
- mSwitchBar.setSwitchChecked(false);
+ mEnabledSwitch.setChecked(false);
}
}
}
mAdbDialog = null;
} else if (dialog == mEnableDialog) {
if (!mDialogClicked) {
- mSwitchBar.setSwitchChecked(false);
+ mEnabledSwitch.setChecked(false);
}
mEnableDialog = null;
}
private DreamBackend mBackend;
private DreamInfoAdapter mAdapter;
private SwitchBar mSwitchBar;
+ private Switch mSwitch;
private MenuItem[] mMenuItemsWhenEnabled;
private boolean mRefreshing;
final SettingsActivity sa = (SettingsActivity) getActivity();
mSwitchBar = sa.getSwitchBar();
+ mSwitch = mSwitchBar.getSwitch();
}
@Override
logd("refreshFromBackend()");
mRefreshing = true;
boolean dreamsEnabled = mBackend.isEnabled();
- if (mSwitchBar.isSwitchChecked() != dreamsEnabled)
- mSwitchBar.setSwitchChecked(dreamsEnabled);
+ if (mSwitch.isChecked() != dreamsEnabled)
+ mSwitch.setChecked(dreamsEnabled);
mAdapter.clear();
if (dreamsEnabled) {
private SubtitleView mPreviewText;
private View mPreviewWindow;
private SwitchBar mSwitchBar;
+ private ToggleSwitch mToggleSwitch;
// Standard options.
private LocalePreference mLocale;
SettingsActivity activity = (SettingsActivity) getActivity();
mSwitchBar = activity.getSwitchBar();
- mSwitchBar.setSwitchChecked(enabled);
+ mToggleSwitch = mSwitchBar.getSwitch();
+ mToggleSwitch.setCheckedInternal(enabled);
mPreviewWindow = view.findViewById(R.id.preview_window);
}
protected void onInstallSwitchBarToggleSwitch() {
- mSwitchBar.setSwitchOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
+ mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
@Override
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
- mSwitchBar.setSwitchChecked(checked);
+ toggleSwitch.setCheckedInternal(checked);
Settings.Secure.putInt(getActivity().getContentResolver(),
Settings.Secure.ACCESSIBILITY_CAPTIONING_ENABLED, checked ? 1 : 0);
getPreferenceScreen().setEnabled(checked);
private void removeSwitchBarToggleSwitch() {
mSwitchBar.hide();
- mSwitchBar.setSwitchOnBeforeCheckedChangeListener(null);
+ mToggleSwitch.setOnBeforeCheckedChangeListener(null);
}
private void initializeAllPreferences() {
String settingValue = Settings.Secure.getString(getContentResolver(),
Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES);
final boolean enabled = settingValue.contains(mComponentName.flattenToString());
- mSwitchBar.setSwitchChecked(enabled);
+ mToggleSwitch.setCheckedInternal(enabled);
}
};
switch (which) {
case DialogInterface.BUTTON_POSITIVE:
checked = (mShownDialogId == DIALOG_ID_ENABLE_WARNING);
- mSwitchBar.setSwitchChecked(checked);
+ mToggleSwitch.setCheckedInternal(checked);
getArguments().putBoolean(AccessibilitySettings.EXTRA_CHECKED, checked);
onPreferenceToggled(mPreferenceKey, checked);
break;
case DialogInterface.BUTTON_NEGATIVE:
checked = (mShownDialogId == DIALOG_ID_DISABLE_WARNING);
- mSwitchBar.setSwitchChecked(checked);
+ mToggleSwitch.setCheckedInternal(checked);
getArguments().putBoolean(AccessibilitySettings.EXTRA_CHECKED, checked);
onPreferenceToggled(mPreferenceKey, checked);
break;
@Override
protected void onInstallSwitchBarToggleSwitch() {
super.onInstallSwitchBarToggleSwitch();
- mSwitchBar.setSwitchOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
+ mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
@Override
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
if (checked) {
- mSwitchBar.setSwitchChecked(false);
+ toggleSwitch.setCheckedInternal(false);
getArguments().putBoolean(AccessibilitySettings.EXTRA_CHECKED, false);
showDialog(DIALOG_ID_ENABLE_WARNING);
} else {
- mSwitchBar.setSwitchChecked(true);
+ toggleSwitch.setCheckedInternal(true);
getArguments().putBoolean(AccessibilitySettings.EXTRA_CHECKED, true);
showDialog(DIALOG_ID_DISABLE_WARNING);
}
protected void onInstallSwitchBarToggleSwitch() {
super.onInstallSwitchBarToggleSwitch();
- mSwitchBar.setSwitchChecked(
+ mToggleSwitch.setCheckedInternal(
Settings.Secure.getInt(getContentResolver(), ENABLED, 0) == 1);
mSwitchBar.addOnSwitchChangeListener(this);
}
extends SettingsPreferenceFragment {
protected SwitchBar mSwitchBar;
+ protected ToggleSwitch mToggleSwitch;
protected String mPreferenceKey;
protected Preference mSummaryPreference;
SettingsActivity activity = (SettingsActivity) getActivity();
mSwitchBar = activity.getSwitchBar();
+ mToggleSwitch = mSwitchBar.getSwitch();
onProcessArguments(getArguments());
}
}
private void removeActionBarToggleSwitch() {
- mSwitchBar.setSwitchOnBeforeCheckedChangeListener(null);
+ mToggleSwitch.setOnBeforeCheckedChangeListener(null);
onRemoveSwitchBarToggleSwitch();
mSwitchBar.hide();
}
// Enabled.
if (arguments.containsKey(AccessibilitySettings.EXTRA_CHECKED)) {
final boolean enabled = arguments.getBoolean(AccessibilitySettings.EXTRA_CHECKED);
- mSwitchBar.setSwitchChecked(enabled);
+ mToggleSwitch.setCheckedInternal(enabled);
}
// Title.
@Override
protected void onInstallSwitchBarToggleSwitch() {
super.onInstallSwitchBarToggleSwitch();
- mSwitchBar.setSwitchOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
+ mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
@Override
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
- mSwitchBar.setSwitchChecked(checked);
+ toggleSwitch.setCheckedInternal(checked);
getArguments().putBoolean(AccessibilitySettings.EXTRA_CHECKED, checked);
onPreferenceToggled(mPreferenceKey, checked);
return false;
protected void onInstallSwitchBarToggleSwitch() {
super.onInstallSwitchBarToggleSwitch();
- mSwitchBar.setSwitchChecked(
+ mToggleSwitch.setCheckedInternal(
Settings.Secure.getInt(getContentResolver(), ENABLED, 0) == 1);
mSwitchBar.addOnSwitchChangeListener(this);
}
@Override
protected void onInstallSwitchBarToggleSwitch() {
super.onInstallSwitchBarToggleSwitch();
- mSwitchBar.setSwitchOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
+ mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
@Override
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
- mSwitchBar.setSwitchChecked(checked);
+ toggleSwitch.setCheckedInternal(checked);
getArguments().putBoolean(AccessibilitySettings.EXTRA_CHECKED, checked);
onPreferenceToggled(mPreferenceKey, checked);
return false;
*/
public final class BluetoothEnabler implements SwitchBar.OnSwitchChangeListener {
private Context mContext;
+ private Switch mSwitch;
private SwitchBar mSwitchBar;
private boolean mValidListener;
private final LocalBluetoothAdapter mLocalAdapter;
public BluetoothEnabler(Context context, SwitchBar switchBar) {
mContext = context;
mSwitchBar = switchBar;
+ mSwitch = switchBar.getSwitch();
mValidListener = false;
LocalBluetoothManager manager = LocalBluetoothManager.getInstance(context);
if (manager == null) {
// Bluetooth is not supported
mLocalAdapter = null;
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
} else {
mLocalAdapter = manager.getBluetoothAdapter();
}
public void resume(Context context) {
if (mLocalAdapter == null) {
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
return;
}
void handleStateChanged(int state) {
switch (state) {
case BluetoothAdapter.STATE_TURNING_ON:
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
break;
case BluetoothAdapter.STATE_ON:
setChecked(true);
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
updateSearchIndex(true);
break;
case BluetoothAdapter.STATE_TURNING_OFF:
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
break;
case BluetoothAdapter.STATE_OFF:
setChecked(false);
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
updateSearchIndex(false);
break;
default:
setChecked(false);
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
updateSearchIndex(false);
}
}
private void setChecked(boolean isChecked) {
- if (isChecked != mSwitchBar.isSwitchChecked()) {
+ if (isChecked != mSwitch.isChecked()) {
// set listener to null, so onCheckedChanged won't be called
// if the checked status on Switch isn't changed by user click
if (mValidListener) {
mSwitchBar.removeOnSwitchChangeListener(this);
}
- mSwitchBar.setSwitchChecked(isChecked);
+ mSwitch.setChecked(isChecked);
if (mValidListener) {
mSwitchBar.addOnSwitchChangeListener(this);
}
if (mLocalAdapter != null) {
mLocalAdapter.setBluetoothEnabled(isChecked);
}
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
}
}
private static final String KEY_LOCATION_SERVICES = "location_services";
private SwitchBar mSwitchBar;
+ private Switch mSwitch;
private boolean mValidListener;
private Preference mLocationMode;
private PreferenceCategory mCategoryRecentLocationRequests;
final SettingsActivity activity = (SettingsActivity) getActivity();
mSwitchBar = activity.getSwitchBar();
+ mSwitch = mSwitchBar.getSwitch();
}
@Override
// corner cases, the location might still be enabled. In such case the master switch should
// be disabled but checked.
boolean enabled = (mode != android.provider.Settings.Secure.LOCATION_MODE_OFF);
- mSwitchBar.setSwitchEnabled(!restricted);
+ mSwitch.setEnabled(!restricted);
mLocationMode.setEnabled(enabled && !restricted);
mCategoryRecentLocationRequests.setEnabled(enabled);
- if (enabled != mSwitchBar.isSwitchChecked()) {
+ if (enabled != mSwitch.isChecked()) {
// set listener to null so that that code below doesn't trigger onCheckedChanged()
if (mValidListener) {
mSwitchBar.removeOnSwitchChangeListener(this);
}
- mSwitchBar.setSwitchChecked(enabled);
+ mSwitch.setChecked(enabled);
if (mValidListener) {
mSwitchBar.addOnSwitchChangeListener(this);
}
private View mView;
private NfcAdapter mNfcAdapter;
private SwitchBar mSwitchBar;
+ private Switch mSwitch;
private CharSequence mOldActivityTitle;
@Override
SettingsActivity activity = (SettingsActivity) getActivity();
mSwitchBar = activity.getSwitchBar();
- mSwitchBar.setSwitchChecked(mNfcAdapter.isNdefPushEnabled());
+ mSwitch = mSwitchBar.getSwitch();
+ mSwitch.setChecked(mNfcAdapter.isNdefPushEnabled());
}
@Override
@Override
public void onSwitchChanged(Switch switchView, boolean desiredState) {
boolean success = false;
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
if (desiredState) {
success = mNfcAdapter.enableNdefPush();
} else {
success = mNfcAdapter.disableNdefPush();
}
if (success) {
- mSwitchBar.setSwitchChecked(desiredState);
+ mSwitch.setChecked(desiredState);
}
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
}
}
private final SettingsObserver mSettingsObserver = new SettingsObserver();
private SwitchBar mSwitchBar;
+ private Switch mSwitch;
private Context mContext;
private PackageManager mPM;
private ZenModeConfig mConfig;
if (DEBUG) Log.d(TAG, "Loaded mConfig=" + mConfig);
mSwitchBar = ((SettingsActivity) mContext).getSwitchBar();
+ mSwitch = mSwitchBar.getSwitch();
final PreferenceCategory general = (PreferenceCategory) root.findPreference(KEY_GENERAL);
private void updateZenMode() {
final boolean zenMode = Global.getInt(getContentResolver(),
Global.ZEN_MODE, Global.ZEN_MODE_OFF) != Global.ZEN_MODE_OFF;
- if (mSwitchBar.isSwitchChecked() != zenMode) {
- mSwitchBar.setSwitchChecked(zenMode);
+ if (mSwitch.isChecked() != zenMode) {
+ mSwitch.setChecked(zenMode);
mIgnoreNext = true;
}
}
};
private SwitchBar mSwitchBar;
+ private ToggleSwitch mToggleSwitch;
private String mPreferenceKey;
switch (which) {
case DialogInterface.BUTTON_POSITIVE:
checked = true;
- mSwitchBar.setSwitchChecked(checked);
+ mToggleSwitch.setCheckedInternal(checked);
getArguments().putBoolean(PrintSettingsFragment.EXTRA_CHECKED, checked);
onPreferenceToggled(mPreferenceKey, checked);
break;
case DialogInterface.BUTTON_NEGATIVE:
checked = false;
- mSwitchBar.setSwitchChecked(checked);
+ mToggleSwitch.setCheckedInternal(checked);
getArguments().putBoolean(PrintSettingsFragment.EXTRA_CHECKED, checked);
onPreferenceToggled(mPreferenceKey, checked);
break;
ListView listView = getListView();
ViewGroup contentRoot = (ViewGroup) listView.getParent();
View emptyView = listView.getEmptyView();
- if (!mSwitchBar.isSwitchChecked()) {
+ if (!mToggleSwitch.isChecked()) {
if (emptyView != null && emptyView.getId() != R.id.empty_print_state) {
contentRoot.removeView(emptyView);
emptyView = null;
List<ComponentName> services = PrintSettingsUtils.readEnabledPrintServices(getActivity());
mServiceEnabled = services.contains(mComponentName);
if (mServiceEnabled) {
- mSwitchBar.setSwitchChecked(true);
+ mToggleSwitch.setCheckedInternal(true);
mPrintersAdapter.enable();
} else {
- mSwitchBar.setSwitchChecked(false);
+ mToggleSwitch.setCheckedInternal(false);
mPrintersAdapter.disable();
}
getActivity().invalidateOptionsMenu();
final SettingsActivity activity = (SettingsActivity) getActivity();
mSwitchBar = activity.getSwitchBar();
- mSwitchBar.setSwitchOnBeforeCheckedChangeListener(new ToggleSwitch.OnBeforeCheckedChangeListener() {
+
+ mToggleSwitch = mSwitchBar.getSwitch();
+ mToggleSwitch.setOnBeforeCheckedChangeListener(new ToggleSwitch.OnBeforeCheckedChangeListener() {
@Override
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
if (checked) {
if (!TextUtils.isEmpty(mEnableWarningMessage)) {
- mSwitchBar.setSwitchChecked(false);
+ toggleSwitch.setCheckedInternal(false);
getArguments().putBoolean(PrintSettingsFragment.EXTRA_CHECKED, false);
showDialog(DIALOG_ID_ENABLE_WARNING);
return true;
// Enabled.
final boolean enabled = arguments.getBoolean(PrintSettingsFragment.EXTRA_CHECKED);
- mSwitchBar.setSwitchChecked(enabled);
+ mToggleSwitch.setCheckedInternal(enabled);
// Settings title and intent.
String settingsTitle = arguments.getString(PrintSettingsFragment.EXTRA_SETTINGS_TITLE);
// Default is hide
setVisibility(View.GONE);
- mSwitch.setVisibility(View.GONE);
+ }
+
+ public ToggleSwitch getSwitch() {
+ return mSwitch;
}
public void show() {
}
mSwitchChangeListeners.remove(listener);
}
-
- public void setSwitchOnBeforeCheckedChangeListener(
- ToggleSwitch.OnBeforeCheckedChangeListener listener) {
- mSwitch.setOnBeforeCheckedChangeListener(listener);
- }
-
- public void setSwitchChecked(boolean checked) {
- setSwitchChecked(checked, false);
- }
-
- public void setSwitchChecked(boolean checked, boolean checkBefore) {
- if (checkBefore) {
- ToggleSwitch.OnBeforeCheckedChangeListener listener =
- mSwitch.getOnBeforeCheckedChangeListener();
- if (listener != null && listener.onBeforeCheckedChanged(mSwitch, checked)) {
- return;
- }
-
- }
- mSwitch.setCheckedInternal(checked);
- if (mSwitch.getVisibility() == View.GONE) {
- mSwitch.setVisibility(View.VISIBLE);
- }
- }
-
- public void setSwitchEnabled(boolean enabled) {
- mSwitch.setEnabled(enabled);
- if (mSwitch.getVisibility() == View.GONE) {
- mSwitch.setVisibility(View.VISIBLE);
- }
- }
-
- public boolean isSwitchChecked() {
- return mSwitch.isChecked();
- }
}
mOnBeforeListener = listener;
}
- public OnBeforeCheckedChangeListener getOnBeforeCheckedChangeListener() {
- return mOnBeforeListener;
- }
-
@Override
public void setChecked(boolean checked) {
if (mOnBeforeListener != null
import android.os.Handler;
import android.os.Message;
import android.provider.Settings;
+import android.widget.CompoundButton;
import android.widget.Switch;
import android.widget.Toast;
public class WifiEnabler implements SwitchBar.OnSwitchChangeListener {
private Context mContext;
+ private Switch mSwitch;
private SwitchBar mSwitchBar;
private AtomicBoolean mConnected = new AtomicBoolean(false);
public WifiEnabler(Context context, SwitchBar switchBar) {
mContext = context;
mSwitchBar = switchBar;
+ mSwitch = switchBar.getSwitch();
mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
mIntentFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION);
private void handleWifiStateChanged(int state) {
switch (state) {
case WifiManager.WIFI_STATE_ENABLING:
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
break;
case WifiManager.WIFI_STATE_ENABLED:
setSwitchChecked(true);
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
updateSearchIndex(true);
break;
case WifiManager.WIFI_STATE_DISABLING:
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
break;
case WifiManager.WIFI_STATE_DISABLED:
setSwitchChecked(false);
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
updateSearchIndex(false);
break;
default:
setSwitchChecked(false);
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
updateSearchIndex(false);
}
}
}
private void setSwitchChecked(boolean checked) {
- if (checked != mSwitchBar.isSwitchChecked()) {
+ if (checked != mSwitch.isChecked()) {
mStateMachineEvent = true;
- mSwitchBar.setSwitchChecked(checked);
+ mSwitch.setChecked(checked);
mStateMachineEvent = false;
}
}
mWifiManager.setWifiApEnabled(null, false);
}
- mSwitchBar.setSwitchEnabled(false);
+ mSwitch.setEnabled(false);
if (!mWifiManager.setWifiEnabled(isChecked)) {
// Error
- mSwitchBar.setSwitchEnabled(true);
+ mSwitch.setEnabled(true);
Toast.makeText(mContext, R.string.wifi_error, Toast.LENGTH_SHORT).show();
}
}