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

Commit c9bdb0e7 authored by Ben Lin's avatar Ben Lin Committed by Android (Google) Code Review
Browse files

Merge "Move more initialization logic into NotificationsControllerImpl."

parents 4fcd5529 2d70be9b
Loading
Loading
Loading
Loading
+12 −27
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.people.widget.PeopleSpaceWidgetManager
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper.SnoozeOption
import com.android.systemui.statusbar.NotificationListener
import com.android.systemui.statusbar.NotificationMediaManager
import com.android.systemui.statusbar.NotificationPresenter
import com.android.systemui.statusbar.notification.AnimatedImageNotificationManager
import com.android.systemui.statusbar.notification.NotifPipelineFlags
@@ -41,6 +42,7 @@ import com.android.systemui.statusbar.notification.collection.provider.DebugMode
import com.android.systemui.statusbar.notification.collection.render.NotifStackController
import com.android.systemui.statusbar.notification.interruption.HeadsUpController
import com.android.systemui.statusbar.notification.interruption.HeadsUpViewBinder
import com.android.systemui.statusbar.notification.logging.NotificationLogger
import com.android.systemui.statusbar.notification.row.NotifBindPipelineInitializer
import com.android.systemui.statusbar.notification.stack.NotificationListContainer
import com.android.systemui.statusbar.phone.CentralSurfaces
@@ -74,12 +76,14 @@ class NotificationsControllerImpl @Inject constructor(
    private val targetSdkResolver: TargetSdkResolver,
    private val newNotifPipelineInitializer: Lazy<NotifPipelineInitializer>,
    private val notifBindPipelineInitializer: NotifBindPipelineInitializer,
    private val notificationLogger: NotificationLogger,
    private val deviceProvisionedController: DeviceProvisionedController,
    private val notificationRowBinder: NotificationRowBinderImpl,
    private val bindEventManagerImpl: BindEventManagerImpl,
    private val remoteInputUriController: RemoteInputUriController,
    private val groupManagerLegacy: Lazy<NotificationGroupManagerLegacy>,
    private val groupAlertTransferHelper: NotificationGroupAlertTransferHelper,
    private val notificationsMediaManager: NotificationMediaManager,
    private val headsUpManager: HeadsUpManager,
    private val headsUpController: HeadsUpController,
    private val headsUpViewBinder: HeadsUpViewBinder,
@@ -118,34 +122,15 @@ class NotificationsControllerImpl @Inject constructor(
        notifBindPipelineInitializer.initialize()
        animatedImageNotificationManager.bind()

        if (INITIALIZE_NEW_PIPELINE) {
        newNotifPipelineInitializer.get().initialize(
                notificationListener,
                notificationRowBinder,
                listContainer,
                stackController)
        }

        if (notifPipelineFlags.isNewPipelineEnabled()) {
        targetSdkResolver.initialize(notifPipeline.get())
            // TODO
        } else {
            targetSdkResolver.initialize(entryManager)
            remoteInputUriController.attach(entryManager)
            groupAlertTransferHelper.bind(entryManager, groupManagerLegacy.get())
            bindEventManagerImpl.attachToLegacyPipeline(entryManager)
            headsUpManager.addListener(groupManagerLegacy.get())
            headsUpManager.addListener(groupAlertTransferHelper)
            headsUpController.attach(entryManager, headsUpManager)
            groupManagerLegacy.get().setHeadsUpManager(headsUpManager)
            groupAlertTransferHelper.setHeadsUpManager(headsUpManager)
            debugModeFilterProvider.registerInvalidationListener {
                entryManager.updateNotifications("debug mode filter changed")
            }

            entryManager.initialize(notificationListener, legacyRanker)
        }

        notificationsMediaManager.setUpWithPresenter(presenter)
        notificationLogger.setUpWithContainer(listContainer)
        peopleSpaceWidgetManager.attach(notificationListener)
    }

+0 −1
Original line number Diff line number Diff line
@@ -1151,7 +1151,6 @@ public class CentralSurfacesImpl extends CoreStartable implements

        // TODO: Deal with the ugliness that comes from having some of the status bar broken out
        // into fragments, but the rest here, it leaves some awkward lifecycle and whatnot.
        mNotificationLogger.setUpWithContainer(mNotifListContainer);
        mNotificationIconAreaController.setupShelf(mNotificationShelfController);
        mPanelExpansionStateManager.addExpansionListener(mWakeUpCoordinator);
        mUserSwitcherController.init(mNotificationShadeWindowView);
+0 −16
Original line number Diff line number Diff line
@@ -51,7 +51,6 @@ import com.android.systemui.statusbar.NotificationMediaManager;
import com.android.systemui.statusbar.NotificationPresenter;
import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.NotificationShadeWindowController;
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.SysuiStatusBarStateController;
import com.android.systemui.statusbar.notification.AboveShelfObserver;
@@ -88,7 +87,6 @@ class StatusBarNotificationPresenter implements NotificationPresenter,

    private final ActivityStarter mActivityStarter;
    private final KeyguardStateController mKeyguardStateController;
    private final NotificationViewHierarchyManager mViewHierarchyManager;
    private final NotificationLockscreenUserManager mLockscreenUserManager;
    private final SysuiStatusBarStateController mStatusBarStateController;
    private final NotifShadeEventSource mNotifShadeEventSource;
@@ -139,7 +137,6 @@ class StatusBarNotificationPresenter implements NotificationPresenter,
            ShadeController shadeController,
            LockscreenShadeTransitionController shadeTransitionController,
            CommandQueue commandQueue,
            NotificationViewHierarchyManager notificationViewHierarchyManager,
            NotificationLockscreenUserManager lockscreenUserManager,
            SysuiStatusBarStateController sysuiStatusBarStateController,
            NotifShadeEventSource notifShadeEventSource,
@@ -166,7 +163,6 @@ class StatusBarNotificationPresenter implements NotificationPresenter,
        mShadeController = shadeController;
        mShadeTransitionController = shadeTransitionController;
        mCommandQueue = commandQueue;
        mViewHierarchyManager = notificationViewHierarchyManager;
        mLockscreenUserManager = lockscreenUserManager;
        mStatusBarStateController = sysuiStatusBarStateController;
        mNotifShadeEventSource = notifShadeEventSource;
@@ -203,21 +199,10 @@ class StatusBarNotificationPresenter implements NotificationPresenter,

        initController.addPostInitTask(() -> {
            mKeyguardIndicationController.init();
            mViewHierarchyManager.setUpWithPresenter(this,
                    stackScrollerController.getNotifStackController(),
                    mNotifListContainer);
            mNotifShadeEventSource.setShadeEmptiedCallback(this::maybeClosePanelForShadeEmptied);
            mNotifShadeEventSource.setNotifRemovedByUserCallback(this::maybeEndAmbientPulse);
            if (!mNotifPipelineFlags.isNewPipelineEnabled()) {
                mEntryManager.setUpWithPresenter(this);
                mEntryManager.addNotificationLifetimeExtender(mHeadsUpManager);
                mEntryManager.addNotificationLifetimeExtender(mGutsManager);
                mEntryManager.addNotificationLifetimeExtenders(
                        remoteInputManager.getLifetimeExtenders());
            }
            notificationInterruptStateProvider.addSuppressor(mInterruptSuppressor);
            mLockscreenUserManager.setUpWithPresenter(this);
            mMediaManager.setUpWithPresenter(this);
            mGutsManager.setUpWithPresenter(
                    this, mNotifListContainer, mCheckSaveListener, mOnSettingsClickListener);
            // ForegroundServiceNotificationListener adds its listener in its constructor
@@ -329,7 +314,6 @@ class StatusBarNotificationPresenter implements NotificationPresenter,
            mShadeController.addPostCollapseAction(() -> updateNotificationViews(reason));
            return;
        }
        mViewHierarchyManager.updateNotificationViews();
        mNotificationPanel.updateNotificationViews(reason);
    }

+0 −2
Original line number Diff line number Diff line
@@ -46,7 +46,6 @@ import com.android.systemui.statusbar.NotificationLockscreenUserManager;
import com.android.systemui.statusbar.NotificationMediaManager;
import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.NotificationShadeWindowController;
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
import com.android.systemui.statusbar.SysuiStatusBarStateController;
import com.android.systemui.statusbar.notification.DynamicPrivacyController;
import com.android.systemui.statusbar.notification.NotifPipelineFlags;
@@ -121,7 +120,6 @@ public class StatusBarNotificationPresenterTest extends SysuiTestCase {
                mock(ShadeControllerImpl.class),
                mock(LockscreenShadeTransitionController.class),
                mCommandQueue,
                mock(NotificationViewHierarchyManager.class),
                mock(NotificationLockscreenUserManager.class),
                mock(SysuiStatusBarStateController.class),
                mock(NotifShadeEventSource.class),