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

Commit 52ef77fa authored by Dave Mankoff's avatar Dave Mankoff Committed by Android (Google) Code Review
Browse files

Merge changes from topic "b190746471-status-bar-refactor" into sc-v2-dev

* changes:
  Remove custom Handler from StatusBar.
  Move ActivityLaunchAnimator.KeyguardHandler internal to StatusBar.
  Move BatteryStateChangeCallback internal to StatusBar.
  Move ConfigurationListener to internal field in StatusBar.
parents 5ae8005c be3f39d1
Loading
Loading
Loading
Loading
+0 −4
Original line number Original line Diff line number Diff line
@@ -118,10 +118,6 @@ public class ShadeControllerImpl implements ShadeController {
                    + " flags=" + flags);
                    + " flags=" + flags);
        }
        }


        if ((flags & CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL) == 0) {
            getStatusBar().postHideRecentApps();
        }

        // TODO(b/62444020): remove when this bug is fixed
        // TODO(b/62444020): remove when this bug is fixed
        Log.v(TAG, "NotificationShadeWindow: " + getNotificationShadeWindowView()
        Log.v(TAG, "NotificationShadeWindow: " + getNotificationShadeWindowView()
                + " canPanelBeCollapsed(): "
                + " canPanelBeCollapsed(): "
+240 −254

File changed.

Preview size limit exceeded, changes collapsed.

+2 −21
Original line number Original line Diff line number Diff line
@@ -255,19 +255,9 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks {
        }
        }
    }
    }


    @Override
    public void preloadRecentApps() {
        mStatusBar.resetHandlerMsg(StatusBar.MSG_PRELOAD_RECENT_APPS);
    }

    @Override
    public void cancelPreloadRecentApps() {
        mStatusBar.resetHandlerMsg(StatusBar.MSG_CANCEL_PRELOAD_RECENT_APPS);
    }

    @Override
    @Override
    public void dismissKeyboardShortcutsMenu() {
    public void dismissKeyboardShortcutsMenu() {
        mStatusBar.resetHandlerMsg(StatusBar.MSG_DISMISS_KEYBOARD_SHORTCUTS_MENU);
        mStatusBar.resendMessage(StatusBar.MSG_DISMISS_KEYBOARD_SHORTCUTS_MENU);
    }
    }
    /**
    /**
     * State is one or more of the DISABLE constants from StatusBarManager.
     * State is one or more of the DISABLE constants from StatusBarManager.
@@ -330,13 +320,6 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks {
            }
            }
        }
        }


        if ((diff1 & StatusBarManager.DISABLE_RECENT) != 0) {
            if ((state1 & StatusBarManager.DISABLE_RECENT) != 0) {
                // close recents if it's visible
                mStatusBar.resetHandlerMsg(StatusBar.MSG_HIDE_RECENT_APPS);
            }
        }

        if ((diff1 & StatusBarManager.DISABLE_NOTIFICATION_ALERTS) != 0) {
        if ((diff1 & StatusBarManager.DISABLE_NOTIFICATION_ALERTS) != 0) {
            if (mStatusBar.areNotificationAlertsDisabled()) {
            if (mStatusBar.areNotificationAlertsDisabled()) {
                mHeadsUpManager.releaseAllImmediately();
                mHeadsUpManager.releaseAllImmediately();
@@ -544,9 +527,7 @@ public class StatusBarCommandQueueCallbacks implements CommandQueue.Callbacks {


    @Override
    @Override
    public void toggleKeyboardShortcutsMenu(int deviceId) {
    public void toggleKeyboardShortcutsMenu(int deviceId) {
        int msg = StatusBar.MSG_TOGGLE_KEYBOARD_SHORTCUTS_MENU;
        mStatusBar.resendMessage(new StatusBar.KeyboardShortcutsData(deviceId));
        mStatusBar.getHandler().removeMessages(msg);
        mStatusBar.getHandler().obtainMessage(msg, deviceId, 0).sendToTarget();
    }
    }


    @Override
    @Override
+9 −0
Original line number Original line Diff line number Diff line
@@ -33,6 +33,7 @@ import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.classifier.FalsingCollector;
import com.android.systemui.classifier.FalsingCollector;
import com.android.systemui.colorextraction.SysuiColorExtractor;
import com.android.systemui.colorextraction.SysuiColorExtractor;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.dagger.qualifiers.UiBackground;
import com.android.systemui.dagger.qualifiers.UiBackground;
import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.FeatureFlags;
@@ -103,6 +104,8 @@ import com.android.systemui.statusbar.policy.UserInfoControllerImpl;
import com.android.systemui.statusbar.policy.UserSwitcherController;
import com.android.systemui.statusbar.policy.UserSwitcherController;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.unfold.UnfoldLightRevealOverlayAnimation;
import com.android.systemui.unfold.UnfoldLightRevealOverlayAnimation;
import com.android.systemui.util.concurrency.DelayableExecutor;
import com.android.systemui.util.concurrency.MessageRouter;
import com.android.systemui.volume.VolumeComponent;
import com.android.systemui.volume.VolumeComponent;
import com.android.systemui.wmshell.BubblesManager;
import com.android.systemui.wmshell.BubblesManager;
import com.android.unfold.config.UnfoldTransitionConfig;
import com.android.unfold.config.UnfoldTransitionConfig;
@@ -217,6 +220,9 @@ public interface StatusBarPhoneModule {
            LockscreenShadeTransitionController transitionController,
            LockscreenShadeTransitionController transitionController,
            FeatureFlags featureFlags,
            FeatureFlags featureFlags,
            KeyguardUnlockAnimationController keyguardUnlockAnimationController,
            KeyguardUnlockAnimationController keyguardUnlockAnimationController,
            @Main Handler mainHandler,
            @Main DelayableExecutor delayableExecutor,
            @Main MessageRouter messageRouter,
            WallpaperManager wallpaperManager,
            WallpaperManager wallpaperManager,
            UnlockedScreenOffAnimationController unlockedScreenOffAnimationController,
            UnlockedScreenOffAnimationController unlockedScreenOffAnimationController,
            Optional<StartingSurface> startingSurfaceOptional,
            Optional<StartingSurface> startingSurfaceOptional,
@@ -307,6 +313,9 @@ public interface StatusBarPhoneModule {
                transitionController,
                transitionController,
                featureFlags,
                featureFlags,
                keyguardUnlockAnimationController,
                keyguardUnlockAnimationController,
                mainHandler,
                delayableExecutor,
                messageRouter,
                wallpaperManager,
                wallpaperManager,
                unlockedScreenOffAnimationController,
                unlockedScreenOffAnimationController,
                startingSurfaceOptional,
                startingSurfaceOptional,
+10 −13
Original line number Original line Diff line number Diff line
@@ -141,6 +141,7 @@ import com.android.systemui.statusbar.policy.UserSwitcherController;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.unfold.UnfoldLightRevealOverlayAnimation;
import com.android.systemui.unfold.UnfoldLightRevealOverlayAnimation;
import com.android.systemui.util.concurrency.FakeExecutor;
import com.android.systemui.util.concurrency.FakeExecutor;
import com.android.systemui.util.concurrency.MessageRouterImpl;
import com.android.systemui.util.time.FakeSystemClock;
import com.android.systemui.util.time.FakeSystemClock;
import com.android.systemui.volume.VolumeComponent;
import com.android.systemui.volume.VolumeComponent;
import com.android.systemui.wmshell.BubblesManager;
import com.android.systemui.wmshell.BubblesManager;
@@ -271,7 +272,9 @@ public class StatusBarTest extends SysuiTestCase {
    @Mock private OperatorNameViewController mOperatorNameViewController;
    @Mock private OperatorNameViewController mOperatorNameViewController;
    @Mock private OperatorNameViewController.Factory mOperatorNameViewControllerFactory;
    @Mock private OperatorNameViewController.Factory mOperatorNameViewControllerFactory;
    private ShadeController mShadeController;
    private ShadeController mShadeController;
    private FakeExecutor mUiBgExecutor = new FakeExecutor(new FakeSystemClock());
    private final FakeSystemClock mFakeSystemClock = new FakeSystemClock();
    private FakeExecutor mMainExecutor = new FakeExecutor(mFakeSystemClock);
    private FakeExecutor mUiBgExecutor = new FakeExecutor(mFakeSystemClock);
    private InitController mInitController = new InitController();
    private InitController mInitController = new InitController();


    @Before
    @Before
@@ -436,6 +439,9 @@ public class StatusBarTest extends SysuiTestCase {
                mLockscreenTransitionController,
                mLockscreenTransitionController,
                mFeatureFlags,
                mFeatureFlags,
                mKeyguardUnlockAnimationController,
                mKeyguardUnlockAnimationController,
                new Handler(TestableLooper.get(this).getLooper()),
                mMainExecutor,
                new MessageRouterImpl(mMainExecutor),
                mWallpaperManager,
                mWallpaperManager,
                mUnlockedScreenOffAnimationController,
                mUnlockedScreenOffAnimationController,
                Optional.of(mStartingSurface),
                Optional.of(mStartingSurface),
@@ -702,7 +708,7 @@ public class StatusBarTest extends SysuiTestCase {
        } catch (RemoteException e) {
        } catch (RemoteException e) {
            fail();
            fail();
        }
        }
        TestableLooper.get(this).processAllMessages();
        mMainExecutor.runAllReady();
    }
    }


    @Test
    @Test
@@ -721,7 +727,7 @@ public class StatusBarTest extends SysuiTestCase {
        } catch (RemoteException e) {
        } catch (RemoteException e) {
            fail();
            fail();
        }
        }
        TestableLooper.get(this).processAllMessages();
        mMainExecutor.runAllReady();
    }
    }


    @Test
    @Test
@@ -739,7 +745,7 @@ public class StatusBarTest extends SysuiTestCase {
        } catch (RemoteException e) {
        } catch (RemoteException e) {
            fail();
            fail();
        }
        }
        TestableLooper.get(this).processAllMessages();
        mMainExecutor.runAllReady();
    }
    }


    @Test
    @Test
@@ -753,15 +759,6 @@ public class StatusBarTest extends SysuiTestCase {
                new PrintWriter(new ByteArrayOutputStream()), "var", /* transitions= */ null);
                new PrintWriter(new ByteArrayOutputStream()), "var", /* transitions= */ null);
    }
    }


    @Test
    @RunWithLooper(setAsMainLooper = true)
    public void testUpdateKeyguardState_DoesNotCrash() {
        mStatusBar.setBarStateForTest(StatusBarState.KEYGUARD);
        when(mLockscreenUserManager.getCurrentProfiles()).thenReturn(
                new SparseArray<>());
        mStatusBar.onStateChanged(StatusBarState.SHADE);
    }

    @Test
    @Test
    public void testFingerprintNotification_UpdatesScrims() {
    public void testFingerprintNotification_UpdatesScrims() {
        mStatusBar.notifyBiometricAuthModeChanged();
        mStatusBar.notifyBiometricAuthModeChanged();