Merge "Remove feature flag for split shade" into sc-v2-dev am: ad502315bb

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15302106

Change-Id: I63c09330ba4cf27762e44f1b832ed68152ccfd53
This commit is contained in:
Alex Florescu
2021-07-21 10:39:36 +00:00
committed by Automerger Merge Worker
19 changed files with 54 additions and 106 deletions

View File

@@ -24,9 +24,6 @@
<bool name="flag_monet">false</bool> <bool name="flag_monet">false</bool>
<!-- b/171917882 -->
<bool name="flag_notification_twocolumn">false</bool>
<!-- AOD/Lockscreen alternate layout --> <!-- AOD/Lockscreen alternate layout -->
<bool name="flag_keyguard_layout">true</bool> <bool name="flag_keyguard_layout">true</bool>

View File

@@ -24,7 +24,6 @@ import androidx.annotation.VisibleForTesting
import com.android.systemui.dagger.SysUISingleton import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.media.dagger.MediaModule.KEYGUARD import com.android.systemui.media.dagger.MediaModule.KEYGUARD
import com.android.systemui.plugins.statusbar.StatusBarStateController import com.android.systemui.plugins.statusbar.StatusBarStateController
import com.android.systemui.statusbar.FeatureFlags
import com.android.systemui.statusbar.NotificationLockscreenUserManager import com.android.systemui.statusbar.NotificationLockscreenUserManager
import com.android.systemui.statusbar.StatusBarState import com.android.systemui.statusbar.StatusBarState
import com.android.systemui.statusbar.SysuiStatusBarStateController import com.android.systemui.statusbar.SysuiStatusBarStateController
@@ -45,7 +44,6 @@ class KeyguardMediaController @Inject constructor(
private val bypassController: KeyguardBypassController, private val bypassController: KeyguardBypassController,
private val statusBarStateController: SysuiStatusBarStateController, private val statusBarStateController: SysuiStatusBarStateController,
private val notifLockscreenUserManager: NotificationLockscreenUserManager, private val notifLockscreenUserManager: NotificationLockscreenUserManager,
private val featureFlags: FeatureFlags,
private val context: Context, private val context: Context,
configurationController: ConfigurationController configurationController: ConfigurationController
) { ) {
@@ -73,7 +71,7 @@ class KeyguardMediaController @Inject constructor(
} }
private fun updateResources() { private fun updateResources() {
useSplitShade = Utils.shouldUseSplitNotificationShade(featureFlags, context.resources) useSplitShade = Utils.shouldUseSplitNotificationShade(context.resources)
} }
@VisibleForTesting @VisibleForTesting

View File

@@ -46,7 +46,6 @@ import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.qs.customize.QSCustomizerController; import com.android.systemui.qs.customize.QSCustomizerController;
import com.android.systemui.qs.dagger.QSFragmentComponent; import com.android.systemui.qs.dagger.QSFragmentComponent;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.StatusBarState; import com.android.systemui.statusbar.StatusBarState;
import com.android.systemui.statusbar.notification.stack.StackStateAnimator; import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
import com.android.systemui.statusbar.phone.NotificationsQuickSettingsContainer; import com.android.systemui.statusbar.phone.NotificationsQuickSettingsContainer;
@@ -113,7 +112,6 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
private QuickQSPanelController mQuickQSPanelController; private QuickQSPanelController mQuickQSPanelController;
private QSCustomizerController mQSCustomizerController; private QSCustomizerController mQSCustomizerController;
private ScrollListener mScrollListener; private ScrollListener mScrollListener;
private FeatureFlags mFeatureFlags;
/** /**
* When true, QS will translate from outside the screen. It will be clipped with parallax * When true, QS will translate from outside the screen. It will be clipped with parallax
* otherwise. * otherwise.
@@ -137,7 +135,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
StatusBarStateController statusBarStateController, CommandQueue commandQueue, StatusBarStateController statusBarStateController, CommandQueue commandQueue,
QSDetailDisplayer qsDetailDisplayer, @Named(QS_PANEL) MediaHost qsMediaHost, QSDetailDisplayer qsDetailDisplayer, @Named(QS_PANEL) MediaHost qsMediaHost,
@Named(QUICK_QS_PANEL) MediaHost qqsMediaHost, @Named(QUICK_QS_PANEL) MediaHost qqsMediaHost,
QSFragmentComponent.Factory qsComponentFactory, FeatureFlags featureFlags, QSFragmentComponent.Factory qsComponentFactory,
FalsingManager falsingManager) { FalsingManager falsingManager) {
mRemoteInputQuickSettingsDisabler = remoteInputQsDisabler; mRemoteInputQuickSettingsDisabler = remoteInputQsDisabler;
mInjectionInflater = injectionInflater; mInjectionInflater = injectionInflater;
@@ -148,7 +146,6 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
mQsComponentFactory = qsComponentFactory; mQsComponentFactory = qsComponentFactory;
commandQueue.observe(getLifecycle(), this); commandQueue.observe(getLifecycle(), this);
mHost = qsTileHost; mHost = qsTileHost;
mFeatureFlags = featureFlags;
mFalsingManager = falsingManager; mFalsingManager = falsingManager;
mStatusBarStateController = statusBarStateController; mStatusBarStateController = statusBarStateController;
} }
@@ -377,7 +374,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
!mQsDisabled && expandVisually ? View.VISIBLE : View.INVISIBLE); !mQsDisabled && expandVisually ? View.VISIBLE : View.INVISIBLE);
mQsDragHandler.setVisibility((mQsExpanded || !keyguardShowing || mHeaderAnimating mQsDragHandler.setVisibility((mQsExpanded || !keyguardShowing || mHeaderAnimating
|| mShowCollapsedOnKeyguard) || mShowCollapsedOnKeyguard)
&& Utils.shouldUseSplitNotificationShade(mFeatureFlags, getResources()) && Utils.shouldUseSplitNotificationShade(getResources())
? View.VISIBLE ? View.VISIBLE
: View.GONE); : View.GONE);
} }

View File

@@ -41,7 +41,6 @@ import com.android.systemui.qs.dagger.QSScope;
import com.android.systemui.qs.logging.QSLogger; import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.settings.brightness.BrightnessController; import com.android.systemui.settings.brightness.BrightnessController;
import com.android.systemui.settings.brightness.BrightnessSlider; import com.android.systemui.settings.brightness.BrightnessSlider;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.policy.BrightnessMirrorController; import com.android.systemui.statusbar.policy.BrightnessMirrorController;
import com.android.systemui.tuner.TunerService; import com.android.systemui.tuner.TunerService;
@@ -102,10 +101,9 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
QSTileRevealController.Factory qsTileRevealControllerFactory, QSTileRevealController.Factory qsTileRevealControllerFactory,
DumpManager dumpManager, MetricsLogger metricsLogger, UiEventLogger uiEventLogger, DumpManager dumpManager, MetricsLogger metricsLogger, UiEventLogger uiEventLogger,
QSLogger qsLogger, BrightnessController.Factory brightnessControllerFactory, QSLogger qsLogger, BrightnessController.Factory brightnessControllerFactory,
BrightnessSlider.Factory brightnessSliderFactory, FalsingManager falsingManager, BrightnessSlider.Factory brightnessSliderFactory, FalsingManager falsingManager) {
FeatureFlags featureFlags) {
super(view, qstileHost, qsCustomizerController, usingMediaPlayer, mediaHost, super(view, qstileHost, qsCustomizerController, usingMediaPlayer, mediaHost,
metricsLogger, uiEventLogger, qsLogger, dumpManager, featureFlags); metricsLogger, uiEventLogger, qsLogger, dumpManager);
mQsSecurityFooter = qsSecurityFooter; mQsSecurityFooter = qsSecurityFooter;
mTunerService = tunerService; mTunerService = tunerService;
mQsCustomizerController = qsCustomizerController; mQsCustomizerController = qsCustomizerController;

View File

@@ -35,7 +35,6 @@ import com.android.systemui.plugins.qs.QSTileView;
import com.android.systemui.qs.customize.QSCustomizerController; import com.android.systemui.qs.customize.QSCustomizerController;
import com.android.systemui.qs.external.CustomTile; import com.android.systemui.qs.external.CustomTile;
import com.android.systemui.qs.logging.QSLogger; import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.util.Utils; import com.android.systemui.util.Utils;
import com.android.systemui.util.ViewController; import com.android.systemui.util.ViewController;
import com.android.systemui.util.animation.DisappearParameters; import com.android.systemui.util.animation.DisappearParameters;
@@ -67,7 +66,6 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr
private final UiEventLogger mUiEventLogger; private final UiEventLogger mUiEventLogger;
private final QSLogger mQSLogger; private final QSLogger mQSLogger;
private final DumpManager mDumpManager; private final DumpManager mDumpManager;
private final FeatureFlags mFeatureFlags;
protected final ArrayList<TileRecord> mRecords = new ArrayList<>(); protected final ArrayList<TileRecord> mRecords = new ArrayList<>();
protected boolean mShouldUseSplitNotificationShade; protected boolean mShouldUseSplitNotificationShade;
@@ -85,7 +83,7 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr
@Override @Override
public void onConfigurationChange(Configuration newConfig) { public void onConfigurationChange(Configuration newConfig) {
mShouldUseSplitNotificationShade = mShouldUseSplitNotificationShade =
Utils.shouldUseSplitNotificationShade(mFeatureFlags, getResources()); Utils.shouldUseSplitNotificationShade(getResources());
if (newConfig.orientation != mLastOrientation) { if (newConfig.orientation != mLastOrientation) {
mLastOrientation = newConfig.orientation; mLastOrientation = newConfig.orientation;
onScreenRotated(); onScreenRotated();
@@ -118,8 +116,7 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr
MetricsLogger metricsLogger, MetricsLogger metricsLogger,
UiEventLogger uiEventLogger, UiEventLogger uiEventLogger,
QSLogger qsLogger, QSLogger qsLogger,
DumpManager dumpManager, DumpManager dumpManager
FeatureFlags featureFlags
) { ) {
super(view); super(view);
mHost = host; mHost = host;
@@ -130,9 +127,8 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr
mUiEventLogger = uiEventLogger; mUiEventLogger = uiEventLogger;
mQSLogger = qsLogger; mQSLogger = qsLogger;
mDumpManager = dumpManager; mDumpManager = dumpManager;
mFeatureFlags = featureFlags;
mShouldUseSplitNotificationShade = mShouldUseSplitNotificationShade =
Utils.shouldUseSplitNotificationShade(mFeatureFlags, getResources()); Utils.shouldUseSplitNotificationShade(getResources());
} }
@Override @Override

View File

@@ -29,7 +29,6 @@ import com.android.systemui.plugins.qs.QSTile;
import com.android.systemui.qs.customize.QSCustomizerController; import com.android.systemui.qs.customize.QSCustomizerController;
import com.android.systemui.qs.dagger.QSScope; import com.android.systemui.qs.dagger.QSScope;
import com.android.systemui.qs.logging.QSLogger; import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.statusbar.FeatureFlags;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -58,11 +57,11 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
@Named(QS_USING_MEDIA_PLAYER) boolean usingMediaPlayer, @Named(QS_USING_MEDIA_PLAYER) boolean usingMediaPlayer,
@Named(QUICK_QS_PANEL) MediaHost mediaHost, @Named(QUICK_QS_PANEL) MediaHost mediaHost,
MetricsLogger metricsLogger, UiEventLogger uiEventLogger, QSLogger qsLogger, MetricsLogger metricsLogger, UiEventLogger uiEventLogger, QSLogger qsLogger,
DumpManager dumpManager, FeatureFlags featureFlags, DumpManager dumpManager,
QuickQSBrightnessController quickQSBrightnessController QuickQSBrightnessController quickQSBrightnessController
) { ) {
super(view, qsTileHost, qsCustomizerController, usingMediaPlayer, mediaHost, metricsLogger, super(view, qsTileHost, qsCustomizerController, usingMediaPlayer, mediaHost, metricsLogger,
uiEventLogger, qsLogger, dumpManager, featureFlags); uiEventLogger, qsLogger, dumpManager);
mBrightnessController = quickQSBrightnessController; mBrightnessController = quickQSBrightnessController;
} }

View File

@@ -49,11 +49,6 @@ public class FeatureFlags {
return mFlagReader.isEnabled(R.bool.flag_notification_pipeline2_rendering); return mFlagReader.isEnabled(R.bool.flag_notification_pipeline2_rendering);
} }
/** b/171917882 */
public boolean isTwoColumnNotificationShadeEnabled() {
return mFlagReader.isEnabled(R.bool.flag_notification_twocolumn);
}
public boolean isKeyguardLayoutEnabled() { public boolean isKeyguardLayoutEnabled() {
return mFlagReader.isEnabled(R.bool.flag_keyguard_layout); return mFlagReader.isEnabled(R.bool.flag_keyguard_layout);
} }

View File

@@ -60,7 +60,6 @@ class LockscreenShadeTransitionController @Inject constructor(
private val mediaHierarchyManager: MediaHierarchyManager, private val mediaHierarchyManager: MediaHierarchyManager,
private val scrimController: ScrimController, private val scrimController: ScrimController,
private val depthController: NotificationShadeDepthController, private val depthController: NotificationShadeDepthController,
private val featureFlags: FeatureFlags,
private val context: Context, private val context: Context,
configurationController: ConfigurationController, configurationController: ConfigurationController,
falsingManager: FalsingManager falsingManager: FalsingManager
@@ -134,7 +133,7 @@ class LockscreenShadeTransitionController @Inject constructor(
R.dimen.lockscreen_shade_scrim_transition_distance) R.dimen.lockscreen_shade_scrim_transition_distance)
fullTransitionDistance = context.resources.getDimensionPixelSize( fullTransitionDistance = context.resources.getDimensionPixelSize(
R.dimen.lockscreen_shade_qs_transition_distance) R.dimen.lockscreen_shade_qs_transition_distance)
useSplitShade = Utils.shouldUseSplitNotificationShade(featureFlags, context.resources) useSplitShade = Utils.shouldUseSplitNotificationShade(context.resources)
} }
fun setStackScroller(nsslController: NotificationStackScrollLayoutController) { fun setStackScroller(nsslController: NotificationStackScrollLayoutController) {

View File

@@ -81,7 +81,6 @@ import com.android.systemui.animation.Interpolators;
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper; import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.EmptyShadeView; import com.android.systemui.statusbar.EmptyShadeView;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.NotificationRemoteInputManager; import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.NotificationShelf; import com.android.systemui.statusbar.NotificationShelf;
import com.android.systemui.statusbar.NotificationShelfController; import com.android.systemui.statusbar.NotificationShelfController;
@@ -527,7 +526,6 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
private NotificationEntry mTopHeadsUpEntry; private NotificationEntry mTopHeadsUpEntry;
private long mNumHeadsUp; private long mNumHeadsUp;
private NotificationStackScrollLayoutController.TouchHandler mTouchHandler; private NotificationStackScrollLayoutController.TouchHandler mTouchHandler;
private final FeatureFlags mFeatureFlags;
private final UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController; private final UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController;
private boolean mShouldUseSplitNotificationShade; private boolean mShouldUseSplitNotificationShade;
@@ -573,12 +571,10 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
GroupMembershipManager groupMembershipManager, GroupMembershipManager groupMembershipManager,
GroupExpansionManager groupExpansionManager, GroupExpansionManager groupExpansionManager,
AmbientState ambientState, AmbientState ambientState,
FeatureFlags featureFlags,
UnlockedScreenOffAnimationController unlockedScreenOffAnimationController) { UnlockedScreenOffAnimationController unlockedScreenOffAnimationController) {
super(context, attrs, 0, 0); super(context, attrs, 0, 0);
Resources res = getResources(); Resources res = getResources();
mSectionsManager = notificationSectionsManager; mSectionsManager = notificationSectionsManager;
mFeatureFlags = featureFlags;
mUnlockedScreenOffAnimationController = unlockedScreenOffAnimationController; mUnlockedScreenOffAnimationController = unlockedScreenOffAnimationController;
updateSplitNotificationShade(); updateSplitNotificationShade();
mSectionsManager.initialize(this, LayoutInflater.from(context)); mSectionsManager.initialize(this, LayoutInflater.from(context));
@@ -5403,7 +5399,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
} }
private void updateSplitNotificationShade() { private void updateSplitNotificationShade() {
boolean split = shouldUseSplitNotificationShade(mFeatureFlags, getResources()); boolean split = shouldUseSplitNotificationShade(getResources());
if (split != mShouldUseSplitNotificationShade) { if (split != mShouldUseSplitNotificationShade) {
mShouldUseSplitNotificationShade = split; mShouldUseSplitNotificationShade = split;
updateDismissBehavior(); updateDismissBehavior();

View File

@@ -123,7 +123,6 @@ import com.android.systemui.qs.QSDetailDisplayer;
import com.android.systemui.screenrecord.RecordingController; import com.android.systemui.screenrecord.RecordingController;
import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.QuickStepContract;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.GestureRecorder; import com.android.systemui.statusbar.GestureRecorder;
import com.android.systemui.statusbar.KeyguardAffordanceView; import com.android.systemui.statusbar.KeyguardAffordanceView;
import com.android.systemui.statusbar.KeyguardIndicationController; import com.android.systemui.statusbar.KeyguardIndicationController;
@@ -324,7 +323,6 @@ public class NotificationPanelViewController extends PanelViewController {
private final KeyguardStatusBarViewComponent.Factory mKeyguardStatusBarViewComponentFactory; private final KeyguardStatusBarViewComponent.Factory mKeyguardStatusBarViewComponentFactory;
private final QSDetailDisplayer mQSDetailDisplayer; private final QSDetailDisplayer mQSDetailDisplayer;
private final FragmentService mFragmentService; private final FragmentService mFragmentService;
private final FeatureFlags mFeatureFlags;
private final ScrimController mScrimController; private final ScrimController mScrimController;
private final PrivacyDotViewController mPrivacyDotViewController; private final PrivacyDotViewController mPrivacyDotViewController;
private final QuickAccessWalletController mQuickAccessWalletController; private final QuickAccessWalletController mQuickAccessWalletController;
@@ -715,7 +713,6 @@ public class NotificationPanelViewController extends PanelViewController {
NotificationShadeDepthController notificationShadeDepthController, NotificationShadeDepthController notificationShadeDepthController,
AmbientState ambientState, AmbientState ambientState,
LockIconViewController lockIconViewController, LockIconViewController lockIconViewController,
FeatureFlags featureFlags,
KeyguardMediaController keyguardMediaController, KeyguardMediaController keyguardMediaController,
PrivacyDotViewController privacyDotViewController, PrivacyDotViewController privacyDotViewController,
TapAgainViewController tapAgainViewController, TapAgainViewController tapAgainViewController,
@@ -750,7 +747,6 @@ public class NotificationPanelViewController extends PanelViewController {
mKeyguardStatusViewComponentFactory = keyguardStatusViewComponentFactory; mKeyguardStatusViewComponentFactory = keyguardStatusViewComponentFactory;
mKeyguardStatusBarViewComponentFactory = keyguardStatusBarViewComponentFactory; mKeyguardStatusBarViewComponentFactory = keyguardStatusBarViewComponentFactory;
mDepthController = notificationShadeDepthController; mDepthController = notificationShadeDepthController;
mFeatureFlags = featureFlags;
mContentResolver = contentResolver; mContentResolver = contentResolver;
mKeyguardQsUserSwitchComponentFactory = keyguardQsUserSwitchComponentFactory; mKeyguardQsUserSwitchComponentFactory = keyguardQsUserSwitchComponentFactory;
mKeyguardUserSwitcherComponentFactory = keyguardUserSwitcherComponentFactory; mKeyguardUserSwitcherComponentFactory = keyguardUserSwitcherComponentFactory;
@@ -758,7 +754,7 @@ public class NotificationPanelViewController extends PanelViewController {
mFragmentService = fragmentService; mFragmentService = fragmentService;
mSettingsChangeObserver = new SettingsChangeObserver(handler); mSettingsChangeObserver = new SettingsChangeObserver(handler);
mShouldUseSplitNotificationShade = mShouldUseSplitNotificationShade =
Utils.shouldUseSplitNotificationShade(mFeatureFlags, mResources); Utils.shouldUseSplitNotificationShade(mResources);
mView.setWillNotDraw(!DEBUG); mView.setWillNotDraw(!DEBUG);
mSplitShadeHeaderController = splitShadeHeaderController; mSplitShadeHeaderController = splitShadeHeaderController;
mLayoutInflater = layoutInflater; mLayoutInflater = layoutInflater;
@@ -1035,7 +1031,7 @@ public class NotificationPanelViewController extends PanelViewController {
int qsWidth = mResources.getDimensionPixelSize(R.dimen.qs_panel_width); int qsWidth = mResources.getDimensionPixelSize(R.dimen.qs_panel_width);
int panelWidth = mResources.getDimensionPixelSize(R.dimen.notification_panel_width); int panelWidth = mResources.getDimensionPixelSize(R.dimen.notification_panel_width);
mShouldUseSplitNotificationShade = mShouldUseSplitNotificationShade =
Utils.shouldUseSplitNotificationShade(mFeatureFlags, mResources); Utils.shouldUseSplitNotificationShade(mResources);
mScrimController.setClipsQsScrim(!mShouldUseSplitNotificationShade); mScrimController.setClipsQsScrim(!mShouldUseSplitNotificationShade);
if (mQs != null) { if (mQs != null) {
mQs.setTranslateWhileExpanding(mShouldUseSplitNotificationShade); mQs.setTranslateWhileExpanding(mShouldUseSplitNotificationShade);

View File

@@ -29,7 +29,6 @@ import android.view.View;
import com.android.systemui.R; import com.android.systemui.R;
import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.QuickStepContract;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
import java.util.List; import java.util.List;
import java.util.function.Consumer; import java.util.function.Consumer;
@@ -161,13 +160,11 @@ public class Utils {
} }
/** /**
* Returns true if the device should use the split notification shade, based on feature flags, * Returns true if the device should use the split notification shade, based on orientation and
* orientation and screen width. * screen width.
*/ */
public static boolean shouldUseSplitNotificationShade(FeatureFlags featureFlags, public static boolean shouldUseSplitNotificationShade(Resources resources) {
Resources resources) { return resources.getBoolean(R.bool.config_use_split_notification_shade);
return featureFlags.isTwoColumnNotificationShadeEnabled()
&& resources.getBoolean(R.bool.config_use_split_notification_shade);
} }
/** /**

View File

@@ -16,13 +16,12 @@
package com.android.systemui.media package com.android.systemui.media
import android.test.suitebuilder.annotation.SmallTest
import android.testing.AndroidTestingRunner import android.testing.AndroidTestingRunner
import android.view.View.GONE import android.view.View.GONE
import android.view.View.VISIBLE import android.view.View.VISIBLE
import android.widget.FrameLayout import android.widget.FrameLayout
import androidx.test.filters.SmallTest
import com.android.systemui.SysuiTestCase import com.android.systemui.SysuiTestCase
import com.android.systemui.statusbar.FeatureFlags
import com.android.systemui.statusbar.NotificationLockscreenUserManager import com.android.systemui.statusbar.NotificationLockscreenUserManager
import com.android.systemui.statusbar.StatusBarState import com.android.systemui.statusbar.StatusBarState
import com.android.systemui.statusbar.SysuiStatusBarStateController import com.android.systemui.statusbar.SysuiStatusBarStateController
@@ -52,8 +51,7 @@ class KeyguardMediaControllerTest : SysuiTestCase() {
private lateinit var statusBarStateController: SysuiStatusBarStateController private lateinit var statusBarStateController: SysuiStatusBarStateController
@Mock @Mock
private lateinit var configurationController: ConfigurationController private lateinit var configurationController: ConfigurationController
@Mock
private lateinit var featureFlags: FeatureFlags
@Mock @Mock
private lateinit var notificationLockscreenUserManager: NotificationLockscreenUserManager private lateinit var notificationLockscreenUserManager: NotificationLockscreenUserManager
@JvmField @Rule @JvmField @Rule
@@ -77,7 +75,6 @@ class KeyguardMediaControllerTest : SysuiTestCase() {
bypassController, bypassController,
statusBarStateController, statusBarStateController,
notificationLockscreenUserManager, notificationLockscreenUserManager,
featureFlags,
context, context,
configurationController configurationController
) )

View File

@@ -53,7 +53,6 @@ import com.android.systemui.qs.tileimpl.QSFactoryImpl;
import com.android.systemui.settings.UserTracker; import com.android.systemui.settings.UserTracker;
import com.android.systemui.shared.plugins.PluginManager; import com.android.systemui.shared.plugins.PluginManager;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.phone.AutoTileManager; import com.android.systemui.statusbar.phone.AutoTileManager;
import com.android.systemui.statusbar.phone.StatusBar; import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.phone.StatusBarIconController; import com.android.systemui.statusbar.phone.StatusBarIconController;
@@ -92,8 +91,6 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
@Mock @Mock
private MediaHost mQQSMediaHost; private MediaHost mQQSMediaHost;
@Mock @Mock
private FeatureFlags mFeatureFlags;
@Mock
private FalsingManager mFalsingManager; private FalsingManager mFalsingManager;
public QSFragmentTest() { public QSFragmentTest() {
@@ -185,7 +182,6 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
mQSMediaHost, mQSMediaHost,
mQQSMediaHost, mQQSMediaHost,
mQsComponentFactory, mQsComponentFactory,
mFeatureFlags,
mFalsingManager); mFalsingManager);
} }
} }

View File

@@ -49,7 +49,6 @@ import com.android.systemui.plugins.qs.QSTileView;
import com.android.systemui.qs.customize.QSCustomizerController; import com.android.systemui.qs.customize.QSCustomizerController;
import com.android.systemui.qs.logging.QSLogger; import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSTileImpl; import com.android.systemui.qs.tileimpl.QSTileImpl;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.util.animation.DisappearParameters; import com.android.systemui.util.animation.DisappearParameters;
import org.junit.Before; import org.junit.Before;
@@ -93,8 +92,6 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
@Mock @Mock
PagedTileLayout mPagedTileLayout; PagedTileLayout mPagedTileLayout;
@Mock @Mock
FeatureFlags mFeatureFlags;
@Mock
Resources mResources; Resources mResources;
@Mock @Mock
Configuration mConfiguration; Configuration mConfiguration;
@@ -108,9 +105,9 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
protected TestableQSPanelControllerBase(QSPanel view, QSTileHost host, protected TestableQSPanelControllerBase(QSPanel view, QSTileHost host,
QSCustomizerController qsCustomizerController, MediaHost mediaHost, QSCustomizerController qsCustomizerController, MediaHost mediaHost,
MetricsLogger metricsLogger, UiEventLogger uiEventLogger, QSLogger qsLogger, MetricsLogger metricsLogger, UiEventLogger uiEventLogger, QSLogger qsLogger,
DumpManager dumpManager, FeatureFlags featureFlags) { DumpManager dumpManager) {
super(view, host, qsCustomizerController, true, mediaHost, metricsLogger, uiEventLogger, super(view, host, qsCustomizerController, true, mediaHost, metricsLogger, uiEventLogger,
qsLogger, dumpManager, featureFlags); qsLogger, dumpManager);
} }
@Override @Override
@@ -140,7 +137,7 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost, mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost,
mQSCustomizerController, mMediaHost, mQSCustomizerController, mMediaHost,
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags); mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager);
mController.init(); mController.init();
reset(mQSTileRevealController); reset(mQSTileRevealController);
@@ -152,7 +149,7 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
QSPanelControllerBase<QSPanel> controller = new TestableQSPanelControllerBase(mQSPanel, QSPanelControllerBase<QSPanel> controller = new TestableQSPanelControllerBase(mQSPanel,
mQSTileHost, mQSCustomizerController, mMediaHost, mQSTileHost, mQSCustomizerController, mMediaHost,
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags) { mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager) {
@Override @Override
protected QSTileRevealController createTileRevealController() { protected QSTileRevealController createTileRevealController() {
return mQSTileRevealController; return mQSTileRevealController;
@@ -241,18 +238,17 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE; mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE;
when(mMediaHost.getVisible()).thenReturn(true); when(mMediaHost.getVisible()).thenReturn(true);
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(false); when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(false);
mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost, mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost,
mQSCustomizerController, mMediaHost, mQSCustomizerController, mMediaHost,
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags); mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager);
assertThat(mController.shouldUseHorizontalLayout()).isTrue(); assertThat(mController.shouldUseHorizontalLayout()).isTrue();
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(true);
when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(true); when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(true);
mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost, mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost,
mQSCustomizerController, mMediaHost, mQSCustomizerController, mMediaHost,
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags); mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager);
assertThat(mController.shouldUseHorizontalLayout()).isFalse(); assertThat(mController.shouldUseHorizontalLayout()).isFalse();
} }

View File

@@ -42,7 +42,6 @@ import com.android.systemui.qs.tileimpl.QSTileImpl;
import com.android.systemui.settings.brightness.BrightnessController; import com.android.systemui.settings.brightness.BrightnessController;
import com.android.systemui.settings.brightness.BrightnessSlider; import com.android.systemui.settings.brightness.BrightnessSlider;
import com.android.systemui.settings.brightness.ToggleSlider; import com.android.systemui.settings.brightness.ToggleSlider;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.tuner.TunerService; import com.android.systemui.tuner.TunerService;
import com.android.systemui.util.animation.DisappearParameters; import com.android.systemui.util.animation.DisappearParameters;
@@ -96,8 +95,6 @@ public class QSPanelControllerTest extends SysuiTestCase {
@Mock @Mock
PagedTileLayout mPagedTileLayout; PagedTileLayout mPagedTileLayout;
FalsingManagerFake mFalsingManager = new FalsingManagerFake(); FalsingManagerFake mFalsingManager = new FalsingManagerFake();
@Mock
FeatureFlags mFeatureFlags;
private QSPanelController mController; private QSPanelController mController;
@@ -109,6 +106,7 @@ public class QSPanelControllerTest extends SysuiTestCase {
when(mQSPanel.getDumpableTag()).thenReturn("QSPanel"); when(mQSPanel.getDumpableTag()).thenReturn("QSPanel");
when(mQSPanel.getOrCreateTileLayout()).thenReturn(mPagedTileLayout); when(mQSPanel.getOrCreateTileLayout()).thenReturn(mPagedTileLayout);
when(mQSPanel.getTileLayout()).thenReturn(mPagedTileLayout); when(mQSPanel.getTileLayout()).thenReturn(mPagedTileLayout);
when(mQSPanel.getResources()).thenReturn(mContext.getResources());
when(mQSTileHost.getTiles()).thenReturn(Collections.singleton(mQSTile)); when(mQSTileHost.getTiles()).thenReturn(Collections.singleton(mQSTile));
when(mQSTileHost.createTileView(any(), eq(mQSTile), anyBoolean())).thenReturn(mQSTileView); when(mQSTileHost.createTileView(any(), eq(mQSTile), anyBoolean())).thenReturn(mQSTileView);
when(mToggleSliderViewControllerFactory.create(any(), any())) when(mToggleSliderViewControllerFactory.create(any(), any()))
@@ -123,7 +121,7 @@ public class QSPanelControllerTest extends SysuiTestCase {
mQSTileHost, mQSCustomizerController, true, mMediaHost, mQSTileHost, mQSCustomizerController, true, mMediaHost,
mQSTileRevealControllerFactory, mDumpManager, mMetricsLogger, mUiEventLogger, mQSTileRevealControllerFactory, mDumpManager, mMetricsLogger, mUiEventLogger,
mQSLogger, mBrightnessControllerFactory, mToggleSliderViewControllerFactory, mQSLogger, mBrightnessControllerFactory, mToggleSliderViewControllerFactory,
mFalsingManager, mFeatureFlags mFalsingManager
); );
mController.init(); mController.init();

View File

@@ -16,8 +16,8 @@
package com.android.systemui.qs package com.android.systemui.qs
import android.test.suitebuilder.annotation.SmallTest
import android.testing.AndroidTestingRunner import android.testing.AndroidTestingRunner
import androidx.test.filters.SmallTest
import com.android.internal.logging.MetricsLogger import com.android.internal.logging.MetricsLogger
import com.android.internal.logging.testing.UiEventLoggerFake import com.android.internal.logging.testing.UiEventLoggerFake
import com.android.systemui.SysuiTestCase import com.android.systemui.SysuiTestCase
@@ -77,6 +77,7 @@ class QuickQSPanelControllerTest : SysuiTestCase() {
`when`(quickQSPanel.tileLayout).thenReturn(tileLayout) `when`(quickQSPanel.tileLayout).thenReturn(tileLayout)
`when`(quickQSPanel.dumpableTag).thenReturn("") `when`(quickQSPanel.dumpableTag).thenReturn("")
`when`(quickQSPanel.resources).thenReturn(mContext.resources)
`when`(qsTileHost.createTileView(any(), any(), anyBoolean())).thenReturn(tileView) `when`(qsTileHost.createTileView(any(), any(), anyBoolean())).thenReturn(tileView)
controller = QuickQSPanelController( controller = QuickQSPanelController(
@@ -89,7 +90,6 @@ class QuickQSPanelControllerTest : SysuiTestCase() {
uiEventLogger, uiEventLogger,
qsLogger, qsLogger,
dumpManager, dumpManager,
featureFlags,
quickQsBrightnessController quickQsBrightnessController
) )
@@ -120,4 +120,4 @@ class QuickQSPanelControllerTest : SysuiTestCase() {
verify(quickQSPanel, times(limit)).addTile(any()) verify(quickQSPanel, times(limit)).addTile(any())
} }
} }

View File

@@ -1,10 +1,10 @@
package com.android.systemui.statusbar package com.android.systemui.statusbar
import android.test.suitebuilder.annotation.SmallTest
import android.testing.AndroidTestingRunner import android.testing.AndroidTestingRunner
import android.testing.TestableLooper import android.testing.TestableLooper
import android.testing.TestableLooper.RunWithLooper import android.testing.TestableLooper.RunWithLooper
import android.util.DisplayMetrics import android.util.DisplayMetrics
import androidx.test.filters.SmallTest
import com.android.systemui.ExpandHelper import com.android.systemui.ExpandHelper
import com.android.systemui.SysuiTestCase import com.android.systemui.SysuiTestCase
import com.android.systemui.classifier.FalsingCollector import com.android.systemui.classifier.FalsingCollector
@@ -67,7 +67,6 @@ class LockscreenShadeTransitionControllerTest : SysuiTestCase() {
@Mock lateinit var falsingManager: FalsingManager @Mock lateinit var falsingManager: FalsingManager
@Mock lateinit var notificationPanelController: NotificationPanelViewController @Mock lateinit var notificationPanelController: NotificationPanelViewController
@Mock lateinit var nsslController: NotificationStackScrollLayoutController @Mock lateinit var nsslController: NotificationStackScrollLayoutController
@Mock lateinit var featureFlags: FeatureFlags
@Mock lateinit var depthController: NotificationShadeDepthController @Mock lateinit var depthController: NotificationShadeDepthController
@Mock lateinit var stackscroller: NotificationStackScrollLayout @Mock lateinit var stackscroller: NotificationStackScrollLayout
@Mock lateinit var expandHelperCallback: ExpandHelper.Callback @Mock lateinit var expandHelperCallback: ExpandHelper.Callback
@@ -92,11 +91,10 @@ class LockscreenShadeTransitionControllerTest : SysuiTestCase() {
displayMetrics = displayMetrics, displayMetrics = displayMetrics,
mediaHierarchyManager = mediaHierarchyManager, mediaHierarchyManager = mediaHierarchyManager,
scrimController = scrimController, scrimController = scrimController,
featureFlags = featureFlags, depthController = depthController,
context = context, context = context,
configurationController = configurationController, configurationController = configurationController,
falsingManager = falsingManager, falsingManager = falsingManager
depthController = depthController
) )
whenever(nsslController.view).thenReturn(stackscroller) whenever(nsslController.view).thenReturn(stackscroller)
whenever(nsslController.expandHelperCallback).thenReturn(expandHelperCallback) whenever(nsslController.expandHelperCallback).thenReturn(expandHelperCallback)

View File

@@ -52,7 +52,6 @@ import com.android.systemui.ExpandHelper;
import com.android.systemui.R; import com.android.systemui.R;
import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCase;
import com.android.systemui.statusbar.EmptyShadeView; import com.android.systemui.statusbar.EmptyShadeView;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.NotificationRemoteInputManager; import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.NotificationShelf; import com.android.systemui.statusbar.NotificationShelf;
import com.android.systemui.statusbar.NotificationShelfController; import com.android.systemui.statusbar.NotificationShelfController;
@@ -106,7 +105,6 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
@Mock private SysuiStatusBarStateController mStatusBarStateController; @Mock private SysuiStatusBarStateController mStatusBarStateController;
@Mock private NotificationSwipeHelper mNotificationSwipeHelper; @Mock private NotificationSwipeHelper mNotificationSwipeHelper;
@Mock private NotificationStackScrollLayoutController mStackScrollLayoutController; @Mock private NotificationStackScrollLayoutController mStackScrollLayoutController;
@Mock private FeatureFlags mFeatureFlags;
@Mock private UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController; @Mock private UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController;
@Before @Before
@@ -146,7 +144,6 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
mGroupMembershipManger, mGroupMembershipManger,
mGroupExpansionManager, mGroupExpansionManager,
mAmbientState, mAmbientState,
mFeatureFlags,
mUnlockedScreenOffAnimationController); mUnlockedScreenOffAnimationController);
mStackScrollerInternal.initView(getContext(), mNotificationSwipeHelper); mStackScrollerInternal.initView(getContext(), mNotificationSwipeHelper);
mStackScroller = spy(mStackScrollerInternal); mStackScroller = spy(mStackScrollerInternal);
@@ -230,21 +227,24 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
@Test @Test
@UiThreadTest @UiThreadTest
public void testSetExpandedHeight_withSplitShade_doesntInterpolateStackHeight() { public void testSetExpandedHeight_withSplitShade_doesntInterpolateStackHeight() {
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(true); mContext.getOrCreateTestableResources()
.addOverride(R.bool.config_use_split_notification_shade, /* value= */ true);
final int[] expectedStackHeight = {0}; final int[] expectedStackHeight = {0};
mStackScroller.addOnExpandedHeightChangedListener((expandedHeight, appear) -> { mStackScroller.addOnExpandedHeightChangedListener((expandedHeight, appear) -> {
assertWithMessage("Given shade enabled: %s", assertWithMessage("Given shade enabled: %s",
mFeatureFlags.isTwoColumnNotificationShadeEnabled()) true)
.that(mStackScroller.getHeight()) .that(mStackScroller.getHeight())
.isEqualTo(expectedStackHeight[0]); .isEqualTo(expectedStackHeight[0]);
}); });
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(false); mContext.getOrCreateTestableResources()
.addOverride(R.bool.config_use_split_notification_shade, /* value= */ false);
expectedStackHeight[0] = 0; expectedStackHeight[0] = 0;
mStackScroller.setExpandedHeight(100f); mStackScroller.setExpandedHeight(100f);
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(true); mContext.getOrCreateTestableResources()
.addOverride(R.bool.config_use_split_notification_shade, /* value= */ true);
expectedStackHeight[0] = 100; expectedStackHeight[0] = 100;
mStackScroller.setExpandedHeight(100f); mStackScroller.setExpandedHeight(100f);
} }

View File

@@ -99,7 +99,6 @@ import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.qs.QSDetailDisplayer; import com.android.systemui.qs.QSDetailDisplayer;
import com.android.systemui.screenrecord.RecordingController; import com.android.systemui.screenrecord.RecordingController;
import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.KeyguardAffordanceView; import com.android.systemui.statusbar.KeyguardAffordanceView;
import com.android.systemui.statusbar.KeyguardIndicationController; import com.android.systemui.statusbar.KeyguardIndicationController;
import com.android.systemui.statusbar.LockscreenShadeTransitionController; import com.android.systemui.statusbar.LockscreenShadeTransitionController;
@@ -266,8 +265,6 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Mock @Mock
private MediaDataManager mMediaDataManager; private MediaDataManager mMediaDataManager;
@Mock @Mock
private FeatureFlags mFeatureFlags;
@Mock
private AmbientState mAmbientState; private AmbientState mAmbientState;
@Mock @Mock
private UserManager mUserManager; private UserManager mUserManager;
@@ -434,7 +431,6 @@ public class NotificationPanelViewTest extends SysuiTestCase {
mNotificationShadeDepthController, mNotificationShadeDepthController,
mAmbientState, mAmbientState,
mLockIconViewController, mLockIconViewController,
mFeatureFlags,
mKeyguardMediaController, mKeyguardMediaController,
mPrivacyDotViewController, mPrivacyDotViewController,
mTapAgainViewController, mTapAgainViewController,
@@ -560,7 +556,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testAllChildrenOfNotificationContainer_haveIds() { public void testAllChildrenOfNotificationContainer_haveIds() {
enableSplitShade(); enableSplitShade(/* enabled= */ true);
mNotificationContainerParent.removeAllViews(); mNotificationContainerParent.removeAllViews();
mNotificationContainerParent.addView(newViewWithId(1)); mNotificationContainerParent.addView(newViewWithId(1));
mNotificationContainerParent.addView(newViewWithId(View.NO_ID)); mNotificationContainerParent.addView(newViewWithId(View.NO_ID));
@@ -573,7 +569,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testSinglePaneShadeLayout_isAlignedToParent() { public void testSinglePaneShadeLayout_isAlignedToParent() {
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(false); enableSplitShade(/* enabled= */ false);
mNotificationPanelViewController.updateResources(); mNotificationPanelViewController.updateResources();
@@ -586,7 +582,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testKeyguardStatusViewInSplitShade_changesConstraintsDependingOnNotifications() { public void testKeyguardStatusViewInSplitShade_changesConstraintsDependingOnNotifications() {
mStatusBarStateController.setState(KEYGUARD); mStatusBarStateController.setState(KEYGUARD);
enableSplitShade(); enableSplitShade(/* enabled= */ true);
when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(2); when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(2);
mNotificationPanelViewController.updateResources(); mNotificationPanelViewController.updateResources();
@@ -633,7 +629,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testSplitShadeLayout_isAlignedToGuideline() { public void testSplitShadeLayout_isAlignedToGuideline() {
enableSplitShade(); enableSplitShade(/* enabled= */ true);
mNotificationPanelViewController.updateResources(); mNotificationPanelViewController.updateResources();
@@ -645,7 +641,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testSinglePaneShadeLayout_childrenHaveConstantWidth() { public void testSinglePaneShadeLayout_childrenHaveConstantWidth() {
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(false); enableSplitShade(/* enabled= */ false);
mNotificationPanelViewController.updateResources(); mNotificationPanelViewController.updateResources();
@@ -657,7 +653,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testSplitShadeLayout_childrenHaveZeroWidth() { public void testSplitShadeLayout_childrenHaveZeroWidth() {
enableSplitShade(); enableSplitShade(/* enabled= */ true);
mNotificationPanelViewController.updateResources(); mNotificationPanelViewController.updateResources();
@@ -669,7 +665,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
public void testOnDragDownEvent_horizontalTranslationIsZeroForSplitShade() { public void testOnDragDownEvent_horizontalTranslationIsZeroForSplitShade() {
when(mNotificationStackScrollLayoutController.getWidth()).thenReturn(350f); when(mNotificationStackScrollLayoutController.getWidth()).thenReturn(350f);
when(mView.getWidth()).thenReturn(800); when(mView.getWidth()).thenReturn(800);
enableSplitShade(); enableSplitShade(/* enabled= */ true);
onTouchEvent(MotionEvent.obtain(0L, 0L, MotionEvent.ACTION_DOWN, onTouchEvent(MotionEvent.obtain(0L, 0L, MotionEvent.ACTION_DOWN,
200f /* x position */, 0f, 0)); 200f /* x position */, 0f, 0));
@@ -703,7 +699,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testCanCollapsePanelOnTouch_falseInDualPaneShade() { public void testCanCollapsePanelOnTouch_falseInDualPaneShade() {
mStatusBarStateController.setState(SHADE); mStatusBarStateController.setState(SHADE);
enableSplitShade(); enableSplitShade(/* enabled= */ true);
mNotificationPanelViewController.setQsExpanded(true); mNotificationPanelViewController.setQsExpanded(true);
assertThat(mNotificationPanelViewController.canCollapsePanelOnTouch()).isFalse(); assertThat(mNotificationPanelViewController.canCollapsePanelOnTouch()).isFalse();
@@ -773,7 +769,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testSwitchesToCorrectClockInSplitShade() { public void testSwitchesToCorrectClockInSplitShade() {
mStatusBarStateController.setState(KEYGUARD); mStatusBarStateController.setState(KEYGUARD);
enableSplitShade(); enableSplitShade(/* enabled= */ true);
when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(0); when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(0);
triggerPositionClockAndNotifications(); triggerPositionClockAndNotifications();
@@ -788,7 +784,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
@Test @Test
public void testDisplaysSmallClockOnLockscreenInSplitShadeWhenMediaIsPlaying() { public void testDisplaysSmallClockOnLockscreenInSplitShadeWhenMediaIsPlaying() {
mStatusBarStateController.setState(KEYGUARD); mStatusBarStateController.setState(KEYGUARD);
enableSplitShade(); enableSplitShade(/* enabled= */ true);
when(mMediaDataManager.hasActiveMedia()).thenReturn(true); when(mMediaDataManager.hasActiveMedia()).thenReturn(true);
// one notification + media player visible // one notification + media player visible
@@ -837,9 +833,8 @@ public class NotificationPanelViewTest extends SysuiTestCase {
return constraintSet.getConstraint(id).layout; return constraintSet.getConstraint(id).layout;
} }
private void enableSplitShade() { private void enableSplitShade(boolean enabled) {
when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(true); when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(enabled);
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(true);
mNotificationPanelViewController.updateResources(); mNotificationPanelViewController.updateResources();
} }