Loading packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java +16 −43 Original line number Original line Diff line number Diff line Loading @@ -104,19 +104,15 @@ public class KeyguardSliceProvider extends SliceProvider implements private final AlarmManager.OnAlarmListener mUpdateNextAlarm = this::updateNextAlarm; private final AlarmManager.OnAlarmListener mUpdateNextAlarm = this::updateNextAlarm; private final HashSet<Integer> mMediaInvisibleStates; private final HashSet<Integer> mMediaInvisibleStates; private final Object mMediaToken = new Object(); private final Object mMediaToken = new Object(); @VisibleForTesting private SettableWakeLock mMediaWakeLock; protected SettableWakeLock mMediaWakeLock; private ZenModeController mZenModeController; @VisibleForTesting protected ZenModeController mZenModeController; private String mDatePattern; private String mDatePattern; private DateFormat mDateFormat; private DateFormat mDateFormat; private String mLastText; private String mLastText; private boolean mRegistered; private boolean mRegistered; private String mNextAlarm; private String mNextAlarm; private NextAlarmController mNextAlarmController; private NextAlarmController mNextAlarmController; @VisibleForTesting protected AlarmManager mAlarmManager; protected AlarmManager mAlarmManager; @VisibleForTesting protected ContentResolver mContentResolver; protected ContentResolver mContentResolver; private AlarmManager.AlarmClockInfo mNextAlarmInfo; private AlarmManager.AlarmClockInfo mNextAlarmInfo; private PendingIntent mPendingIntent; private PendingIntent mPendingIntent; Loading Loading @@ -301,12 +297,6 @@ public class KeyguardSliceProvider extends SliceProvider implements @Override @Override public boolean onCreateSliceProvider() { public boolean onCreateSliceProvider() { synchronized (this) { KeyguardSliceProvider oldInstance = KeyguardSliceProvider.sInstance; if (oldInstance != null) { oldInstance.onDestroy(); } mAlarmManager = getContext().getSystemService(AlarmManager.class); mAlarmManager = getContext().getSystemService(AlarmManager.class); mContentResolver = getContext().getContentResolver(); mContentResolver = getContext().getContentResolver(); mNextAlarmController = new NextAlarmControllerImpl(getContext()); mNextAlarmController = new NextAlarmControllerImpl(getContext()); Loading @@ -320,25 +310,9 @@ public class KeyguardSliceProvider extends SliceProvider implements KeyguardSliceProvider.sInstance = this; KeyguardSliceProvider.sInstance = this; registerClockUpdate(); registerClockUpdate(); updateClockLocked(); updateClockLocked(); } return true; 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 @Override public void onZenChanged(int zen) { public void onZenChanged(int zen) { notifyChange(); notifyChange(); Loading Loading @@ -376,8 +350,7 @@ public class KeyguardSliceProvider extends SliceProvider implements * Registers a broadcast receiver for clock updates, include date, time zone and manually * Registers a broadcast receiver for clock updates, include date, time zone and manually * changing the date/time via the settings app. * changing the date/time via the settings app. */ */ @VisibleForTesting private void registerClockUpdate() { protected void registerClockUpdate() { synchronized (this) { synchronized (this) { if (mRegistered) { if (mRegistered) { return; return; Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardSliceProviderTest.java +1 −28 Original line number Original line Diff line number Diff line Loading @@ -48,9 +48,6 @@ import com.android.keyguard.KeyguardUpdateMonitor; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCase; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.NotificationMediaManager; 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.Assert; import org.junit.Before; import org.junit.Before; Loading @@ -76,14 +73,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { private NotificationMediaManager mNotificationMediaManager; private NotificationMediaManager mNotificationMediaManager; @Mock @Mock private StatusBarStateController mStatusBarStateController; private StatusBarStateController mStatusBarStateController; @Mock private KeyguardBypassController mKeyguardBypassController; @Mock private ZenModeController mZenModeController; @Mock private SettableWakeLock mMediaWakeLock; @Mock private KeyguardUpdateMonitor mKeyguardUpdateMonitor; private TestableKeyguardSliceProvider mProvider; private TestableKeyguardSliceProvider mProvider; private boolean mIsZenMode; private boolean mIsZenMode; Loading Loading @@ -205,20 +194,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { verify(mContentResolver, never()).notifyChange(eq(mProvider.getUri()), eq(null)); 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 { private class TestableKeyguardSliceProvider extends KeyguardSliceProvider { int mCleanDateFormatInvokations; int mCleanDateFormatInvokations; private int mCounter; private int mCounter; Loading @@ -232,8 +207,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { super.onCreateSliceProvider(); super.onCreateSliceProvider(); mAlarmManager = KeyguardSliceProviderTest.this.mAlarmManager; mAlarmManager = KeyguardSliceProviderTest.this.mAlarmManager; mContentResolver = KeyguardSliceProviderTest.this.mContentResolver; mContentResolver = KeyguardSliceProviderTest.this.mContentResolver; mZenModeController = KeyguardSliceProviderTest.this.mZenModeController; mMediaWakeLock = KeyguardSliceProviderTest.this.mMediaWakeLock; return true; return true; } } Loading @@ -250,7 +223,7 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { @Override @Override public KeyguardUpdateMonitor getKeyguardUpdateMonitor() { public KeyguardUpdateMonitor getKeyguardUpdateMonitor() { return mKeyguardUpdateMonitor; return mock(KeyguardUpdateMonitor.class); } } @Override @Override Loading Loading
packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java +16 −43 Original line number Original line Diff line number Diff line Loading @@ -104,19 +104,15 @@ public class KeyguardSliceProvider extends SliceProvider implements private final AlarmManager.OnAlarmListener mUpdateNextAlarm = this::updateNextAlarm; private final AlarmManager.OnAlarmListener mUpdateNextAlarm = this::updateNextAlarm; private final HashSet<Integer> mMediaInvisibleStates; private final HashSet<Integer> mMediaInvisibleStates; private final Object mMediaToken = new Object(); private final Object mMediaToken = new Object(); @VisibleForTesting private SettableWakeLock mMediaWakeLock; protected SettableWakeLock mMediaWakeLock; private ZenModeController mZenModeController; @VisibleForTesting protected ZenModeController mZenModeController; private String mDatePattern; private String mDatePattern; private DateFormat mDateFormat; private DateFormat mDateFormat; private String mLastText; private String mLastText; private boolean mRegistered; private boolean mRegistered; private String mNextAlarm; private String mNextAlarm; private NextAlarmController mNextAlarmController; private NextAlarmController mNextAlarmController; @VisibleForTesting protected AlarmManager mAlarmManager; protected AlarmManager mAlarmManager; @VisibleForTesting protected ContentResolver mContentResolver; protected ContentResolver mContentResolver; private AlarmManager.AlarmClockInfo mNextAlarmInfo; private AlarmManager.AlarmClockInfo mNextAlarmInfo; private PendingIntent mPendingIntent; private PendingIntent mPendingIntent; Loading Loading @@ -301,12 +297,6 @@ public class KeyguardSliceProvider extends SliceProvider implements @Override @Override public boolean onCreateSliceProvider() { public boolean onCreateSliceProvider() { synchronized (this) { KeyguardSliceProvider oldInstance = KeyguardSliceProvider.sInstance; if (oldInstance != null) { oldInstance.onDestroy(); } mAlarmManager = getContext().getSystemService(AlarmManager.class); mAlarmManager = getContext().getSystemService(AlarmManager.class); mContentResolver = getContext().getContentResolver(); mContentResolver = getContext().getContentResolver(); mNextAlarmController = new NextAlarmControllerImpl(getContext()); mNextAlarmController = new NextAlarmControllerImpl(getContext()); Loading @@ -320,25 +310,9 @@ public class KeyguardSliceProvider extends SliceProvider implements KeyguardSliceProvider.sInstance = this; KeyguardSliceProvider.sInstance = this; registerClockUpdate(); registerClockUpdate(); updateClockLocked(); updateClockLocked(); } return true; 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 @Override public void onZenChanged(int zen) { public void onZenChanged(int zen) { notifyChange(); notifyChange(); Loading Loading @@ -376,8 +350,7 @@ public class KeyguardSliceProvider extends SliceProvider implements * Registers a broadcast receiver for clock updates, include date, time zone and manually * Registers a broadcast receiver for clock updates, include date, time zone and manually * changing the date/time via the settings app. * changing the date/time via the settings app. */ */ @VisibleForTesting private void registerClockUpdate() { protected void registerClockUpdate() { synchronized (this) { synchronized (this) { if (mRegistered) { if (mRegistered) { return; return; Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/KeyguardSliceProviderTest.java +1 −28 Original line number Original line Diff line number Diff line Loading @@ -48,9 +48,6 @@ import com.android.keyguard.KeyguardUpdateMonitor; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCase; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.NotificationMediaManager; 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.Assert; import org.junit.Before; import org.junit.Before; Loading @@ -76,14 +73,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { private NotificationMediaManager mNotificationMediaManager; private NotificationMediaManager mNotificationMediaManager; @Mock @Mock private StatusBarStateController mStatusBarStateController; private StatusBarStateController mStatusBarStateController; @Mock private KeyguardBypassController mKeyguardBypassController; @Mock private ZenModeController mZenModeController; @Mock private SettableWakeLock mMediaWakeLock; @Mock private KeyguardUpdateMonitor mKeyguardUpdateMonitor; private TestableKeyguardSliceProvider mProvider; private TestableKeyguardSliceProvider mProvider; private boolean mIsZenMode; private boolean mIsZenMode; Loading Loading @@ -205,20 +194,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { verify(mContentResolver, never()).notifyChange(eq(mProvider.getUri()), eq(null)); 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 { private class TestableKeyguardSliceProvider extends KeyguardSliceProvider { int mCleanDateFormatInvokations; int mCleanDateFormatInvokations; private int mCounter; private int mCounter; Loading @@ -232,8 +207,6 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { super.onCreateSliceProvider(); super.onCreateSliceProvider(); mAlarmManager = KeyguardSliceProviderTest.this.mAlarmManager; mAlarmManager = KeyguardSliceProviderTest.this.mAlarmManager; mContentResolver = KeyguardSliceProviderTest.this.mContentResolver; mContentResolver = KeyguardSliceProviderTest.this.mContentResolver; mZenModeController = KeyguardSliceProviderTest.this.mZenModeController; mMediaWakeLock = KeyguardSliceProviderTest.this.mMediaWakeLock; return true; return true; } } Loading @@ -250,7 +223,7 @@ public class KeyguardSliceProviderTest extends SysuiTestCase { @Override @Override public KeyguardUpdateMonitor getKeyguardUpdateMonitor() { public KeyguardUpdateMonitor getKeyguardUpdateMonitor() { return mKeyguardUpdateMonitor; return mock(KeyguardUpdateMonitor.class); } } @Override @Override Loading