Merge "Fixe the problem of invalid switch preference." into tm-dev

This commit is contained in:
Stanley Wang
2022-04-28 05:20:53 +00:00
committed by Android (Google) Code Review

View File

@@ -122,9 +122,10 @@ public class MainSwitchPreference extends TwoStatePreference implements OnMainSw
* Adds a listener for switch changes * Adds a listener for switch changes
*/ */
public void addOnSwitchChangeListener(OnMainSwitchChangeListener listener) { public void addOnSwitchChangeListener(OnMainSwitchChangeListener listener) {
if (mMainSwitchBar == null) { if (!mSwitchChangeListeners.contains(listener)) {
mSwitchChangeListeners.add(listener); mSwitchChangeListeners.add(listener);
} else { }
if (mMainSwitchBar != null) {
mMainSwitchBar.addOnSwitchChangeListener(listener); mMainSwitchBar.addOnSwitchChangeListener(listener);
} }
} }
@@ -133,9 +134,8 @@ public class MainSwitchPreference extends TwoStatePreference implements OnMainSw
* Remove a listener for switch changes * Remove a listener for switch changes
*/ */
public void removeOnSwitchChangeListener(OnMainSwitchChangeListener listener) { public void removeOnSwitchChangeListener(OnMainSwitchChangeListener listener) {
if (mMainSwitchBar == null) { mSwitchChangeListeners.remove(listener);
mSwitchChangeListeners.remove(listener); if (mMainSwitchBar != null) {
} else {
mMainSwitchBar.removeOnSwitchChangeListener(listener); mMainSwitchBar.removeOnSwitchChangeListener(listener);
} }
} }