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

Commit d6851e4a authored by Android Build Merger (Role)'s avatar Android Build Merger (Role) Committed by Android (Google) Code Review
Browse files

Merge "Merge "Revert "Unregister listeners and reset wake lock"" into qt-dev...

Merge "Merge "Revert "Unregister listeners and reset wake lock"" into qt-dev am: a5be2897 am: 5e6adcbf" into qt-r1-dev-plus-aosp
parents 3c78aefb 6dfd1416
Loading
Loading
Loading
Loading
+16 −43
Original line number Diff line number Diff line
@@ -105,19 +105,15 @@ public class KeyguardSliceProvider extends SliceProvider implements
    private final AlarmManager.OnAlarmListener mUpdateNextAlarm = this::updateNextAlarm;
    private final HashSet<Integer> mMediaInvisibleStates;
    private final Object mMediaToken = new Object();
    @VisibleForTesting
    protected SettableWakeLock mMediaWakeLock;
    @VisibleForTesting
    protected ZenModeController mZenModeController;
    private SettableWakeLock mMediaWakeLock;
    private ZenModeController mZenModeController;
    private String mDatePattern;
    private DateFormat mDateFormat;
    private String mLastText;
    private boolean mRegistered;
    private String mNextAlarm;
    private NextAlarmController mNextAlarmController;
    @VisibleForTesting
    protected AlarmManager mAlarmManager;
    @VisibleForTesting
    protected ContentResolver mContentResolver;
    private AlarmManager.AlarmClockInfo mNextAlarmInfo;
    private PendingIntent mPendingIntent;
@@ -307,12 +303,6 @@ public class KeyguardSliceProvider extends SliceProvider implements

    @Override
    public boolean onCreateSliceProvider() {
        synchronized (this) {
            KeyguardSliceProvider oldInstance = KeyguardSliceProvider.sInstance;
            if (oldInstance != null) {
                oldInstance.onDestroy();
            }

        mAlarmManager = getContext().getSystemService(AlarmManager.class);
        mContentResolver = getContext().getContentResolver();
        mNextAlarmController = new NextAlarmControllerImpl(getContext());
@@ -326,25 +316,9 @@ public class KeyguardSliceProvider extends SliceProvider implements
        KeyguardSliceProvider.sInstance = this;
        registerClockUpdate();
        updateClockLocked();
        }
        return true;
    }

    @VisibleForTesting
    protected void onDestroy() {
        synchronized (this) {
            mNextAlarmController.removeCallback(this);
            mZenModeController.removeCallback(this);
            mMediaWakeLock.setAcquired(false);
            mAlarmManager.cancel(mUpdateNextAlarm);
            if (mRegistered) {
                mRegistered = false;
                getKeyguardUpdateMonitor().removeCallback(mKeyguardUpdateMonitorCallback);
                getContext().unregisterReceiver(mIntentReceiver);
            }
        }
    }

    @Override
    public void onZenChanged(int zen) {
        notifyChange();
@@ -382,8 +356,7 @@ public class KeyguardSliceProvider extends SliceProvider implements
     * Registers a broadcast receiver for clock updates, include date, time zone and manually
     * changing the date/time via the settings app.
     */
    @VisibleForTesting
    protected void registerClockUpdate() {
    private void registerClockUpdate() {
        synchronized (this) {
            if (mRegistered) {
                return;
+1 −28
Original line number Diff line number Diff line
@@ -48,9 +48,6 @@ import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.statusbar.NotificationMediaManager;
import com.android.systemui.statusbar.phone.KeyguardBypassController;
import com.android.systemui.statusbar.policy.ZenModeController;
import com.android.systemui.util.wakelock.SettableWakeLock;

import org.junit.Assert;
import org.junit.Before;
@@ -76,14 +73,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase {
    private NotificationMediaManager mNotificationMediaManager;
    @Mock
    private StatusBarStateController mStatusBarStateController;
    @Mock
    private KeyguardBypassController mKeyguardBypassController;
    @Mock
    private ZenModeController mZenModeController;
    @Mock
    private SettableWakeLock mMediaWakeLock;
    @Mock
    private KeyguardUpdateMonitor mKeyguardUpdateMonitor;
    private TestableKeyguardSliceProvider mProvider;
    private boolean mIsZenMode;

@@ -218,20 +207,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase {
        verify(mContentResolver, never()).notifyChange(eq(mProvider.getUri()), eq(null));
    }

    @Test
    public void onDestroy_noCrash() {
        mProvider.onDestroy();
    }

    @Test
    public void onDestroy_unregisterListeners() {
        mProvider.registerClockUpdate();
        mProvider.onDestroy();
        verify(mMediaWakeLock).setAcquired(eq(false));
        verify(mAlarmManager).cancel(any(AlarmManager.OnAlarmListener.class));
        verify(mKeyguardUpdateMonitor).removeCallback(any());
    }

    private class TestableKeyguardSliceProvider extends KeyguardSliceProvider {
        int mCleanDateFormatInvokations;
        private int mCounter;
@@ -245,8 +220,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase {
            super.onCreateSliceProvider();
            mAlarmManager = KeyguardSliceProviderTest.this.mAlarmManager;
            mContentResolver = KeyguardSliceProviderTest.this.mContentResolver;
            mZenModeController = KeyguardSliceProviderTest.this.mZenModeController;
            mMediaWakeLock = KeyguardSliceProviderTest.this.mMediaWakeLock;
            return true;
        }

@@ -263,7 +236,7 @@ public class KeyguardSliceProviderTest extends SysuiTestCase {

        @Override
        public KeyguardUpdateMonitor getKeyguardUpdateMonitor() {
            return mKeyguardUpdateMonitor;
            return mock(KeyguardUpdateMonitor.class);
        }

        @Override