Revert "[CS] Make NPVC and QuickSettingsController singletons."
This reverts commit 8f5e6f8b8f.
Reason for revert: b/289170037
Change-Id: I00454e39203b375b35423b2d31418f63ed93927d
This commit is contained in:
committed by
Android (Google) Code Review
parent
8f5e6f8b8f
commit
d5fb4ee367
@@ -59,7 +59,7 @@ constructor(
|
||||
// At startup, 2 views with the ID `R.id.keyguard_indication_area` will be available.
|
||||
// Disable one of them
|
||||
if (featureFlags.isEnabled(Flags.MIGRATE_INDICATION_AREA)) {
|
||||
legacyParent.findViewById<View>(R.id.keyguard_indication_area)?.let {
|
||||
legacyParent.requireViewById<View>(R.id.keyguard_indication_area).let {
|
||||
legacyParent.removeView(it)
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -117,7 +117,6 @@ import com.android.systemui.bouncer.domain.interactor.AlternateBouncerInteractor
|
||||
import com.android.systemui.bouncer.shared.constants.KeyguardBouncerConstants;
|
||||
import com.android.systemui.classifier.Classifier;
|
||||
import com.android.systemui.classifier.FalsingCollector;
|
||||
import com.android.systemui.dagger.SysUISingleton;
|
||||
import com.android.systemui.dagger.qualifiers.DisplayId;
|
||||
import com.android.systemui.dagger.qualifiers.Main;
|
||||
import com.android.systemui.doze.DozeLog;
|
||||
@@ -209,6 +208,7 @@ import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
||||
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
||||
import com.android.systemui.statusbar.phone.TapAgainViewController;
|
||||
import com.android.systemui.statusbar.phone.UnlockedScreenOffAnimationController;
|
||||
import com.android.systemui.statusbar.phone.dagger.CentralSurfacesComponent;
|
||||
import com.android.systemui.statusbar.phone.fragment.CollapsedStatusBarFragment;
|
||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||
import com.android.systemui.statusbar.policy.KeyguardQsUserSwitchController;
|
||||
@@ -238,7 +238,7 @@ import kotlin.Unit;
|
||||
|
||||
import kotlinx.coroutines.CoroutineDispatcher;
|
||||
|
||||
@SysUISingleton
|
||||
@CentralSurfacesComponent.CentralSurfacesScope
|
||||
public final class NotificationPanelViewController implements ShadeSurface, Dumpable {
|
||||
|
||||
public static final String TAG = NotificationPanelView.class.getSimpleName();
|
||||
@@ -1407,13 +1407,11 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
|
||||
mKeyguardBottomArea = keyguardBottomArea;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setOpenCloseListener(OpenCloseListener openCloseListener) {
|
||||
void setOpenCloseListener(OpenCloseListener openCloseListener) {
|
||||
mOpenCloseListener = openCloseListener;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTrackingStartedListener(TrackingStartedListener trackingStartedListener) {
|
||||
void setTrackingStartedListener(TrackingStartedListener trackingStartedListener) {
|
||||
mTrackingStartedListener = trackingStartedListener;
|
||||
}
|
||||
|
||||
@@ -3380,13 +3378,11 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
|
||||
ViewGroupFadeHelper.reset(mView);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addOnGlobalLayoutListener(ViewTreeObserver.OnGlobalLayoutListener listener) {
|
||||
void addOnGlobalLayoutListener(ViewTreeObserver.OnGlobalLayoutListener listener) {
|
||||
mView.getViewTreeObserver().addOnGlobalLayoutListener(listener);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeOnGlobalLayoutListener(ViewTreeObserver.OnGlobalLayoutListener listener) {
|
||||
void removeOnGlobalLayoutListener(ViewTreeObserver.OnGlobalLayoutListener listener) {
|
||||
mView.getViewTreeObserver().removeOnGlobalLayoutListener(listener);
|
||||
}
|
||||
|
||||
@@ -3851,8 +3847,8 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
|
||||
return !isFullyCollapsed() && !mTracking && !mClosing;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void instantCollapse() {
|
||||
/** Collapses the shade instantly without animation. */
|
||||
void instantCollapse() {
|
||||
abortAnimations();
|
||||
setExpandedFraction(0f);
|
||||
if (mExpanding) {
|
||||
@@ -4025,8 +4021,8 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
|
||||
mFixedDuration = NO_FIXED_DURATION;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean postToView(Runnable action) {
|
||||
/** */
|
||||
boolean postToView(Runnable action) {
|
||||
return mView.post(action);
|
||||
}
|
||||
|
||||
@@ -5117,5 +5113,18 @@ public final class NotificationPanelViewController implements ShadeSurface, Dump
|
||||
return super.performAccessibilityAction(host, action, args);
|
||||
}
|
||||
}
|
||||
|
||||
/** Listens for when touch tracking begins. */
|
||||
interface TrackingStartedListener {
|
||||
void onTrackingStarted();
|
||||
}
|
||||
|
||||
/** Listens for when shade begins opening of finishes closing. */
|
||||
interface OpenCloseListener {
|
||||
/** Called when the shade finishes closing. */
|
||||
void onClosingFinished();
|
||||
/** Called when the shade starts opening. */
|
||||
void onOpenStarted();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -68,7 +68,6 @@ import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.classifier.Classifier;
|
||||
import com.android.systemui.classifier.FalsingCollector;
|
||||
import com.android.systemui.dagger.SysUISingleton;
|
||||
import com.android.systemui.dump.DumpManager;
|
||||
import com.android.systemui.flags.FeatureFlags;
|
||||
import com.android.systemui.fragments.FragmentHostManager;
|
||||
@@ -99,6 +98,7 @@ import com.android.systemui.statusbar.phone.LockscreenGestureLogger;
|
||||
import com.android.systemui.statusbar.phone.ScrimController;
|
||||
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
||||
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
||||
import com.android.systemui.statusbar.phone.dagger.CentralSurfacesComponent;
|
||||
import com.android.systemui.statusbar.policy.CastController;
|
||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||
import com.android.systemui.util.LargeScreenUtils;
|
||||
@@ -113,7 +113,7 @@ import javax.inject.Inject;
|
||||
/** Handles QuickSettings touch handling, expansion and animation state
|
||||
* TODO (b/264460656) make this dumpable
|
||||
*/
|
||||
@SysUISingleton
|
||||
@CentralSurfacesComponent.CentralSurfacesScope
|
||||
public class QuickSettingsController implements Dumpable {
|
||||
public static final String TAG = "QuickSettingsController";
|
||||
|
||||
|
||||
@@ -165,7 +165,8 @@ public interface ShadeController {
|
||||
NotificationShadeWindowViewController notificationShadeWindowViewController);
|
||||
|
||||
/** */
|
||||
void setShadeViewController(ShadeViewController shadeViewController);
|
||||
void setNotificationPanelViewController(
|
||||
NotificationPanelViewController notificationPanelViewController);
|
||||
|
||||
/** Listens for shade visibility changes. */
|
||||
interface ShadeVisibilityListener {
|
||||
|
||||
@@ -70,8 +70,7 @@ public final class ShadeControllerImpl implements ShadeController {
|
||||
|
||||
private boolean mExpandedVisible;
|
||||
|
||||
// TODO(b/237661616): Rename this variable to mShadeViewController.
|
||||
private ShadeViewController mNotificationPanelViewController;
|
||||
private NotificationPanelViewController mNotificationPanelViewController;
|
||||
private NotificationPresenter mPresenter;
|
||||
private NotificationShadeWindowViewController mNotificationShadeWindowViewController;
|
||||
private ShadeVisibilityListener mShadeVisibilityListener;
|
||||
@@ -427,11 +426,12 @@ public final class ShadeControllerImpl implements ShadeController {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setShadeViewController(ShadeViewController shadeViewController) {
|
||||
mNotificationPanelViewController = shadeViewController;
|
||||
public void setNotificationPanelViewController(
|
||||
NotificationPanelViewController notificationPanelViewController) {
|
||||
mNotificationPanelViewController = notificationPanelViewController;
|
||||
mNotificationPanelViewController.setTrackingStartedListener(this::runPostCollapseRunnables);
|
||||
mNotificationPanelViewController.setOpenCloseListener(
|
||||
new OpenCloseListener() {
|
||||
new NotificationPanelViewController.OpenCloseListener() {
|
||||
@Override
|
||||
public void onClosingFinished() {
|
||||
ShadeControllerImpl.this.onClosingFinished();
|
||||
|
||||
@@ -72,12 +72,6 @@ abstract class ShadeModule {
|
||||
@ClassKey(AuthRippleController::class)
|
||||
abstract fun bindAuthRippleController(controller: AuthRippleController): CoreStartable
|
||||
|
||||
@Binds
|
||||
@SysUISingleton
|
||||
abstract fun bindsShadeViewController(
|
||||
notificationPanelViewController: NotificationPanelViewController
|
||||
): ShadeViewController
|
||||
|
||||
companion object {
|
||||
const val SHADE_HEADER = "large_screen_shade_header"
|
||||
|
||||
|
||||
@@ -17,7 +17,6 @@ package com.android.systemui.shade
|
||||
|
||||
import android.view.MotionEvent
|
||||
import android.view.ViewGroup
|
||||
import android.view.ViewTreeObserver
|
||||
import com.android.systemui.keyguard.shared.model.WakefulnessModel
|
||||
import com.android.systemui.statusbar.RemoteInputController
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
|
||||
@@ -78,9 +77,6 @@ interface ShadeViewController {
|
||||
/** Collapses the shade with an animation duration in milliseconds. */
|
||||
fun collapseWithDuration(animationDuration: Int)
|
||||
|
||||
/** Collapses the shade instantly without animation. */
|
||||
fun instantCollapse()
|
||||
|
||||
/**
|
||||
* Animate QS collapse by flinging it. If QS is expanded, it will collapse into QQS and stop. If
|
||||
* in split shade, it will collapse the whole shade.
|
||||
@@ -104,9 +100,6 @@ interface ShadeViewController {
|
||||
/** Returns whether the shade's top level view is enabled. */
|
||||
val isViewEnabled: Boolean
|
||||
|
||||
/** Sets a listener to be notified when the shade starts opening or finishes closing. */
|
||||
fun setOpenCloseListener(openCloseListener: OpenCloseListener)
|
||||
|
||||
/** Returns whether status bar icons should be hidden when the shade is expanded. */
|
||||
fun shouldHideStatusBarIconsWhenExpanded(): Boolean
|
||||
|
||||
@@ -116,9 +109,6 @@ interface ShadeViewController {
|
||||
*/
|
||||
fun blockExpansionForCurrentTouch()
|
||||
|
||||
/** Sets a listener to be notified when touch tracking begins. */
|
||||
fun setTrackingStartedListener(trackingStartedListener: TrackingStartedListener)
|
||||
|
||||
/**
|
||||
* Disables the shade header.
|
||||
*
|
||||
@@ -188,15 +178,6 @@ interface ShadeViewController {
|
||||
/** Ensures that the touchable region is updated. */
|
||||
fun updateTouchableRegion()
|
||||
|
||||
/** Adds a global layout listener. */
|
||||
fun addOnGlobalLayoutListener(listener: ViewTreeObserver.OnGlobalLayoutListener)
|
||||
|
||||
/** Removes a global layout listener. */
|
||||
fun removeOnGlobalLayoutListener(listener: ViewTreeObserver.OnGlobalLayoutListener)
|
||||
|
||||
/** Posts the given runnable to the view. */
|
||||
fun postToView(action: Runnable): Boolean
|
||||
|
||||
// ******* Begin Keyguard Section *********
|
||||
/** Animate to expanded shade after a delay in ms. Used for lockscreen to shade transition. */
|
||||
fun transitionToExpandedShade(delay: Long)
|
||||
@@ -356,17 +337,3 @@ interface ShadeViewStateProvider {
|
||||
/** Return the fraction of the shade that's expanded, when in lockscreen. */
|
||||
val lockscreenShadeDragProgress: Float
|
||||
}
|
||||
|
||||
/** Listens for when touch tracking begins. */
|
||||
interface TrackingStartedListener {
|
||||
fun onTrackingStarted()
|
||||
}
|
||||
|
||||
/** Listens for when shade begins opening or finishes closing. */
|
||||
interface OpenCloseListener {
|
||||
/** Called when the shade finishes closing. */
|
||||
fun onClosingFinished()
|
||||
|
||||
/** Called when the shade starts opening. */
|
||||
fun onOpenStarted()
|
||||
}
|
||||
|
||||
@@ -41,8 +41,6 @@ import com.android.systemui.plugins.ActivityStarter;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.power.domain.interactor.PowerInteractor;
|
||||
import com.android.systemui.settings.DisplayTracker;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.ShadeSurface;
|
||||
import com.android.systemui.shade.carrier.ShadeCarrierGroupController;
|
||||
import com.android.systemui.statusbar.ActionClickLogger;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
@@ -275,21 +273,6 @@ public interface CentralSurfacesDependenciesModule {
|
||||
return ongoingCallController;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@link NotificationPanelViewController} implements two interfaces:
|
||||
* - {@link com.android.systemui.shade.ShadeViewController}, which can be used by any class
|
||||
* needing access to the shade.
|
||||
* - {@link ShadeSurface}, which should *only* be used by {@link CentralSurfacesImpl}.
|
||||
*
|
||||
* Since {@link ShadeSurface} should only be accessible by {@link CentralSurfacesImpl}, it's
|
||||
* *only* bound in this CentralSurfaces dependencies module.
|
||||
* The {@link com.android.systemui.shade.ShadeViewController} interface is bound in
|
||||
* {@link com.android.systemui.shade.ShadeModule} so others can access it.
|
||||
*/
|
||||
@Binds
|
||||
@SysUISingleton
|
||||
ShadeSurface provideShadeSurface(NotificationPanelViewController impl);
|
||||
|
||||
/** */
|
||||
@Binds
|
||||
ShadeCarrierGroupController.SlotIndexResolver provideSlotIndexResolver(
|
||||
|
||||
@@ -182,6 +182,7 @@ import com.android.systemui.scrim.ScrimView;
|
||||
import com.android.systemui.settings.UserTracker;
|
||||
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||
import com.android.systemui.shade.CameraLauncher;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.NotificationShadeWindowView;
|
||||
import com.android.systemui.shade.NotificationShadeWindowViewController;
|
||||
import com.android.systemui.shade.QuickSettingsController;
|
||||
@@ -496,12 +497,14 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
private final Lazy<LightRevealScrimViewModel> mLightRevealScrimViewModelLazy;
|
||||
|
||||
/** Controller for the Shade. */
|
||||
private final ShadeSurface mShadeSurface;
|
||||
@VisibleForTesting
|
||||
ShadeSurface mShadeSurface;
|
||||
private final ShadeLogger mShadeLogger;
|
||||
|
||||
// settings
|
||||
private QSPanelController mQSPanelController;
|
||||
private final QuickSettingsController mQsController;
|
||||
@VisibleForTesting
|
||||
QuickSettingsController mQsController;
|
||||
|
||||
KeyguardIndicationController mKeyguardIndicationController;
|
||||
|
||||
@@ -726,11 +729,9 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
MetricsLogger metricsLogger,
|
||||
ShadeLogger shadeLogger,
|
||||
@UiBackground Executor uiBgExecutor,
|
||||
ShadeSurface shadeSurface,
|
||||
NotificationMediaManager notificationMediaManager,
|
||||
NotificationLockscreenUserManager lockScreenUserManager,
|
||||
NotificationRemoteInputManager remoteInputManager,
|
||||
QuickSettingsController quickSettingsController,
|
||||
UserSwitcherController userSwitcherController,
|
||||
BatteryController batteryController,
|
||||
SysuiColorExtractor colorExtractor,
|
||||
@@ -829,11 +830,9 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
mMetricsLogger = metricsLogger;
|
||||
mShadeLogger = shadeLogger;
|
||||
mUiBgExecutor = uiBgExecutor;
|
||||
mShadeSurface = shadeSurface;
|
||||
mMediaManager = notificationMediaManager;
|
||||
mLockscreenUserManager = lockScreenUserManager;
|
||||
mRemoteInputManager = remoteInputManager;
|
||||
mQsController = quickSettingsController;
|
||||
mUserSwitcherController = userSwitcherController;
|
||||
mBatteryController = batteryController;
|
||||
mColorExtractor = colorExtractor;
|
||||
@@ -1637,9 +1636,13 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
// (Right now, there's a circular dependency.)
|
||||
mNotificationShadeWindowController.setWindowRootView(windowRootView);
|
||||
mNotificationShadeWindowViewController.setupExpandedStatusBar();
|
||||
mShadeController.setShadeViewController(mShadeSurface);
|
||||
NotificationPanelViewController npvc =
|
||||
mCentralSurfacesComponent.getNotificationPanelViewController();
|
||||
mShadeSurface = npvc;
|
||||
mShadeController.setNotificationPanelViewController(npvc);
|
||||
mShadeController.setNotificationShadeWindowViewController(
|
||||
mNotificationShadeWindowViewController);
|
||||
mQsController = mCentralSurfacesComponent.getQuickSettingsController();
|
||||
mBackActionInteractor.setup(mQsController, mShadeSurface);
|
||||
mPresenter = mCentralSurfacesComponent.getNotificationPresenter();
|
||||
mNotificationActivityStarter = mCentralSurfacesComponent.getNotificationActivityStarter();
|
||||
@@ -1840,7 +1843,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
|
||||
@Override
|
||||
public void onStatusBarTrackpadEvent(MotionEvent event) {
|
||||
mShadeSurface.handleExternalTouch(event);
|
||||
mCentralSurfacesComponent.getNotificationPanelViewController().handleExternalTouch(event);
|
||||
}
|
||||
|
||||
private void onExpandedInvisible() {
|
||||
|
||||
@@ -21,8 +21,10 @@ import static com.android.systemui.statusbar.phone.dagger.StatusBarViewModule.ST
|
||||
import static java.lang.annotation.RetentionPolicy.RUNTIME;
|
||||
|
||||
import com.android.systemui.scene.ui.view.WindowRootView;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.NotificationShadeWindowView;
|
||||
import com.android.systemui.shade.NotificationShadeWindowViewController;
|
||||
import com.android.systemui.shade.QuickSettingsController;
|
||||
import com.android.systemui.shade.ShadeHeaderController;
|
||||
import com.android.systemui.statusbar.NotificationPresenter;
|
||||
import com.android.systemui.statusbar.notification.NotificationActivityStarter;
|
||||
@@ -86,6 +88,14 @@ public interface CentralSurfacesComponent {
|
||||
*/
|
||||
NotificationShadeWindowViewController getNotificationShadeWindowViewController();
|
||||
|
||||
/**
|
||||
* Creates a NotificationPanelViewController.
|
||||
*/
|
||||
NotificationPanelViewController getNotificationPanelViewController();
|
||||
|
||||
/** Creates a QuickSettingsController. */
|
||||
QuickSettingsController getQuickSettingsController();
|
||||
|
||||
/**
|
||||
* Creates a StatusBarHeadsUpChangeListener.
|
||||
*/
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.android.systemui.dagger.qualifiers.Main;
|
||||
import com.android.systemui.dump.DumpManager;
|
||||
import com.android.systemui.flags.FeatureFlags;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.shade.NotificationPanelViewController;
|
||||
import com.android.systemui.shade.ShadeExpansionStateManager;
|
||||
import com.android.systemui.shade.ShadeViewController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
@@ -64,6 +65,12 @@ public abstract class StatusBarViewModule {
|
||||
|
||||
public static final String STATUS_BAR_FRAGMENT = "status_bar_fragment";
|
||||
|
||||
/** */
|
||||
@Binds
|
||||
@CentralSurfacesComponent.CentralSurfacesScope
|
||||
abstract ShadeViewController bindsShadeViewController(
|
||||
NotificationPanelViewController notificationPanelViewController);
|
||||
|
||||
@Binds
|
||||
@IntoSet
|
||||
abstract StatusBarBoundsProvider.BoundsChangeListener sysBarAttrsListenerAsBoundsListener(
|
||||
|
||||
@@ -80,7 +80,6 @@ import com.android.keyguard.logging.KeyguardLogger;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.biometrics.AuthController;
|
||||
import com.android.systemui.bouncer.domain.interactor.AlternateBouncerInteractor;
|
||||
import com.android.systemui.classifier.FalsingCollectorFake;
|
||||
import com.android.systemui.classifier.FalsingManagerFake;
|
||||
import com.android.systemui.common.ui.view.LongPressHandlingView;
|
||||
@@ -92,6 +91,7 @@ import com.android.systemui.fragments.FragmentService;
|
||||
import com.android.systemui.keyguard.KeyguardUnlockAnimationController;
|
||||
import com.android.systemui.keyguard.KeyguardViewConfigurator;
|
||||
import com.android.systemui.keyguard.data.repository.FakeKeyguardRepository;
|
||||
import com.android.systemui.bouncer.domain.interactor.AlternateBouncerInteractor;
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardBottomAreaInteractor;
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardFaceAuthInteractor;
|
||||
import com.android.systemui.keyguard.domain.interactor.KeyguardInteractor;
|
||||
@@ -629,7 +629,7 @@ public class NotificationPanelViewControllerBaseTest extends SysuiTestCase {
|
||||
mHeadsUpManager);
|
||||
mNotificationPanelViewController.setTrackingStartedListener(() -> {});
|
||||
mNotificationPanelViewController.setOpenCloseListener(
|
||||
new OpenCloseListener() {
|
||||
new NotificationPanelViewController.OpenCloseListener() {
|
||||
@Override
|
||||
public void onClosingFinished() {}
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ class ShadeControllerImplTest : SysuiTestCase() {
|
||||
@Mock private lateinit var windowManager: WindowManager
|
||||
@Mock private lateinit var assistManager: AssistManager
|
||||
@Mock private lateinit var gutsManager: NotificationGutsManager
|
||||
@Mock private lateinit var shadeViewController: ShadeViewController
|
||||
@Mock private lateinit var notificationPanelViewController: NotificationPanelViewController
|
||||
@Mock private lateinit var nswvc: NotificationShadeWindowViewController
|
||||
@Mock private lateinit var display: Display
|
||||
|
||||
@@ -82,7 +82,7 @@ class ShadeControllerImplTest : SysuiTestCase() {
|
||||
Lazy { gutsManager },
|
||||
)
|
||||
shadeController.setNotificationShadeWindowViewController(nswvc)
|
||||
shadeController.setShadeViewController(shadeViewController)
|
||||
shadeController.setNotificationPanelViewController(notificationPanelViewController)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -91,9 +91,9 @@ class ShadeControllerImplTest : SysuiTestCase() {
|
||||
|
||||
// Trying to open it does nothing.
|
||||
shadeController.animateExpandShade()
|
||||
verify(shadeViewController, never()).expandToNotifications()
|
||||
verify(notificationPanelViewController, never()).expandToNotifications()
|
||||
shadeController.animateExpandQs()
|
||||
verify(shadeViewController, never()).expand(ArgumentMatchers.anyBoolean())
|
||||
verify(notificationPanelViewController, never()).expand(ArgumentMatchers.anyBoolean())
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -102,15 +102,15 @@ class ShadeControllerImplTest : SysuiTestCase() {
|
||||
|
||||
// Can now be opened.
|
||||
shadeController.animateExpandShade()
|
||||
verify(shadeViewController).expandToNotifications()
|
||||
verify(notificationPanelViewController).expandToNotifications()
|
||||
shadeController.animateExpandQs()
|
||||
verify(shadeViewController).expandToQs()
|
||||
verify(notificationPanelViewController).expandToQs()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun cancelExpansionAndCollapseShade_callsCancelCurrentTouch() {
|
||||
// GIVEN the shade is tracking a touch
|
||||
whenever(shadeViewController.isTracking).thenReturn(true)
|
||||
whenever(notificationPanelViewController.isTracking).thenReturn(true)
|
||||
|
||||
// WHEN cancelExpansionAndCollapseShade is called
|
||||
shadeController.cancelExpansionAndCollapseShade()
|
||||
@@ -122,7 +122,7 @@ class ShadeControllerImplTest : SysuiTestCase() {
|
||||
@Test
|
||||
fun cancelExpansionAndCollapseShade_doesNotCallAnimateCollapseShade_whenCollapsed() {
|
||||
// GIVEN the shade is tracking a touch
|
||||
whenever(shadeViewController.isTracking).thenReturn(false)
|
||||
whenever(notificationPanelViewController.isTracking).thenReturn(false)
|
||||
|
||||
// WHEN cancelExpansionAndCollapseShade is called
|
||||
shadeController.cancelExpansionAndCollapseShade()
|
||||
|
||||
@@ -450,7 +450,7 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
() -> mAssistManager,
|
||||
() -> mNotificationGutsManager
|
||||
));
|
||||
mShadeController.setShadeViewController(mNotificationPanelViewController);
|
||||
mShadeController.setNotificationPanelViewController(mNotificationPanelViewController);
|
||||
mShadeController.setNotificationShadeWindowViewController(
|
||||
mNotificationShadeWindowViewController);
|
||||
mShadeController.setNotificationPresenter(mNotificationPresenter);
|
||||
@@ -490,11 +490,9 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
mMetricsLogger,
|
||||
mShadeLogger,
|
||||
mUiBgExecutor,
|
||||
mNotificationPanelViewController,
|
||||
mNotificationMediaManager,
|
||||
mLockscreenUserManager,
|
||||
mRemoteInputManager,
|
||||
mQuickSettingsController,
|
||||
mUserSwitcherController,
|
||||
mBatteryController,
|
||||
mColorExtractor,
|
||||
@@ -589,6 +587,8 @@ public class CentralSurfacesImplTest extends SysuiTestCase {
|
||||
// TODO: we should be able to call mCentralSurfaces.start() and have all the below values
|
||||
// initialized automatically and make NPVC private.
|
||||
mCentralSurfaces.mNotificationShadeWindowView = mNotificationShadeWindowView;
|
||||
mCentralSurfaces.mShadeSurface = mNotificationPanelViewController;
|
||||
mCentralSurfaces.mQsController = mQuickSettingsController;
|
||||
mCentralSurfaces.mDozeScrimController = mDozeScrimController;
|
||||
mCentralSurfaces.mPresenter = mNotificationPresenter;
|
||||
mCentralSurfaces.mKeyguardIndicationController = mKeyguardIndicationController;
|
||||
|
||||
Reference in New Issue
Block a user