Migrate to CompoundButton.OnCheckedChangeListener
Switch and SwitchCompat are both CompoundButton. Using CompoundButton in Java will helps migration in the future. Bug: 306658427 Test: manual - check Settings pages Change-Id: If2e08a9a9557ec66a3b31ef18cd2e15943098a59
This commit is contained in:
@@ -16,16 +16,16 @@
|
||||
|
||||
package com.android.settings.widget;
|
||||
|
||||
import android.widget.Switch;
|
||||
import android.widget.CompoundButton;
|
||||
import android.widget.CompoundButton.OnCheckedChangeListener;
|
||||
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
import com.android.settingslib.widget.OnMainSwitchChangeListener;
|
||||
|
||||
/**
|
||||
* The switch controller that is used to update the switch widget in the SettingsMainSwitchBar.
|
||||
*/
|
||||
public class MainSwitchBarController extends SwitchWidgetController implements
|
||||
OnMainSwitchChangeListener {
|
||||
OnCheckedChangeListener {
|
||||
|
||||
private final SettingsMainSwitchBar mMainSwitch;
|
||||
|
||||
@@ -74,7 +74,7 @@ public class MainSwitchBarController extends SwitchWidgetController implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
||||
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
||||
if (mListener != null) {
|
||||
mListener.onSwitchToggled(isChecked);
|
||||
}
|
||||
|
@@ -21,7 +21,6 @@ import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
|
||||
import android.content.Context;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
import android.widget.Switch;
|
||||
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
@@ -39,10 +38,9 @@ public class SettingsMainSwitchBar extends MainSwitchBar {
|
||||
public interface OnBeforeCheckedChangeListener {
|
||||
|
||||
/**
|
||||
* @param switchView The Switch view whose state has changed.
|
||||
* @param isChecked The new checked state of switchView.
|
||||
* @param isChecked The new checked state of switchView.
|
||||
*/
|
||||
boolean onBeforeCheckedChanged(Switch switchView, boolean isChecked);
|
||||
boolean onBeforeCheckedChanged(boolean isChecked);
|
||||
}
|
||||
|
||||
private EnforcedAdmin mEnforcedAdmin;
|
||||
@@ -117,7 +115,7 @@ public class SettingsMainSwitchBar extends MainSwitchBar {
|
||||
@Override
|
||||
public void setChecked(boolean checked) {
|
||||
if (mOnBeforeListener != null
|
||||
&& mOnBeforeListener.onBeforeCheckedChanged(mSwitch, checked)) {
|
||||
&& mOnBeforeListener.onBeforeCheckedChanged(checked)) {
|
||||
return;
|
||||
}
|
||||
super.setChecked(checked);
|
||||
|
@@ -20,7 +20,8 @@ import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.AttributeSet;
|
||||
import android.widget.Switch;
|
||||
import android.widget.CompoundButton;
|
||||
import android.widget.CompoundButton.OnCheckedChangeListener;
|
||||
|
||||
import androidx.preference.PreferenceViewHolder;
|
||||
import androidx.preference.TwoStatePreference;
|
||||
@@ -29,7 +30,6 @@ import com.android.settings.R;
|
||||
import com.android.settings.widget.SettingsMainSwitchBar.OnBeforeCheckedChangeListener;
|
||||
import com.android.settingslib.RestrictedPreferenceHelper;
|
||||
import com.android.settingslib.core.instrumentation.SettingsJankMonitor;
|
||||
import com.android.settingslib.widget.OnMainSwitchChangeListener;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -40,11 +40,11 @@ import java.util.List;
|
||||
* to enable or disable the preferences on the page.
|
||||
*/
|
||||
public class SettingsMainSwitchPreference extends TwoStatePreference implements
|
||||
OnMainSwitchChangeListener {
|
||||
OnCheckedChangeListener {
|
||||
|
||||
private final List<OnBeforeCheckedChangeListener> mBeforeCheckedChangeListeners =
|
||||
new ArrayList<>();
|
||||
private final List<OnMainSwitchChangeListener> mSwitchChangeListeners = new ArrayList<>();
|
||||
private final List<OnCheckedChangeListener> mSwitchChangeListeners = new ArrayList<>();
|
||||
|
||||
private SettingsMainSwitchBar mMainSwitchBar;
|
||||
private EnforcedAdmin mEnforcedAdmin;
|
||||
@@ -127,9 +127,9 @@ public class SettingsMainSwitchPreference extends TwoStatePreference implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
||||
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
||||
super.setChecked(isChecked);
|
||||
SettingsJankMonitor.detectToggleJank(getKey(), switchView);
|
||||
SettingsJankMonitor.detectToggleJank(getKey(), buttonView);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -197,7 +197,7 @@ public class SettingsMainSwitchPreference extends TwoStatePreference implements
|
||||
/**
|
||||
* Adds a listener for switch changes
|
||||
*/
|
||||
public void addOnSwitchChangeListener(OnMainSwitchChangeListener listener) {
|
||||
public void addOnSwitchChangeListener(OnCheckedChangeListener listener) {
|
||||
if (!mSwitchChangeListeners.contains(listener)) {
|
||||
mSwitchChangeListeners.add(listener);
|
||||
}
|
||||
@@ -209,7 +209,7 @@ public class SettingsMainSwitchPreference extends TwoStatePreference implements
|
||||
/**
|
||||
* Remove a listener for switch changes
|
||||
*/
|
||||
public void removeOnSwitchChangeListener(OnMainSwitchChangeListener listener) {
|
||||
public void removeOnSwitchChangeListener(OnCheckedChangeListener listener) {
|
||||
mSwitchChangeListeners.remove(listener);
|
||||
if (mMainSwitchBar != null) {
|
||||
mMainSwitchBar.removeOnSwitchChangeListener(listener);
|
||||
@@ -239,7 +239,7 @@ public class SettingsMainSwitchPreference extends TwoStatePreference implements
|
||||
for (OnBeforeCheckedChangeListener listener : mBeforeCheckedChangeListeners) {
|
||||
mMainSwitchBar.setOnBeforeCheckedChangeListener(listener);
|
||||
}
|
||||
for (OnMainSwitchChangeListener listener : mSwitchChangeListeners) {
|
||||
for (OnCheckedChangeListener listener : mSwitchChangeListeners) {
|
||||
mMainSwitchBar.addOnSwitchChangeListener(listener);
|
||||
}
|
||||
}
|
||||
|
@@ -17,20 +17,20 @@
|
||||
package com.android.settings.widget;
|
||||
|
||||
import android.content.Context;
|
||||
import android.widget.Switch;
|
||||
import android.widget.CompoundButton;
|
||||
import android.widget.CompoundButton.OnCheckedChangeListener;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.core.TogglePreferenceController;
|
||||
import com.android.settingslib.widget.MainSwitchPreference;
|
||||
import com.android.settingslib.widget.OnMainSwitchChangeListener;
|
||||
|
||||
/**
|
||||
* Preference controller for MainSwitchPreference.
|
||||
*/
|
||||
public abstract class SettingsMainSwitchPreferenceController extends
|
||||
TogglePreferenceController implements OnMainSwitchChangeListener {
|
||||
TogglePreferenceController implements OnCheckedChangeListener {
|
||||
|
||||
protected MainSwitchPreference mSwitchPreference;
|
||||
|
||||
@@ -49,7 +49,7 @@ public abstract class SettingsMainSwitchPreferenceController extends
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
||||
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
||||
mSwitchPreference.setChecked(isChecked);
|
||||
setChecked(isChecked);
|
||||
}
|
||||
|
Reference in New Issue
Block a user