diff options
15 files changed, 96 insertions, 32 deletions
diff --git a/packages/CarSystemUI/src/com/android/systemui/CarSystemUIModule.java b/packages/CarSystemUI/src/com/android/systemui/CarSystemUIModule.java index d3a6cde66e84..a65cf2e5083e 100644 --- a/packages/CarSystemUI/src/com/android/systemui/CarSystemUIModule.java +++ b/packages/CarSystemUI/src/com/android/systemui/CarSystemUIModule.java @@ -28,6 +28,7 @@ import com.android.systemui.dock.DockManager; import com.android.systemui.dock.DockManagerImpl; import com.android.systemui.power.EnhancedEstimates; import com.android.systemui.power.EnhancedEstimatesImpl; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.NotificationLockscreenUserManager; import com.android.systemui.statusbar.NotificationLockscreenUserManagerImpl; import com.android.systemui.statusbar.car.CarStatusBar; @@ -70,6 +71,12 @@ abstract class CarSystemUIModule { @Singleton @Provides + static Divider provideDivider(Context context) { + return new Divider(context); + } + + @Singleton + @Provides @Named(LEAK_REPORT_EMAIL_NAME) static String provideLeakReportEmail() { return "buganizer-system+181579@google.com"; diff --git a/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java b/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java index fc0b317d04ff..ab63b06cffa9 100644 --- a/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java +++ b/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java @@ -81,6 +81,7 @@ import com.android.systemui.plugins.FalsingManager; import com.android.systemui.plugins.qs.QS; import com.android.systemui.qs.car.CarQSFragment; import com.android.systemui.shared.plugins.PluginManager; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.statusbar.FlingAnimationUtils; @@ -136,6 +137,7 @@ import com.android.systemui.statusbar.policy.ZenModeController; import java.io.FileDescriptor; import java.io.PrintWriter; import java.util.Map; +import java.util.Optional; import javax.inject.Named; @@ -302,6 +304,7 @@ public class CarStatusBar extends StatusBar implements CarBatteryController.Batt CommandQueue commandQueue, PluginManager pluginManager, RemoteInputUriController remoteInputUriController, + Optional<Divider> dividerOptional, SuperStatusBarViewFactory superStatusBarViewFactory, /* Car Settings injected components. */ CarNavigationBarController carNavigationBarController) { @@ -372,6 +375,7 @@ public class CarStatusBar extends StatusBar implements CarBatteryController.Batt commandQueue, pluginManager, remoteInputUriController, + dividerOptional, superStatusBarViewFactory); mScrimController = scrimController; mCarNavigationBarController = carNavigationBarController; diff --git a/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBarModule.java b/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBarModule.java index b19fae891a58..7de2212eef4d 100644 --- a/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBarModule.java +++ b/packages/CarSystemUI/src/com/android/systemui/statusbar/car/CarStatusBarModule.java @@ -38,6 +38,7 @@ import com.android.systemui.keyguard.WakefulnessLifecycle; import com.android.systemui.navigationbar.car.CarNavigationBarController; import com.android.systemui.plugins.FalsingManager; import com.android.systemui.shared.plugins.PluginManager; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.statusbar.NavigationBarController; @@ -87,6 +88,8 @@ import com.android.systemui.statusbar.policy.RemoteInputUriController; import com.android.systemui.statusbar.policy.UserSwitcherController; import com.android.systemui.statusbar.policy.ZenModeController; +import java.util.Optional; + import javax.inject.Named; import javax.inject.Singleton; @@ -170,6 +173,7 @@ public class CarStatusBarModule { CommandQueue commandQueue, PluginManager pluginManager, RemoteInputUriController remoteInputUriController, + Optional<Divider> dividerOptional, SuperStatusBarViewFactory superStatusBarViewFactory, CarNavigationBarController carNavigationBarController) { return new CarStatusBar( @@ -238,6 +242,7 @@ public class CarStatusBarModule { commandQueue, pluginManager, remoteInputUriController, + dividerOptional, superStatusBarViewFactory, carNavigationBarController); } diff --git a/packages/SystemUI/src/com/android/systemui/dagger/SystemUIBinder.java b/packages/SystemUI/src/com/android/systemui/dagger/SystemUIBinder.java index 9f5493720bef..3cf14d65e5b8 100644 --- a/packages/SystemUI/src/com/android/systemui/dagger/SystemUIBinder.java +++ b/packages/SystemUI/src/com/android/systemui/dagger/SystemUIBinder.java @@ -28,6 +28,8 @@ import com.android.systemui.pip.PipUI; import com.android.systemui.power.PowerUI; import com.android.systemui.recents.Recents; import com.android.systemui.recents.RecentsModule; +import com.android.systemui.shortcut.ShortcutKeyDispatcher; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.notification.InstantAppNotifier; import com.android.systemui.statusbar.phone.StatusBar; import com.android.systemui.statusbar.phone.StatusBarModule; @@ -52,11 +54,17 @@ public abstract class SystemUIBinder { @ClassKey(AuthController.class) public abstract SystemUI bindAuthController(AuthController service); + /** Inject into Divider. */ + @Binds + @IntoMap + @ClassKey(Divider.class) + public abstract SystemUI bindDivider(Divider sysui); + /** Inject into GarbageMonitor.Service. */ @Binds @IntoMap @ClassKey(GarbageMonitor.Service.class) - public abstract SystemUI bindGarbageMonitorService(GarbageMonitor.Service service); + public abstract SystemUI bindGarbageMonitorService(GarbageMonitor.Service sysui); /** Inject into GlobalActionsComponent. */ @Binds @@ -106,6 +114,12 @@ public abstract class SystemUIBinder { @ClassKey(ScreenDecorations.class) public abstract SystemUI bindScreenDecorations(ScreenDecorations sysui); + /** Inject into ShortcutKeyDispatcher. */ + @Binds + @IntoMap + @ClassKey(ShortcutKeyDispatcher.class) + public abstract SystemUI bindsShortcutKeyDispatcher(ShortcutKeyDispatcher sysui); + /** Inject into SizeCompatModeActivityController. */ @Binds @IntoMap diff --git a/packages/SystemUI/src/com/android/systemui/dagger/SystemUIDefaultModule.java b/packages/SystemUI/src/com/android/systemui/dagger/SystemUIDefaultModule.java index 7b8d3bc4a121..fd2824d8845f 100644 --- a/packages/SystemUI/src/com/android/systemui/dagger/SystemUIDefaultModule.java +++ b/packages/SystemUI/src/com/android/systemui/dagger/SystemUIDefaultModule.java @@ -19,12 +19,15 @@ package com.android.systemui.dagger; import static com.android.systemui.Dependency.ALLOW_NOTIFICATION_LONG_PRESS_NAME; import static com.android.systemui.Dependency.LEAK_REPORT_EMAIL_NAME; +import android.content.Context; + import androidx.annotation.Nullable; import com.android.systemui.dock.DockManager; import com.android.systemui.dock.DockManagerImpl; import com.android.systemui.power.EnhancedEstimates; import com.android.systemui.power.EnhancedEstimatesImpl; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.NotificationLockscreenUserManager; import com.android.systemui.statusbar.NotificationLockscreenUserManagerImpl; import com.android.systemui.statusbar.notification.collection.NotificationData; @@ -77,4 +80,10 @@ abstract class SystemUIDefaultModule { static boolean provideAllowNotificationLongPress() { return true; } + + @Singleton + @Provides + static Divider provideDivider(Context context) { + return new Divider(context); + } } diff --git a/packages/SystemUI/src/com/android/systemui/dagger/SystemUIModule.java b/packages/SystemUI/src/com/android/systemui/dagger/SystemUIModule.java index b3a5181d1ca5..a248c7fe4bbb 100644 --- a/packages/SystemUI/src/com/android/systemui/dagger/SystemUIModule.java +++ b/packages/SystemUI/src/com/android/systemui/dagger/SystemUIModule.java @@ -25,6 +25,7 @@ import com.android.systemui.DumpController; import com.android.systemui.assist.AssistModule; import com.android.systemui.model.SysUiState; import com.android.systemui.plugins.statusbar.StatusBarStateController; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.notification.people.PeopleHubModule; import com.android.systemui.statusbar.phone.KeyguardLiftController; @@ -75,5 +76,8 @@ public abstract class SystemUIModule { abstract CommandQueue optionalCommandQueue(); @BindsOptionalOf + abstract Divider optionalDivider(); + + @BindsOptionalOf abstract StatusBar optionalStatusBar(); } diff --git a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyRecentsImpl.java b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyRecentsImpl.java index 7f11e56ba168..60bc6b6855e6 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyRecentsImpl.java +++ b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyRecentsImpl.java @@ -57,8 +57,8 @@ public class OverviewProxyRecentsImpl implements RecentsImplementation { private final static String TAG = "OverviewProxyRecentsImpl"; @Nullable private final Lazy<StatusBar> mStatusBarLazy; + private final Optional<Divider> mDividerOptional; - private SysUiServiceProvider mSysUiServiceProvider; private Context mContext; private Handler mHandler; private TrustManager mTrustManager; @@ -66,14 +66,15 @@ public class OverviewProxyRecentsImpl implements RecentsImplementation { @SuppressWarnings("OptionalUsedAsFieldOrParameterType") @Inject - public OverviewProxyRecentsImpl(Optional<Lazy<StatusBar>> statusBarLazy) { + public OverviewProxyRecentsImpl(Optional<Lazy<StatusBar>> statusBarLazy, + Optional<Divider> dividerOptional) { mStatusBarLazy = statusBarLazy.orElse(null); + mDividerOptional = dividerOptional; } @Override public void onStart(Context context, SysUiServiceProvider sysUiServiceProvider) { mContext = context; - mSysUiServiceProvider = sysUiServiceProvider; mHandler = new Handler(); mTrustManager = (TrustManager) context.getSystemService(Context.TRUST_SERVICE); mOverviewProxyService = Dependency.get(OverviewProxyService.class); @@ -164,10 +165,8 @@ public class OverviewProxyRecentsImpl implements RecentsImplementation { runningTask.id, stackCreateMode, initialBounds)) { // The overview service is handling split screen, so just skip the wait for the // first draw and notify the divider to start animating now - final Divider divider = mSysUiServiceProvider.getComponent(Divider.class); - if (divider != null) { - divider.onRecentsDrawn(); - } + mDividerOptional.ifPresent(Divider::onRecentsDrawn); + return true; } } else { diff --git a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java index 3fc139882693..ba9fc3da10df 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java +++ b/packages/SystemUI/src/com/android/systemui/recents/OverviewProxyService.java @@ -80,6 +80,7 @@ import java.io.FileDescriptor; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; +import java.util.Optional; import javax.inject.Inject; import javax.inject.Singleton; @@ -102,6 +103,7 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis private final Context mContext; private final PipUI mPipUI; + private final Optional<Divider> mDividerOptional; private SysUiState mSysUiState; private final Handler mHandler; private final NavigationBarController mNavBarController; @@ -208,10 +210,7 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis } long token = Binder.clearCallingIdentity(); try { - Divider divider = SysUiServiceProvider.getComponent(mContext, Divider.class); - if (divider != null) { - divider.onDockedFirstAnimationFrame(); - } + mDividerOptional.ifPresent(Divider::onDockedFirstAnimationFrame); } finally { Binder.restoreCallingIdentity(token); } @@ -241,11 +240,9 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis } long token = Binder.clearCallingIdentity(); try { - Divider divider = SysUiServiceProvider.getComponent(mContext, Divider.class); - if (divider != null) { - return divider.getView().getNonMinimizedSplitScreenSecondaryBounds(); - } - return null; + return mDividerOptional.map( + divider -> divider.getView().getNonMinimizedSplitScreenSecondaryBounds()) + .orElse(null); } finally { Binder.restoreCallingIdentity(token); } @@ -475,11 +472,12 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis private final IBinder.DeathRecipient mOverviewServiceDeathRcpt = this::cleanupAfterDeath; + @SuppressWarnings("OptionalUsedAsFieldOrParameterType") @Inject public OverviewProxyService(Context context, DeviceProvisionedController provisionController, NavigationBarController navBarController, NavigationModeController navModeController, - StatusBarWindowController statusBarWinController, - SysUiState sysUiState, PipUI pipUI) { + StatusBarWindowController statusBarWinController, SysUiState sysUiState, PipUI pipUI, + Optional<Divider> dividerOptional) { mContext = context; mPipUI = pipUI; mHandler = new Handler(); @@ -487,6 +485,7 @@ public class OverviewProxyService implements CallbackController<OverviewProxyLis mStatusBarWinController = statusBarWinController; mDeviceProvisionedController = provisionController; mConnectionBackoffAttempts = 0; + mDividerOptional = dividerOptional; mRecentsComponentName = ComponentName.unflattenFromString(context.getString( com.android.internal.R.string.config_recentsComponentName)); mQuickStepIntent = new Intent(ACTION_QUICKSTEP) diff --git a/packages/SystemUI/src/com/android/systemui/shortcut/ShortcutKeyDispatcher.java b/packages/SystemUI/src/com/android/systemui/shortcut/ShortcutKeyDispatcher.java index df9791d1bd37..a571f011fff3 100644 --- a/packages/SystemUI/src/com/android/systemui/shortcut/ShortcutKeyDispatcher.java +++ b/packages/SystemUI/src/com/android/systemui/shortcut/ShortcutKeyDispatcher.java @@ -34,13 +34,18 @@ import com.android.systemui.recents.Recents; import com.android.systemui.stackdivider.Divider; import com.android.systemui.stackdivider.DividerView; +import javax.inject.Inject; +import javax.inject.Singleton; + /** * Dispatches shortcut to System UI components */ +@Singleton public class ShortcutKeyDispatcher extends SystemUI implements ShortcutKeyServiceProxy.Callbacks { private static final String TAG = "ShortcutKeyDispatcher"; + private final Divider mDivider; private ShortcutKeyServiceProxy mShortcutKeyServiceProxy = new ShortcutKeyServiceProxy(this); private IWindowManager mWindowManagerService = WindowManagerGlobal.getWindowManagerService(); @@ -53,8 +58,10 @@ public class ShortcutKeyDispatcher extends SystemUI protected final long SC_DOCK_LEFT = META_MASK | KeyEvent.KEYCODE_LEFT_BRACKET; protected final long SC_DOCK_RIGHT = META_MASK | KeyEvent.KEYCODE_RIGHT_BRACKET; - public ShortcutKeyDispatcher(Context context) { + @Inject + public ShortcutKeyDispatcher(Context context, Divider divider) { super(context); + mDivider = divider; } /** @@ -95,7 +102,7 @@ public class ShortcutKeyDispatcher extends SystemUI : SPLIT_SCREEN_CREATE_MODE_BOTTOM_OR_RIGHT, null, -1); } else { // If there is already a docked window, we respond by resizing the docking pane. - DividerView dividerView = getComponent(Divider.class).getView(); + DividerView dividerView = mDivider.getView(); DividerSnapAlgorithm snapAlgorithm = dividerView.getSnapAlgorithm(); int dividerPosition = dividerView.getCurrentPosition(); DividerSnapAlgorithm.SnapTarget currentTarget = diff --git a/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java b/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java index c8b2b6aee0b3..d12f3ee5a1ec 100644 --- a/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java +++ b/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java @@ -59,7 +59,6 @@ public class Divider extends SystemUI implements DividerView.DividerCallbacks { public void start() { mWindowManager = new DividerWindowManager(mContext); update(mContext.getResources().getConfiguration()); - putComponent(Divider.class, this); mDockDividerVisibilityListener = new DockDividerVisibilityListener(); try { WindowManagerGlobal.getWindowManagerService().registerDockedStackListener( diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarFragment.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarFragment.java index 816327fe19bd..51b1bc72bda3 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarFragment.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarFragment.java @@ -163,7 +163,7 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback private int mDisabledFlags2; private StatusBar mStatusBar; private Recents mRecents; - private Divider mDivider; + private final Divider mDivider; private WindowManager mWindowManager; private final CommandQueue mCommandQueue; private long mLastLockToAppLongPress; @@ -266,7 +266,8 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback StatusBarStateController statusBarStateController, SysUiState sysUiFlagsContainer, BroadcastDispatcher broadcastDispatcher, - CommandQueue commandQueue) { + CommandQueue commandQueue, + Divider divider) { mAccessibilityManagerWrapper = accessibilityManagerWrapper; mDeviceProvisionedController = deviceProvisionedController; mStatusBarStateController = statusBarStateController; @@ -279,6 +280,7 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback mNavBarMode = navigationModeController.addListener(this); mBroadcastDispatcher = broadcastDispatcher; mCommandQueue = commandQueue; + mDivider = divider; } // ----- Fragment Lifecycle Callbacks ----- @@ -289,7 +291,6 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback mCommandQueue.observe(getLifecycle(), this); mStatusBar = SysUiServiceProvider.getComponent(getContext(), StatusBar.class); mRecents = SysUiServiceProvider.getComponent(getContext(), Recents.class); - mDivider = SysUiServiceProvider.getComponent(getContext(), Divider.class); mWindowManager = getContext().getSystemService(WindowManager.class); mAccessibilityManager = getContext().getSystemService(AccessibilityManager.class); mContentResolver = getContext().getContentResolver(); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index cff282472074..57dcf77b9d6b 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -247,6 +247,7 @@ import java.io.PrintWriter; import java.io.StringWriter; import java.util.ArrayList; import java.util.Map; +import java.util.Optional; import javax.inject.Named; @@ -396,6 +397,7 @@ public class StatusBar extends SystemUI implements DemoMode, private final Lazy<BiometricUnlockController> mBiometricUnlockControllerLazy; private final PluginManager mPluginManager; private final RemoteInputUriController mRemoteInputUriController; + private final Optional<Divider> mDividerOptional; private final SuperStatusBarViewFactory mSuperStatusBarViewFactory; // expanded notifications @@ -633,6 +635,7 @@ public class StatusBar extends SystemUI implements DemoMode, * StatusBar is considered optional, and therefore can not be marked as @Inject directly. * Instead, an @Provide method is included. */ + @SuppressWarnings("OptionalUsedAsFieldOrParameterType") public StatusBar( Context context, FeatureFlags featureFlags, @@ -700,6 +703,7 @@ public class StatusBar extends SystemUI implements DemoMode, CommandQueue commandQueue, PluginManager pluginManager, RemoteInputUriController remoteInputUriController, + Optional<Divider> dividerOptional, SuperStatusBarViewFactory superStatusBarViewFactory) { super(context); mFeatureFlags = featureFlags; @@ -767,6 +771,8 @@ public class StatusBar extends SystemUI implements DemoMode, mCommandQueue = commandQueue; mPluginManager = pluginManager; mRemoteInputUriController = remoteInputUriController; + mDividerOptional = dividerOptional; + mSuperStatusBarViewFactory = superStatusBarViewFactory; mBubbleExpandListener = @@ -1470,8 +1476,8 @@ public class StatusBar extends SystemUI implements DemoMode, : SPLIT_SCREEN_CREATE_MODE_TOP_OR_LEFT; return mRecents.splitPrimaryTask(createMode, null, metricsDockAction); } else { - Divider divider = getComponent(Divider.class); - if (divider != null) { + if (mDividerOptional.isPresent()) { + Divider divider = mDividerOptional.get(); if (divider.isMinimized() && !divider.isHomeStackResizable()) { // Undocking from the minimized state is not supported return false; @@ -3945,14 +3951,14 @@ public class StatusBar extends SystemUI implements DemoMode, @Override public void appTransitionCancelled(int displayId) { if (displayId == mDisplayId) { - getComponent(Divider.class).onAppTransitionFinished(); + mDividerOptional.ifPresent(Divider::onAppTransitionFinished); } } @Override public void appTransitionFinished(int displayId) { if (displayId == mDisplayId) { - getComponent(Divider.class).onAppTransitionFinished(); + mDividerOptional.ifPresent(Divider::onAppTransitionFinished); } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarModule.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarModule.java index 67f6a0ca6b72..9e0eb3570b59 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarModule.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarModule.java @@ -39,6 +39,7 @@ import com.android.systemui.keyguard.ScreenLifecycle; import com.android.systemui.keyguard.WakefulnessLifecycle; import com.android.systemui.plugins.FalsingManager; import com.android.systemui.shared.plugins.PluginManager; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.statusbar.NavigationBarController; @@ -73,6 +74,8 @@ import com.android.systemui.statusbar.policy.RemoteInputUriController; import com.android.systemui.statusbar.policy.UserSwitcherController; import com.android.systemui.statusbar.policy.ZenModeController; +import java.util.Optional; + import javax.inject.Named; import javax.inject.Singleton; @@ -157,6 +160,7 @@ public class StatusBarModule { CommandQueue commandQueue, PluginManager pluginManager, RemoteInputUriController remoteInputUriController, + Optional<Divider> dividerOptional, SuperStatusBarViewFactory superStatusBarViewFactory) { return new StatusBar( context, @@ -225,6 +229,7 @@ public class StatusBarModule { commandQueue, pluginManager, remoteInputUriController, + dividerOptional, superStatusBarViewFactory); } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NavigationBarFragmentTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NavigationBarFragmentTest.java index 125500178d30..2779701db680 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NavigationBarFragmentTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/NavigationBarFragmentTest.java @@ -95,6 +95,8 @@ public class NavigationBarFragmentTest extends SysuiBaseFragmentTest { private SysUiState mMockSysUiState; @Mock private BroadcastDispatcher mBroadcastDispatcher; + @Mock + private Divider mDivider; private AccessibilityManagerWrapper mAccessibilityWrapper = new AccessibilityManagerWrapper(mContext) { @@ -153,7 +155,6 @@ public class NavigationBarFragmentTest extends SysuiBaseFragmentTest { private void setupSysuiDependency() { mSysuiContext.putComponent(StatusBar.class, mock(StatusBar.class)); mSysuiContext.putComponent(Recents.class, mock(Recents.class)); - mSysuiContext.putComponent(Divider.class, mock(Divider.class)); Display display = new Display(DisplayManagerGlobal.getInstance(), EXTERNAL_DISPLAY_ID, new DisplayInfo(), DEFAULT_DISPLAY_ADJUSTMENTS); @@ -161,7 +162,6 @@ public class NavigationBarFragmentTest extends SysuiBaseFragmentTest { display); mSysuiTestableContextExternal.putComponent(StatusBar.class, mock(StatusBar.class)); mSysuiTestableContextExternal.putComponent(Recents.class, mock(Recents.class)); - mSysuiTestableContextExternal.putComponent(Divider.class, mock(Divider.class)); injectLeakCheckedDependencies(ALL_SUPPORTED_CLASSES); WindowManager windowManager = mock(WindowManager.class); @@ -251,7 +251,8 @@ public class NavigationBarFragmentTest extends SysuiBaseFragmentTest { mock(StatusBarStateController.class), mMockSysUiState, mBroadcastDispatcher, - mCommandQueue); + mCommandQueue, + mDivider); } private class HostCallbacksForExternalDisplay extends diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java index ecb2d8190cfc..1db926dfd196 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java @@ -92,6 +92,7 @@ import com.android.systemui.keyguard.WakefulnessLifecycle; import com.android.systemui.plugins.ActivityStarter.OnDismissAction; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.shared.plugins.PluginManager; +import com.android.systemui.stackdivider.Divider; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.FeatureFlags; import com.android.systemui.statusbar.KeyguardIndicationController; @@ -145,6 +146,7 @@ import org.mockito.MockitoAnnotations; import java.io.ByteArrayOutputStream; import java.io.PrintWriter; import java.util.ArrayList; +import java.util.Optional; import dagger.Lazy; @@ -233,6 +235,7 @@ public class StatusBarTest extends SysuiTestCase { @Mock private KeyguardLiftController mKeyguardLiftController; @Mock private CommandQueue mCommandQueue; @Mock private PluginManager mPluginManager; + @Mock private Divider mDivider; @Mock private SuperStatusBarViewFactory mSuperStatusBarViewFactory; @Before @@ -372,6 +375,7 @@ public class StatusBarTest extends SysuiTestCase { mCommandQueue, mPluginManager, mRemoteInputUriController, + Optional.of(mDivider), mSuperStatusBarViewFactory); when(mStatusBarWindowView.findViewById(R.id.lock_icon_container)).thenReturn( |