From 7effe64c18db1a2f99858f1c3fe4c5b02ed7dd0b Mon Sep 17 00:00:00 2001 From: Wesley Wang Date: Thu, 30 Mar 2023 12:05:57 +0800 Subject: [PATCH] Remove unused listener - Remove OnMainSwitchChangeListener and it's interface since the callback will duplicate with setCheck() method, cause the toggle on event come with twice while on and off, in futher to casue some duplicate work or error metrics logging Bug: 218405966 Test: make SettingsRoboTests Change-Id: If20ed6488d21443b9c623e8fe4de383a84ea673a --- ...atterySaverButtonPreferenceController.java | 19 ++---------- ...rySaverButtonPreferenceControllerTest.java | 31 ------------------- 2 files changed, 2 insertions(+), 48 deletions(-) diff --git a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java index 274817e3819..73ec42bad82 100644 --- a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java +++ b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java @@ -22,9 +22,7 @@ import android.net.Uri; import android.os.Handler; import android.os.Looper; import android.os.PowerManager; -import android.provider.Settings; import android.provider.SettingsSlicesContract; -import android.widget.Switch; import androidx.preference.PreferenceScreen; @@ -36,15 +34,13 @@ import com.android.settingslib.core.lifecycle.events.OnStart; import com.android.settingslib.core.lifecycle.events.OnStop; import com.android.settingslib.fuelgauge.BatterySaverUtils; import com.android.settingslib.widget.MainSwitchPreference; -import com.android.settingslib.widget.OnMainSwitchChangeListener; - /** * Controller to update the battery saver button */ public class BatterySaverButtonPreferenceController extends - TogglePreferenceController implements OnMainSwitchChangeListener, LifecycleObserver, - OnStart, OnStop, BatterySaverReceiver.BatterySaverListener { + TogglePreferenceController implements LifecycleObserver, OnStart, OnStop, + BatterySaverReceiver.BatterySaverListener { private static final long SWITCH_ANIMATION_DURATION = 350L; private final BatterySaverReceiver mBatterySaverReceiver; @@ -96,20 +92,9 @@ public class BatterySaverButtonPreferenceController extends public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); mPreference = screen.findPreference(getPreferenceKey()); - mPreference.addOnSwitchChangeListener(this); mPreference.updateStatus(isChecked()); } - @Override - public void onSwitchChanged(Switch switchView, boolean isChecked) { - // Cancel preference's check state once it's first time launch - if (isChecked && (Settings.Secure.getInt(mContext.getContentResolver(), - Settings.Secure.LOW_POWER_WARNING_ACKNOWLEDGED, 0) == 0)) { - mPreference.setChecked(false); - } - setChecked(isChecked); - } - @Override public boolean isChecked() { return mPowerManager.isPowerSaveMode(); diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceControllerTest.java index 9a7ef409f95..7398e5ce024 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceControllerTest.java @@ -26,7 +26,6 @@ import static org.mockito.Mockito.when; import android.content.Context; import android.os.PowerManager; -import android.provider.Settings; import android.provider.SettingsSlicesContract; import androidx.preference.PreferenceScreen; @@ -72,24 +71,6 @@ public class BatterySaverButtonPreferenceControllerTest { .isEqualTo(SettingsSlicesContract.AUTHORITY); } - @Test - public void onSwitchChanged_isCheckedButNotAcked_preferenceIsUnchecked() { - setLowPowerWarningAcked(/* acked= */ 0); - - mController.onSwitchChanged(/* switchView= */ null, /* isChecked= */ true); - - assertThat(mPreference.isChecked()).isFalse(); - } - - @Test - public void onSwitchChanged_isCheckedAndAcked_setPowerSaveMode() { - setLowPowerWarningAcked(/* acked= */ 1); - - mController.onSwitchChanged(/* switchView= */ null, /* isChecked= */ true); - - verify(mPowerManager).setPowerSaveModeEnabled(true); - } - @Test public void updateState_lowPowerOn_preferenceIsChecked() { when(mPowerManager.isPowerSaveMode()).thenReturn(true); @@ -140,16 +121,4 @@ public class BatterySaverButtonPreferenceControllerTest { public void isPublicSlice_returnsTrue() { assertThat(mController.isPublicSlice()).isTrue(); } - - // 0 means not acked, 1 means acked. - private void setLowPowerWarningAcked(int acked) { - Settings.Secure.putInt( - mContext.getContentResolver(), - Settings.Secure.LOW_POWER_WARNING_ACKNOWLEDGED, - acked); - Settings.Secure.putInt( - mContext.getContentResolver(), - Settings.Secure.EXTRA_LOW_POWER_WARNING_ACKNOWLEDGED, - acked); - } }