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

Commit e02895a3 authored by Lucas Dupin's avatar Lucas Dupin
Browse files

Apply colors a bit earlier when switching users

ACTION_USER_STARTED is dispatched a bit earlier than
ACTION_USER_SWITCHED.

Test: atest ThemeOverlayControllerTest
Bug: 189075412
Change-Id: Iabd6e3bffede4caa53c6bcc61fbf17a2b8de9c55
parent 79ce03a8
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -237,7 +237,7 @@ public class ThemeOverlayController extends SystemUI implements Dumpable {
    private final BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            if (Intent.ACTION_USER_SWITCHED.equals(intent.getAction())
            if (Intent.ACTION_USER_STARTED.equals(intent.getAction())
                    || Intent.ACTION_MANAGED_PROFILE_ADDED.equals(intent.getAction())) {
                if (!mDeviceProvisionedController.isCurrentUserSetup()) {
                    Log.i(TAG, "User setup not finished when " + intent.getAction()
@@ -282,7 +282,7 @@ public class ThemeOverlayController extends SystemUI implements Dumpable {
    public void start() {
        if (DEBUG) Log.d(TAG, "Start");
        final IntentFilter filter = new IntentFilter();
        filter.addAction(Intent.ACTION_USER_SWITCHED);
        filter.addAction(Intent.ACTION_USER_STARTED);
        filter.addAction(Intent.ACTION_MANAGED_PROFILE_ADDED);
        filter.addAction(Intent.ACTION_WALLPAPER_CHANGED);
        mBroadcastDispatcher.registerReceiver(mBroadcastReceiver, filter, mMainExecutor,
+7 −0
Original line number Diff line number Diff line
@@ -359,6 +359,13 @@ public class ThemeOverlayControllerTest extends SysuiTestCase {
                .applyCurrentUserOverlays(any(), any(), anyInt(), any());
    }

    @Test
    public void onUserSwitch_setsTheme() {
        mBroadcastReceiver.getValue().onReceive(null,
                new Intent(Intent.ACTION_USER_STARTED));
        verify(mThemeOverlayApplier).applyCurrentUserOverlays(any(), any(), anyInt(), any());
    }

    @Test
    public void onProfileAdded_setsTheme() {
        mBroadcastReceiver.getValue().onReceive(null,