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

Commit 534e7fe6 authored by Evan Laird's avatar Evan Laird
Browse files

Move status bar initialization into its own class

This CL attempts to extract the creation of the
CollapsedStatusBarFragment to its own StatusBarInitializer

Test: atest SystemUITests
Bug: 205609837
Change-Id: If39008a5e2d9de704b8bd8c6675b9bb2ecca8da8
parent 61527e37
Loading
Loading
Loading
Loading
+12 −1
Original line number Original line Diff line number Diff line
@@ -108,7 +108,18 @@ public class FragmentHostManager {
        return p;
        return p;
    }
    }


    public FragmentHostManager addTagListener(String tag, FragmentListener listener) {
    /**
     * Add a {@link FragmentListener} for a given tag
     *
     * @param tag string identifier for the fragment
     * @param listener the listener to register
     *
     * @return this
     */
    public FragmentHostManager addTagListener(
            @NonNull String tag,
            @NonNull FragmentListener listener
    ) {
        ArrayList<FragmentListener> listeners = mListeners.get(tag);
        ArrayList<FragmentListener> listeners = mListeners.get(tag);
        if (listeners == null) {
        if (listeners == null) {
            listeners = new ArrayList<>();
            listeners = new ArrayList<>();
+78 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2021 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.android.systemui.statusbar.core

import android.app.Fragment
import com.android.systemui.R
import com.android.systemui.fragments.FragmentHostManager
import com.android.systemui.statusbar.phone.PhoneStatusBarView
import com.android.systemui.statusbar.phone.PhoneStatusBarViewController
import com.android.systemui.statusbar.phone.dagger.StatusBarComponent
import com.android.systemui.statusbar.phone.dagger.StatusBarComponent.StatusBarScope
import com.android.systemui.statusbar.phone.fragment.CollapsedStatusBarFragment
import com.android.systemui.statusbar.window.StatusBarWindowController
import java.lang.IllegalStateException
import javax.inject.Inject

/**
 * Responsible for creating the StatusBar window and initializing the root components of that window
 * (see [CollapsedStatusBarFragment])
 */
@StatusBarScope
class StatusBarInitializer @Inject constructor(
    private val windowController: StatusBarWindowController
) {

    var statusBarViewUpdatedListener: OnStatusBarViewUpdatedListener? = null

    /**
     * Creates the status bar window and root views, and initializes the component
     */
    fun initializeStatusBar(
        sbComponent: StatusBarComponent
    ) {
        windowController.fragmentHostManager.addTagListener(
                CollapsedStatusBarFragment.TAG,
                object : FragmentHostManager.FragmentListener {
                    override fun onFragmentViewCreated(tag: String, fragment: Fragment) {
                        val statusBarFragmentComponent = (fragment as CollapsedStatusBarFragment)
                                .statusBarFragmentComponent ?: throw IllegalStateException()
                        val statusBarView = statusBarFragmentComponent.phoneStatusBarView
                        val sbViewController =
                                statusBarFragmentComponent.phoneStatusBarViewController

                        statusBarViewUpdatedListener
                                ?.onStatusBarViewUpdated(statusBarView, sbViewController)
                    }

                    override fun onFragmentViewDestroyed(tag: String?, fragment: Fragment?) {
                        // nop
                    }
                }).fragmentManager
                .beginTransaction()
                .replace(R.id.status_bar_container,
                        sbComponent.createCollapsedStatusBarFragment(),
                        CollapsedStatusBarFragment.TAG)
                .commit()
    }

    interface OnStatusBarViewUpdatedListener {
        fun onStatusBarViewUpdated(
            statusBarView: PhoneStatusBarView,
            statusBarViewController: PhoneStatusBarViewController
        )
    }
}
+6 −5
Original line number Original line Diff line number Diff line
@@ -16,7 +16,6 @@


package com.android.systemui.statusbar.phone;
package com.android.systemui.statusbar.phone;


import android.graphics.Point;
import android.graphics.Rect;
import android.graphics.Rect;
import android.view.View;
import android.view.View;


@@ -59,9 +58,7 @@ public class HeadsUpAppearanceController extends ViewController<HeadsUpStatusBar
    private final NotificationIconAreaController mNotificationIconAreaController;
    private final NotificationIconAreaController mNotificationIconAreaController;
    private final HeadsUpManagerPhone mHeadsUpManager;
    private final HeadsUpManagerPhone mHeadsUpManager;
    private final NotificationStackScrollLayoutController mStackScrollerController;
    private final NotificationStackScrollLayoutController mStackScrollerController;
    private final View mCenteredIconView;

    private final View mClockView;
    private final View mOperatorNameView;
    private final DarkIconDispatcher mDarkIconDispatcher;
    private final DarkIconDispatcher mDarkIconDispatcher;
    private final NotificationPanelViewController mNotificationPanelViewController;
    private final NotificationPanelViewController mNotificationPanelViewController;
    private final Consumer<ExpandableNotificationRow>
    private final Consumer<ExpandableNotificationRow>
@@ -71,6 +68,11 @@ public class HeadsUpAppearanceController extends ViewController<HeadsUpStatusBar
    private final StatusBarStateController mStatusBarStateController;
    private final StatusBarStateController mStatusBarStateController;
    private final CommandQueue mCommandQueue;
    private final CommandQueue mCommandQueue;
    private final NotificationWakeUpCoordinator mWakeUpCoordinator;
    private final NotificationWakeUpCoordinator mWakeUpCoordinator;

    private View mCenteredIconView;
    private View mClockView;
    private View mOperatorNameView;

    @VisibleForTesting
    @VisibleForTesting
    float mExpandedHeight;
    float mExpandedHeight;
    @VisibleForTesting
    @VisibleForTesting
@@ -85,7 +87,6 @@ public class HeadsUpAppearanceController extends ViewController<HeadsUpStatusBar
                }
                }
            };
            };
    private boolean mAnimationsEnabled = true;
    private boolean mAnimationsEnabled = true;
    Point mPoint;
    private KeyguardStateController mKeyguardStateController;
    private KeyguardStateController mKeyguardStateController;


    @Inject
    @Inject
+23 −55
Original line number Original line Diff line number Diff line
@@ -148,7 +148,6 @@ 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.DemoMode;
import com.android.systemui.demomode.DemoMode;
import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.demomode.DemoModeController;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.emergency.EmergencyGesture;
import com.android.systemui.emergency.EmergencyGesture;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.Flags;
import com.android.systemui.flags.Flags;
@@ -195,13 +194,12 @@ import com.android.systemui.statusbar.NotificationShadeDepthController;
import com.android.systemui.statusbar.NotificationShadeWindowController;
import com.android.systemui.statusbar.NotificationShadeWindowController;
import com.android.systemui.statusbar.NotificationShelfController;
import com.android.systemui.statusbar.NotificationShelfController;
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
import com.android.systemui.statusbar.OperatorNameViewController;
import com.android.systemui.statusbar.PowerButtonReveal;
import com.android.systemui.statusbar.PowerButtonReveal;
import com.android.systemui.statusbar.PulseExpansionHandler;
import com.android.systemui.statusbar.PulseExpansionHandler;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.SysuiStatusBarStateController;
import com.android.systemui.statusbar.SysuiStatusBarStateController;
import com.android.systemui.statusbar.connectivity.NetworkController;
import com.android.systemui.statusbar.connectivity.NetworkController;
import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler;
import com.android.systemui.statusbar.core.StatusBarInitializer;
import com.android.systemui.statusbar.notification.DynamicPrivacyController;
import com.android.systemui.statusbar.notification.DynamicPrivacyController;
import com.android.systemui.statusbar.notification.NotifPipelineFlags;
import com.android.systemui.statusbar.notification.NotifPipelineFlags;
import com.android.systemui.statusbar.notification.NotificationActivityStarter;
import com.android.systemui.statusbar.notification.NotificationActivityStarter;
@@ -221,9 +219,6 @@ import com.android.systemui.statusbar.notification.stack.NotificationStackScroll
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController;
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController;
import com.android.systemui.statusbar.phone.dagger.StatusBarComponent;
import com.android.systemui.statusbar.phone.dagger.StatusBarComponent;
import com.android.systemui.statusbar.phone.dagger.StatusBarPhoneModule;
import com.android.systemui.statusbar.phone.dagger.StatusBarPhoneModule;
import com.android.systemui.statusbar.phone.fragment.CollapsedStatusBarFragment;
import com.android.systemui.statusbar.phone.fragment.CollapsedStatusBarFragmentLogger;
import com.android.systemui.statusbar.phone.fragment.dagger.StatusBarFragmentComponent;
import com.android.systemui.statusbar.phone.ongoingcall.OngoingCallController;
import com.android.systemui.statusbar.phone.ongoingcall.OngoingCallController;
import com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManager;
import com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManager;
import com.android.systemui.statusbar.policy.BatteryController;
import com.android.systemui.statusbar.policy.BatteryController;
@@ -237,7 +232,6 @@ import com.android.systemui.statusbar.policy.KeyguardStateController;
import com.android.systemui.statusbar.policy.UserInfoControllerImpl;
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.statusbar.window.StatusBarWindowController;
import com.android.systemui.statusbar.window.StatusBarWindowController;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.util.DumpUtilsKt;
import com.android.systemui.util.DumpUtilsKt;
import com.android.systemui.util.WallpaperController;
import com.android.systemui.util.WallpaperController;
import com.android.systemui.util.concurrency.DelayableExecutor;
import com.android.systemui.util.concurrency.DelayableExecutor;
@@ -458,7 +452,6 @@ public class StatusBar extends CoreStartable implements
    @Nullable
    @Nullable
    protected LockscreenWallpaper mLockscreenWallpaper;
    protected LockscreenWallpaper mLockscreenWallpaper;
    private final AutoHideController mAutoHideController;
    private final AutoHideController mAutoHideController;
    private final CollapsedStatusBarFragmentLogger mCollapsedStatusBarFragmentLogger;


    private final Point mCurrentDisplaySize = new Point();
    private final Point mCurrentDisplaySize = new Point();


@@ -509,10 +502,7 @@ public class StatusBar extends CoreStartable implements
    private final DemoModeController mDemoModeController;
    private final DemoModeController mDemoModeController;
    private final NotificationsController mNotificationsController;
    private final NotificationsController mNotificationsController;
    private final OngoingCallController mOngoingCallController;
    private final OngoingCallController mOngoingCallController;
    private final SystemStatusAnimationScheduler mAnimationScheduler;
    private final StatusBarSignalPolicy mStatusBarSignalPolicy;
    private final StatusBarSignalPolicy mStatusBarSignalPolicy;
    private final StatusBarLocationPublisher mStatusBarLocationPublisher;
    private final StatusBarIconController mStatusBarIconController;
    private final StatusBarHideIconsForBouncerManager mStatusBarHideIconsForBouncerManager;
    private final StatusBarHideIconsForBouncerManager mStatusBarHideIconsForBouncerManager;


    // expanded notifications
    // expanded notifications
@@ -522,7 +512,6 @@ public class StatusBar extends CoreStartable implements
    // settings
    // settings
    private QSPanelController mQSPanelController;
    private QSPanelController mQSPanelController;


    private final OperatorNameViewController.Factory mOperatorNameViewControllerFactory;
    KeyguardIndicationController mKeyguardIndicationController;
    KeyguardIndicationController mKeyguardIndicationController;


    private View mReportRejectedTouch;
    private View mReportRejectedTouch;
@@ -547,7 +536,6 @@ public class StatusBar extends CoreStartable implements
    private final KeyguardUnlockAnimationController mKeyguardUnlockAnimationController;
    private final KeyguardUnlockAnimationController mKeyguardUnlockAnimationController;
    private final MessageRouter mMessageRouter;
    private final MessageRouter mMessageRouter;
    private final WallpaperManager mWallpaperManager;
    private final WallpaperManager mWallpaperManager;
    private final TunerService mTunerService;


    private StatusBarComponent mStatusBarComponent;
    private StatusBarComponent mStatusBarComponent;


@@ -752,7 +740,6 @@ public class StatusBar extends CoreStartable implements
            DozeScrimController dozeScrimController,
            DozeScrimController dozeScrimController,
            VolumeComponent volumeComponent,
            VolumeComponent volumeComponent,
            CommandQueue commandQueue,
            CommandQueue commandQueue,
            CollapsedStatusBarFragmentLogger collapsedStatusBarFragmentLogger,
            StatusBarComponent.Factory statusBarComponentFactory,
            StatusBarComponent.Factory statusBarComponentFactory,
            PluginManager pluginManager,
            PluginManager pluginManager,
            Optional<LegacySplitScreen> splitScreenOptional,
            Optional<LegacySplitScreen> splitScreenOptional,
@@ -767,7 +754,6 @@ public class StatusBar extends CoreStartable implements
            KeyguardDismissUtil keyguardDismissUtil,
            KeyguardDismissUtil keyguardDismissUtil,
            ExtensionController extensionController,
            ExtensionController extensionController,
            UserInfoControllerImpl userInfoControllerImpl,
            UserInfoControllerImpl userInfoControllerImpl,
            OperatorNameViewController.Factory operatorNameViewControllerFactory,
            PhoneStatusBarPolicy phoneStatusBarPolicy,
            PhoneStatusBarPolicy phoneStatusBarPolicy,
            KeyguardIndicationController keyguardIndicationController,
            KeyguardIndicationController keyguardIndicationController,
            DemoModeController demoModeController,
            DemoModeController demoModeController,
@@ -778,9 +764,6 @@ public class StatusBar extends CoreStartable implements
            ScreenOffAnimationController screenOffAnimationController,
            ScreenOffAnimationController screenOffAnimationController,
            WallpaperController wallpaperController,
            WallpaperController wallpaperController,
            OngoingCallController ongoingCallController,
            OngoingCallController ongoingCallController,
            SystemStatusAnimationScheduler animationScheduler,
            StatusBarLocationPublisher locationPublisher,
            StatusBarIconController statusBarIconController,
            StatusBarHideIconsForBouncerManager statusBarHideIconsForBouncerManager,
            StatusBarHideIconsForBouncerManager statusBarHideIconsForBouncerManager,
            LockscreenShadeTransitionController lockscreenShadeTransitionController,
            LockscreenShadeTransitionController lockscreenShadeTransitionController,
            FeatureFlags featureFlags,
            FeatureFlags featureFlags,
@@ -790,8 +773,6 @@ public class StatusBar extends CoreStartable implements
            @Main MessageRouter messageRouter,
            @Main MessageRouter messageRouter,
            WallpaperManager wallpaperManager,
            WallpaperManager wallpaperManager,
            Optional<StartingSurface> startingSurfaceOptional,
            Optional<StartingSurface> startingSurfaceOptional,
            TunerService tunerService,
            DumpManager dumpManager,
            ActivityLaunchAnimator activityLaunchAnimator,
            ActivityLaunchAnimator activityLaunchAnimator,
            NotifPipelineFlags notifPipelineFlags) {
            NotifPipelineFlags notifPipelineFlags) {
        super(context);
        super(context);
@@ -806,7 +787,6 @@ public class StatusBar extends CoreStartable implements
        mKeyguardBypassController = keyguardBypassController;
        mKeyguardBypassController = keyguardBypassController;
        mKeyguardStateController = keyguardStateController;
        mKeyguardStateController = keyguardStateController;
        mHeadsUpManager = headsUpManagerPhone;
        mHeadsUpManager = headsUpManagerPhone;
        mOperatorNameViewControllerFactory = operatorNameViewControllerFactory;
        mKeyguardIndicationController = keyguardIndicationController;
        mKeyguardIndicationController = keyguardIndicationController;
        mStatusBarTouchableRegionManager = statusBarTouchableRegionManager;
        mStatusBarTouchableRegionManager = statusBarTouchableRegionManager;
        mDynamicPrivacyController = dynamicPrivacyController;
        mDynamicPrivacyController = dynamicPrivacyController;
@@ -856,7 +836,6 @@ public class StatusBar extends CoreStartable implements
        mNotificationShadeDepthControllerLazy = notificationShadeDepthControllerLazy;
        mNotificationShadeDepthControllerLazy = notificationShadeDepthControllerLazy;
        mVolumeComponent = volumeComponent;
        mVolumeComponent = volumeComponent;
        mCommandQueue = commandQueue;
        mCommandQueue = commandQueue;
        mCollapsedStatusBarFragmentLogger = collapsedStatusBarFragmentLogger;
        mStatusBarComponentFactory = statusBarComponentFactory;
        mStatusBarComponentFactory = statusBarComponentFactory;
        mPluginManager = pluginManager;
        mPluginManager = pluginManager;
        mSplitScreenOptional = splitScreenOptional;
        mSplitScreenOptional = splitScreenOptional;
@@ -875,10 +854,7 @@ public class StatusBar extends CoreStartable implements
        mBrightnessSliderFactory = brightnessSliderFactory;
        mBrightnessSliderFactory = brightnessSliderFactory;
        mWallpaperController = wallpaperController;
        mWallpaperController = wallpaperController;
        mOngoingCallController = ongoingCallController;
        mOngoingCallController = ongoingCallController;
        mAnimationScheduler = animationScheduler;
        mStatusBarSignalPolicy = statusBarSignalPolicy;
        mStatusBarSignalPolicy = statusBarSignalPolicy;
        mStatusBarLocationPublisher = locationPublisher;
        mStatusBarIconController = statusBarIconController;
        mStatusBarHideIconsForBouncerManager = statusBarHideIconsForBouncerManager;
        mStatusBarHideIconsForBouncerManager = statusBarHideIconsForBouncerManager;
        mFeatureFlags = featureFlags;
        mFeatureFlags = featureFlags;
        mKeyguardUnlockAnimationController = keyguardUnlockAnimationController;
        mKeyguardUnlockAnimationController = keyguardUnlockAnimationController;
@@ -886,7 +862,6 @@ public class StatusBar extends CoreStartable implements
        mMainExecutor = delayableExecutor;
        mMainExecutor = delayableExecutor;
        mMessageRouter = messageRouter;
        mMessageRouter = messageRouter;
        mWallpaperManager = wallpaperManager;
        mWallpaperManager = wallpaperManager;
        mTunerService = tunerService;


        mLockscreenShadeTransitionController = lockscreenShadeTransitionController;
        mLockscreenShadeTransitionController = lockscreenShadeTransitionController;
        mStartingSurfaceOptional = startingSurfaceOptional;
        mStartingSurfaceOptional = startingSurfaceOptional;
@@ -1145,19 +1120,18 @@ public class StatusBar extends CoreStartable implements
        // Allow plugins to reference DarkIconDispatcher and StatusBarStateController
        // Allow plugins to reference DarkIconDispatcher and StatusBarStateController
        mPluginDependencyProvider.allowPluginDependency(DarkIconDispatcher.class);
        mPluginDependencyProvider.allowPluginDependency(DarkIconDispatcher.class);
        mPluginDependencyProvider.allowPluginDependency(StatusBarStateController.class);
        mPluginDependencyProvider.allowPluginDependency(StatusBarStateController.class);
        mStatusBarWindowController.getFragmentHostManager()
                .addTagListener(CollapsedStatusBarFragment.TAG, (tag, fragment) -> {
                    StatusBarFragmentComponent statusBarFragmentComponent =
                            ((CollapsedStatusBarFragment) fragment).getStatusBarFragmentComponent();
                    if (statusBarFragmentComponent == null) {
                        throw new IllegalStateException(
                                "CollapsedStatusBarFragment should have a valid component");
                    }

                    mStatusBarView = statusBarFragmentComponent.getPhoneStatusBarView();
                    mPhoneStatusBarViewController =
                            statusBarFragmentComponent.getPhoneStatusBarViewController();


        // Set up CollapsedStatusBarFragment and PhoneStatusBarView
        StatusBarInitializer initializer = mStatusBarComponent.getStatusBarInitializer();
        initializer.setStatusBarViewUpdatedListener(
                new StatusBarInitializer.OnStatusBarViewUpdatedListener() {
                    @Override
                    public void onStatusBarViewUpdated(
                            @NonNull PhoneStatusBarView statusBarView,
                            @NonNull PhoneStatusBarViewController statusBarViewController) {
                        mStatusBarView = statusBarView;
                        mPhoneStatusBarViewController = statusBarViewController;
                        mNotificationShadeWindowViewController.setStatusBarView(mStatusBarView);
                        // Ensure we re-propagate panel expansion values to the panel controller and
                        // Ensure we re-propagate panel expansion values to the panel controller and
                        // any listeners it may have, such as PanelBar. This will also ensure we
                        // any listeners it may have, such as PanelBar. This will also ensure we
                        // re-display the notification panel if necessary (for example, if
                        // re-display the notification panel if necessary (for example, if
@@ -1165,14 +1139,10 @@ public class StatusBar extends CoreStartable implements
                        // displayed).
                        // displayed).
                        mNotificationPanelViewController.updatePanelExpansionAndVisibility();
                        mNotificationPanelViewController.updatePanelExpansionAndVisibility();
                        setBouncerShowingForStatusBarComponents(mBouncerShowing);
                        setBouncerShowingForStatusBarComponents(mBouncerShowing);
                    mNotificationShadeWindowViewController.setStatusBarView(mStatusBarView);
                        checkBarModes();
                        checkBarModes();
                }).getFragmentManager()
                    }
                .beginTransaction()
                });
                .replace(R.id.status_bar_container,
        initializer.initializeStatusBar(mStatusBarComponent);
                        mStatusBarComponent.createCollapsedStatusBarFragment(),
                        CollapsedStatusBarFragment.TAG)
                .commit();


        mHeadsUpManager.setup(mVisualStabilityManager);
        mHeadsUpManager.setup(mVisualStabilityManager);
        mStatusBarTouchableRegionManager.setup(this, mNotificationShadeWindowView);
        mStatusBarTouchableRegionManager.setup(this, mNotificationShadeWindowView);
@@ -1547,8 +1517,6 @@ public class StatusBar extends CoreStartable implements


        mHeadsUpManager.addListener(mStatusBarComponent.getStatusBarHeadsUpChangeListener());
        mHeadsUpManager.addListener(mStatusBarComponent.getStatusBarHeadsUpChangeListener());


        mHeadsUpManager.addListener(mStatusBarComponent.getStatusBarHeadsUpChangeListener());

        // Listen for demo mode changes
        // Listen for demo mode changes
        mDemoModeController.addCallback(mDemoModeCallback);
        mDemoModeController.addCallback(mDemoModeCallback);


+7 −0
Original line number Original line Diff line number Diff line
@@ -23,6 +23,7 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
import com.android.keyguard.LockIconViewController;
import com.android.keyguard.LockIconViewController;
import com.android.systemui.biometrics.AuthRippleController;
import com.android.systemui.biometrics.AuthRippleController;
import com.android.systemui.statusbar.NotificationShelfController;
import com.android.systemui.statusbar.NotificationShelfController;
import com.android.systemui.statusbar.core.StatusBarInitializer;
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController;
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController;
import com.android.systemui.statusbar.phone.NotificationPanelViewController;
import com.android.systemui.statusbar.phone.NotificationPanelViewController;
import com.android.systemui.statusbar.phone.NotificationShadeWindowView;
import com.android.systemui.statusbar.phone.NotificationShadeWindowView;
@@ -131,4 +132,10 @@ public interface StatusBarComponent {
     */
     */
    @Named(STATUS_BAR_FRAGMENT)
    @Named(STATUS_BAR_FRAGMENT)
    CollapsedStatusBarFragment createCollapsedStatusBarFragment();
    CollapsedStatusBarFragment createCollapsedStatusBarFragment();

    /**
     * Creates a StatusBarInitializer
     */
    @StatusBarScope
    StatusBarInitializer getStatusBarInitializer();
}
}
Loading