Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a99c64df authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Remove unused listener" into udc-dev

parents 925fabe0 7effe64c
Loading
Loading
Loading
Loading
+2 −17
Original line number Diff line number Diff line
@@ -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();
+0 −31
Original line number Diff line number Diff line
@@ -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);
    }
}