Remove feature flag for split shade
This is still controlled by a config, that can be disabled in overlays if needed, but otherwise will be enabled by default for sw600dp-land Bug: 192077858 Test: manual Change-Id: I90eacc33bb05c954ca1015394110558fa911bb04
This commit is contained in:
@@ -24,9 +24,6 @@
|
||||
|
||||
<bool name="flag_monet">false</bool>
|
||||
|
||||
<!-- b/171917882 -->
|
||||
<bool name="flag_notification_twocolumn">false</bool>
|
||||
|
||||
<!-- AOD/Lockscreen alternate layout -->
|
||||
<bool name="flag_keyguard_layout">true</bool>
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@ import androidx.annotation.VisibleForTesting
|
||||
import com.android.systemui.dagger.SysUISingleton
|
||||
import com.android.systemui.media.dagger.MediaModule.KEYGUARD
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController
|
||||
import com.android.systemui.statusbar.FeatureFlags
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager
|
||||
import com.android.systemui.statusbar.StatusBarState
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController
|
||||
@@ -45,7 +44,6 @@ class KeyguardMediaController @Inject constructor(
|
||||
private val bypassController: KeyguardBypassController,
|
||||
private val statusBarStateController: SysuiStatusBarStateController,
|
||||
private val notifLockscreenUserManager: NotificationLockscreenUserManager,
|
||||
private val featureFlags: FeatureFlags,
|
||||
private val context: Context,
|
||||
configurationController: ConfigurationController
|
||||
) {
|
||||
@@ -73,7 +71,7 @@ class KeyguardMediaController @Inject constructor(
|
||||
}
|
||||
|
||||
private fun updateResources() {
|
||||
useSplitShade = Utils.shouldUseSplitNotificationShade(featureFlags, context.resources)
|
||||
useSplitShade = Utils.shouldUseSplitNotificationShade(context.resources)
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
|
||||
@@ -46,7 +46,6 @@ import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.qs.customize.QSCustomizerController;
|
||||
import com.android.systemui.qs.dagger.QSFragmentComponent;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
|
||||
import com.android.systemui.statusbar.phone.NotificationsQuickSettingsContainer;
|
||||
@@ -113,7 +112,6 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
|
||||
private QuickQSPanelController mQuickQSPanelController;
|
||||
private QSCustomizerController mQSCustomizerController;
|
||||
private ScrollListener mScrollListener;
|
||||
private FeatureFlags mFeatureFlags;
|
||||
/**
|
||||
* When true, QS will translate from outside the screen. It will be clipped with parallax
|
||||
* otherwise.
|
||||
@@ -137,7 +135,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
|
||||
StatusBarStateController statusBarStateController, CommandQueue commandQueue,
|
||||
QSDetailDisplayer qsDetailDisplayer, @Named(QS_PANEL) MediaHost qsMediaHost,
|
||||
@Named(QUICK_QS_PANEL) MediaHost qqsMediaHost,
|
||||
QSFragmentComponent.Factory qsComponentFactory, FeatureFlags featureFlags,
|
||||
QSFragmentComponent.Factory qsComponentFactory,
|
||||
FalsingManager falsingManager) {
|
||||
mRemoteInputQuickSettingsDisabler = remoteInputQsDisabler;
|
||||
mInjectionInflater = injectionInflater;
|
||||
@@ -148,7 +146,6 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
|
||||
mQsComponentFactory = qsComponentFactory;
|
||||
commandQueue.observe(getLifecycle(), this);
|
||||
mHost = qsTileHost;
|
||||
mFeatureFlags = featureFlags;
|
||||
mFalsingManager = falsingManager;
|
||||
mStatusBarStateController = statusBarStateController;
|
||||
}
|
||||
@@ -377,7 +374,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
|
||||
!mQsDisabled && expandVisually ? View.VISIBLE : View.INVISIBLE);
|
||||
mQsDragHandler.setVisibility((mQsExpanded || !keyguardShowing || mHeaderAnimating
|
||||
|| mShowCollapsedOnKeyguard)
|
||||
&& Utils.shouldUseSplitNotificationShade(mFeatureFlags, getResources())
|
||||
&& Utils.shouldUseSplitNotificationShade(getResources())
|
||||
? View.VISIBLE
|
||||
: View.GONE);
|
||||
}
|
||||
|
||||
@@ -41,7 +41,6 @@ import com.android.systemui.qs.dagger.QSScope;
|
||||
import com.android.systemui.qs.logging.QSLogger;
|
||||
import com.android.systemui.settings.brightness.BrightnessController;
|
||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
|
||||
@@ -102,10 +101,9 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
||||
QSTileRevealController.Factory qsTileRevealControllerFactory,
|
||||
DumpManager dumpManager, MetricsLogger metricsLogger, UiEventLogger uiEventLogger,
|
||||
QSLogger qsLogger, BrightnessController.Factory brightnessControllerFactory,
|
||||
BrightnessSlider.Factory brightnessSliderFactory, FalsingManager falsingManager,
|
||||
FeatureFlags featureFlags) {
|
||||
BrightnessSlider.Factory brightnessSliderFactory, FalsingManager falsingManager) {
|
||||
super(view, qstileHost, qsCustomizerController, usingMediaPlayer, mediaHost,
|
||||
metricsLogger, uiEventLogger, qsLogger, dumpManager, featureFlags);
|
||||
metricsLogger, uiEventLogger, qsLogger, dumpManager);
|
||||
mQsSecurityFooter = qsSecurityFooter;
|
||||
mTunerService = tunerService;
|
||||
mQsCustomizerController = qsCustomizerController;
|
||||
|
||||
@@ -35,7 +35,6 @@ import com.android.systemui.plugins.qs.QSTileView;
|
||||
import com.android.systemui.qs.customize.QSCustomizerController;
|
||||
import com.android.systemui.qs.external.CustomTile;
|
||||
import com.android.systemui.qs.logging.QSLogger;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.util.Utils;
|
||||
import com.android.systemui.util.ViewController;
|
||||
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 QSLogger mQSLogger;
|
||||
private final DumpManager mDumpManager;
|
||||
private final FeatureFlags mFeatureFlags;
|
||||
protected final ArrayList<TileRecord> mRecords = new ArrayList<>();
|
||||
protected boolean mShouldUseSplitNotificationShade;
|
||||
|
||||
@@ -85,7 +83,7 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr
|
||||
@Override
|
||||
public void onConfigurationChange(Configuration newConfig) {
|
||||
mShouldUseSplitNotificationShade =
|
||||
Utils.shouldUseSplitNotificationShade(mFeatureFlags, getResources());
|
||||
Utils.shouldUseSplitNotificationShade(getResources());
|
||||
if (newConfig.orientation != mLastOrientation) {
|
||||
mLastOrientation = newConfig.orientation;
|
||||
onScreenRotated();
|
||||
@@ -118,8 +116,7 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr
|
||||
MetricsLogger metricsLogger,
|
||||
UiEventLogger uiEventLogger,
|
||||
QSLogger qsLogger,
|
||||
DumpManager dumpManager,
|
||||
FeatureFlags featureFlags
|
||||
DumpManager dumpManager
|
||||
) {
|
||||
super(view);
|
||||
mHost = host;
|
||||
@@ -130,9 +127,8 @@ public abstract class QSPanelControllerBase<T extends QSPanel> extends ViewContr
|
||||
mUiEventLogger = uiEventLogger;
|
||||
mQSLogger = qsLogger;
|
||||
mDumpManager = dumpManager;
|
||||
mFeatureFlags = featureFlags;
|
||||
mShouldUseSplitNotificationShade =
|
||||
Utils.shouldUseSplitNotificationShade(mFeatureFlags, getResources());
|
||||
Utils.shouldUseSplitNotificationShade(getResources());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -29,7 +29,6 @@ import com.android.systemui.plugins.qs.QSTile;
|
||||
import com.android.systemui.qs.customize.QSCustomizerController;
|
||||
import com.android.systemui.qs.dagger.QSScope;
|
||||
import com.android.systemui.qs.logging.QSLogger;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -58,11 +57,11 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
||||
@Named(QS_USING_MEDIA_PLAYER) boolean usingMediaPlayer,
|
||||
@Named(QUICK_QS_PANEL) MediaHost mediaHost,
|
||||
MetricsLogger metricsLogger, UiEventLogger uiEventLogger, QSLogger qsLogger,
|
||||
DumpManager dumpManager, FeatureFlags featureFlags,
|
||||
DumpManager dumpManager,
|
||||
QuickQSBrightnessController quickQSBrightnessController
|
||||
) {
|
||||
super(view, qsTileHost, qsCustomizerController, usingMediaPlayer, mediaHost, metricsLogger,
|
||||
uiEventLogger, qsLogger, dumpManager, featureFlags);
|
||||
uiEventLogger, qsLogger, dumpManager);
|
||||
mBrightnessController = quickQSBrightnessController;
|
||||
}
|
||||
|
||||
|
||||
@@ -49,11 +49,6 @@ public class FeatureFlags {
|
||||
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() {
|
||||
return mFlagReader.isEnabled(R.bool.flag_keyguard_layout);
|
||||
}
|
||||
|
||||
@@ -60,7 +60,6 @@ class LockscreenShadeTransitionController @Inject constructor(
|
||||
private val mediaHierarchyManager: MediaHierarchyManager,
|
||||
private val scrimController: ScrimController,
|
||||
private val depthController: NotificationShadeDepthController,
|
||||
private val featureFlags: FeatureFlags,
|
||||
private val context: Context,
|
||||
configurationController: ConfigurationController,
|
||||
falsingManager: FalsingManager
|
||||
@@ -134,7 +133,7 @@ class LockscreenShadeTransitionController @Inject constructor(
|
||||
R.dimen.lockscreen_shade_scrim_transition_distance)
|
||||
fullTransitionDistance = context.resources.getDimensionPixelSize(
|
||||
R.dimen.lockscreen_shade_qs_transition_distance)
|
||||
useSplitShade = Utils.shouldUseSplitNotificationShade(featureFlags, context.resources)
|
||||
useSplitShade = Utils.shouldUseSplitNotificationShade(context.resources)
|
||||
}
|
||||
|
||||
fun setStackScroller(nsslController: NotificationStackScrollLayoutController) {
|
||||
|
||||
@@ -81,7 +81,6 @@ import com.android.systemui.animation.Interpolators;
|
||||
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.EmptyShadeView;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.NotificationShelfController;
|
||||
@@ -527,7 +526,6 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
|
||||
private NotificationEntry mTopHeadsUpEntry;
|
||||
private long mNumHeadsUp;
|
||||
private NotificationStackScrollLayoutController.TouchHandler mTouchHandler;
|
||||
private final FeatureFlags mFeatureFlags;
|
||||
private final UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController;
|
||||
private boolean mShouldUseSplitNotificationShade;
|
||||
|
||||
@@ -573,12 +571,10 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
|
||||
GroupMembershipManager groupMembershipManager,
|
||||
GroupExpansionManager groupExpansionManager,
|
||||
AmbientState ambientState,
|
||||
FeatureFlags featureFlags,
|
||||
UnlockedScreenOffAnimationController unlockedScreenOffAnimationController) {
|
||||
super(context, attrs, 0, 0);
|
||||
Resources res = getResources();
|
||||
mSectionsManager = notificationSectionsManager;
|
||||
mFeatureFlags = featureFlags;
|
||||
mUnlockedScreenOffAnimationController = unlockedScreenOffAnimationController;
|
||||
updateSplitNotificationShade();
|
||||
mSectionsManager.initialize(this, LayoutInflater.from(context));
|
||||
@@ -5403,7 +5399,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
|
||||
}
|
||||
|
||||
private void updateSplitNotificationShade() {
|
||||
boolean split = shouldUseSplitNotificationShade(mFeatureFlags, getResources());
|
||||
boolean split = shouldUseSplitNotificationShade(getResources());
|
||||
if (split != mShouldUseSplitNotificationShade) {
|
||||
mShouldUseSplitNotificationShade = split;
|
||||
updateDismissBehavior();
|
||||
|
||||
@@ -123,7 +123,6 @@ import com.android.systemui.qs.QSDetailDisplayer;
|
||||
import com.android.systemui.screenrecord.RecordingController;
|
||||
import com.android.systemui.shared.system.QuickStepContract;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.statusbar.GestureRecorder;
|
||||
import com.android.systemui.statusbar.KeyguardAffordanceView;
|
||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||
@@ -324,7 +323,6 @@ public class NotificationPanelViewController extends PanelViewController {
|
||||
private final KeyguardStatusBarViewComponent.Factory mKeyguardStatusBarViewComponentFactory;
|
||||
private final QSDetailDisplayer mQSDetailDisplayer;
|
||||
private final FragmentService mFragmentService;
|
||||
private final FeatureFlags mFeatureFlags;
|
||||
private final ScrimController mScrimController;
|
||||
private final PrivacyDotViewController mPrivacyDotViewController;
|
||||
private final QuickAccessWalletController mQuickAccessWalletController;
|
||||
@@ -715,7 +713,6 @@ public class NotificationPanelViewController extends PanelViewController {
|
||||
NotificationShadeDepthController notificationShadeDepthController,
|
||||
AmbientState ambientState,
|
||||
LockIconViewController lockIconViewController,
|
||||
FeatureFlags featureFlags,
|
||||
KeyguardMediaController keyguardMediaController,
|
||||
PrivacyDotViewController privacyDotViewController,
|
||||
TapAgainViewController tapAgainViewController,
|
||||
@@ -750,7 +747,6 @@ public class NotificationPanelViewController extends PanelViewController {
|
||||
mKeyguardStatusViewComponentFactory = keyguardStatusViewComponentFactory;
|
||||
mKeyguardStatusBarViewComponentFactory = keyguardStatusBarViewComponentFactory;
|
||||
mDepthController = notificationShadeDepthController;
|
||||
mFeatureFlags = featureFlags;
|
||||
mContentResolver = contentResolver;
|
||||
mKeyguardQsUserSwitchComponentFactory = keyguardQsUserSwitchComponentFactory;
|
||||
mKeyguardUserSwitcherComponentFactory = keyguardUserSwitcherComponentFactory;
|
||||
@@ -758,7 +754,7 @@ public class NotificationPanelViewController extends PanelViewController {
|
||||
mFragmentService = fragmentService;
|
||||
mSettingsChangeObserver = new SettingsChangeObserver(handler);
|
||||
mShouldUseSplitNotificationShade =
|
||||
Utils.shouldUseSplitNotificationShade(mFeatureFlags, mResources);
|
||||
Utils.shouldUseSplitNotificationShade(mResources);
|
||||
mView.setWillNotDraw(!DEBUG);
|
||||
mSplitShadeHeaderController = splitShadeHeaderController;
|
||||
mLayoutInflater = layoutInflater;
|
||||
@@ -1035,7 +1031,7 @@ public class NotificationPanelViewController extends PanelViewController {
|
||||
int qsWidth = mResources.getDimensionPixelSize(R.dimen.qs_panel_width);
|
||||
int panelWidth = mResources.getDimensionPixelSize(R.dimen.notification_panel_width);
|
||||
mShouldUseSplitNotificationShade =
|
||||
Utils.shouldUseSplitNotificationShade(mFeatureFlags, mResources);
|
||||
Utils.shouldUseSplitNotificationShade(mResources);
|
||||
mScrimController.setClipsQsScrim(!mShouldUseSplitNotificationShade);
|
||||
if (mQs != null) {
|
||||
mQs.setTranslateWhileExpanding(mShouldUseSplitNotificationShade);
|
||||
|
||||
@@ -29,7 +29,6 @@ import android.view.View;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.shared.system.QuickStepContract;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
|
||||
import java.util.List;
|
||||
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,
|
||||
* orientation and screen width.
|
||||
* Returns true if the device should use the split notification shade, based on orientation and
|
||||
* screen width.
|
||||
*/
|
||||
public static boolean shouldUseSplitNotificationShade(FeatureFlags featureFlags,
|
||||
Resources resources) {
|
||||
return featureFlags.isTwoColumnNotificationShadeEnabled()
|
||||
&& resources.getBoolean(R.bool.config_use_split_notification_shade);
|
||||
public static boolean shouldUseSplitNotificationShade(Resources resources) {
|
||||
return resources.getBoolean(R.bool.config_use_split_notification_shade);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -16,13 +16,12 @@
|
||||
|
||||
package com.android.systemui.media
|
||||
|
||||
import android.test.suitebuilder.annotation.SmallTest
|
||||
import android.testing.AndroidTestingRunner
|
||||
import android.view.View.GONE
|
||||
import android.view.View.VISIBLE
|
||||
import android.widget.FrameLayout
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.statusbar.FeatureFlags
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager
|
||||
import com.android.systemui.statusbar.StatusBarState
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController
|
||||
@@ -52,8 +51,7 @@ class KeyguardMediaControllerTest : SysuiTestCase() {
|
||||
private lateinit var statusBarStateController: SysuiStatusBarStateController
|
||||
@Mock
|
||||
private lateinit var configurationController: ConfigurationController
|
||||
@Mock
|
||||
private lateinit var featureFlags: FeatureFlags
|
||||
|
||||
@Mock
|
||||
private lateinit var notificationLockscreenUserManager: NotificationLockscreenUserManager
|
||||
@JvmField @Rule
|
||||
@@ -77,7 +75,6 @@ class KeyguardMediaControllerTest : SysuiTestCase() {
|
||||
bypassController,
|
||||
statusBarStateController,
|
||||
notificationLockscreenUserManager,
|
||||
featureFlags,
|
||||
context,
|
||||
configurationController
|
||||
)
|
||||
|
||||
@@ -53,7 +53,6 @@ import com.android.systemui.qs.tileimpl.QSFactoryImpl;
|
||||
import com.android.systemui.settings.UserTracker;
|
||||
import com.android.systemui.shared.plugins.PluginManager;
|
||||
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.StatusBar;
|
||||
import com.android.systemui.statusbar.phone.StatusBarIconController;
|
||||
@@ -92,8 +91,6 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
|
||||
@Mock
|
||||
private MediaHost mQQSMediaHost;
|
||||
@Mock
|
||||
private FeatureFlags mFeatureFlags;
|
||||
@Mock
|
||||
private FalsingManager mFalsingManager;
|
||||
|
||||
public QSFragmentTest() {
|
||||
@@ -185,7 +182,6 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
|
||||
mQSMediaHost,
|
||||
mQQSMediaHost,
|
||||
mQsComponentFactory,
|
||||
mFeatureFlags,
|
||||
mFalsingManager);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -49,7 +49,6 @@ import com.android.systemui.plugins.qs.QSTileView;
|
||||
import com.android.systemui.qs.customize.QSCustomizerController;
|
||||
import com.android.systemui.qs.logging.QSLogger;
|
||||
import com.android.systemui.qs.tileimpl.QSTileImpl;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.util.animation.DisappearParameters;
|
||||
|
||||
import org.junit.Before;
|
||||
@@ -93,8 +92,6 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
|
||||
@Mock
|
||||
PagedTileLayout mPagedTileLayout;
|
||||
@Mock
|
||||
FeatureFlags mFeatureFlags;
|
||||
@Mock
|
||||
Resources mResources;
|
||||
@Mock
|
||||
Configuration mConfiguration;
|
||||
@@ -108,9 +105,9 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
|
||||
protected TestableQSPanelControllerBase(QSPanel view, QSTileHost host,
|
||||
QSCustomizerController qsCustomizerController, MediaHost mediaHost,
|
||||
MetricsLogger metricsLogger, UiEventLogger uiEventLogger, QSLogger qsLogger,
|
||||
DumpManager dumpManager, FeatureFlags featureFlags) {
|
||||
DumpManager dumpManager) {
|
||||
super(view, host, qsCustomizerController, true, mediaHost, metricsLogger, uiEventLogger,
|
||||
qsLogger, dumpManager, featureFlags);
|
||||
qsLogger, dumpManager);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -140,7 +137,7 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
|
||||
|
||||
mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost,
|
||||
mQSCustomizerController, mMediaHost,
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags);
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager);
|
||||
|
||||
mController.init();
|
||||
reset(mQSTileRevealController);
|
||||
@@ -152,7 +149,7 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
|
||||
|
||||
QSPanelControllerBase<QSPanel> controller = new TestableQSPanelControllerBase(mQSPanel,
|
||||
mQSTileHost, mQSCustomizerController, mMediaHost,
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags) {
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager) {
|
||||
@Override
|
||||
protected QSTileRevealController createTileRevealController() {
|
||||
return mQSTileRevealController;
|
||||
@@ -241,18 +238,17 @@ public class QSPanelControllerBaseTest extends SysuiTestCase {
|
||||
mConfiguration.orientation = Configuration.ORIENTATION_LANDSCAPE;
|
||||
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,
|
||||
mQSCustomizerController, mMediaHost,
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags);
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager);
|
||||
|
||||
assertThat(mController.shouldUseHorizontalLayout()).isTrue();
|
||||
|
||||
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(true);
|
||||
when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(true);
|
||||
mController = new TestableQSPanelControllerBase(mQSPanel, mQSTileHost,
|
||||
mQSCustomizerController, mMediaHost,
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager, mFeatureFlags);
|
||||
mMetricsLogger, mUiEventLogger, mQSLogger, mDumpManager);
|
||||
|
||||
assertThat(mController.shouldUseHorizontalLayout()).isFalse();
|
||||
}
|
||||
|
||||
@@ -42,7 +42,6 @@ import com.android.systemui.qs.tileimpl.QSTileImpl;
|
||||
import com.android.systemui.settings.brightness.BrightnessController;
|
||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
||||
import com.android.systemui.settings.brightness.ToggleSlider;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
import com.android.systemui.util.animation.DisappearParameters;
|
||||
|
||||
@@ -96,8 +95,6 @@ public class QSPanelControllerTest extends SysuiTestCase {
|
||||
@Mock
|
||||
PagedTileLayout mPagedTileLayout;
|
||||
FalsingManagerFake mFalsingManager = new FalsingManagerFake();
|
||||
@Mock
|
||||
FeatureFlags mFeatureFlags;
|
||||
|
||||
private QSPanelController mController;
|
||||
|
||||
@@ -109,6 +106,7 @@ public class QSPanelControllerTest extends SysuiTestCase {
|
||||
when(mQSPanel.getDumpableTag()).thenReturn("QSPanel");
|
||||
when(mQSPanel.getOrCreateTileLayout()).thenReturn(mPagedTileLayout);
|
||||
when(mQSPanel.getTileLayout()).thenReturn(mPagedTileLayout);
|
||||
when(mQSPanel.getResources()).thenReturn(mContext.getResources());
|
||||
when(mQSTileHost.getTiles()).thenReturn(Collections.singleton(mQSTile));
|
||||
when(mQSTileHost.createTileView(any(), eq(mQSTile), anyBoolean())).thenReturn(mQSTileView);
|
||||
when(mToggleSliderViewControllerFactory.create(any(), any()))
|
||||
@@ -123,7 +121,7 @@ public class QSPanelControllerTest extends SysuiTestCase {
|
||||
mQSTileHost, mQSCustomizerController, true, mMediaHost,
|
||||
mQSTileRevealControllerFactory, mDumpManager, mMetricsLogger, mUiEventLogger,
|
||||
mQSLogger, mBrightnessControllerFactory, mToggleSliderViewControllerFactory,
|
||||
mFalsingManager, mFeatureFlags
|
||||
mFalsingManager
|
||||
);
|
||||
|
||||
mController.init();
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
|
||||
package com.android.systemui.qs
|
||||
|
||||
import android.test.suitebuilder.annotation.SmallTest
|
||||
import android.testing.AndroidTestingRunner
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.internal.logging.MetricsLogger
|
||||
import com.android.internal.logging.testing.UiEventLoggerFake
|
||||
import com.android.systemui.SysuiTestCase
|
||||
@@ -77,6 +77,7 @@ class QuickQSPanelControllerTest : SysuiTestCase() {
|
||||
|
||||
`when`(quickQSPanel.tileLayout).thenReturn(tileLayout)
|
||||
`when`(quickQSPanel.dumpableTag).thenReturn("")
|
||||
`when`(quickQSPanel.resources).thenReturn(mContext.resources)
|
||||
`when`(qsTileHost.createTileView(any(), any(), anyBoolean())).thenReturn(tileView)
|
||||
|
||||
controller = QuickQSPanelController(
|
||||
@@ -89,7 +90,6 @@ class QuickQSPanelControllerTest : SysuiTestCase() {
|
||||
uiEventLogger,
|
||||
qsLogger,
|
||||
dumpManager,
|
||||
featureFlags,
|
||||
quickQsBrightnessController
|
||||
)
|
||||
|
||||
@@ -120,4 +120,4 @@ class QuickQSPanelControllerTest : SysuiTestCase() {
|
||||
|
||||
verify(quickQSPanel, times(limit)).addTile(any())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.android.systemui.statusbar
|
||||
|
||||
import android.test.suitebuilder.annotation.SmallTest
|
||||
import android.testing.AndroidTestingRunner
|
||||
import android.testing.TestableLooper
|
||||
import android.testing.TestableLooper.RunWithLooper
|
||||
import android.util.DisplayMetrics
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.ExpandHelper
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.classifier.FalsingCollector
|
||||
@@ -67,7 +67,6 @@ class LockscreenShadeTransitionControllerTest : SysuiTestCase() {
|
||||
@Mock lateinit var falsingManager: FalsingManager
|
||||
@Mock lateinit var notificationPanelController: NotificationPanelViewController
|
||||
@Mock lateinit var nsslController: NotificationStackScrollLayoutController
|
||||
@Mock lateinit var featureFlags: FeatureFlags
|
||||
@Mock lateinit var depthController: NotificationShadeDepthController
|
||||
@Mock lateinit var stackscroller: NotificationStackScrollLayout
|
||||
@Mock lateinit var expandHelperCallback: ExpandHelper.Callback
|
||||
@@ -92,11 +91,10 @@ class LockscreenShadeTransitionControllerTest : SysuiTestCase() {
|
||||
displayMetrics = displayMetrics,
|
||||
mediaHierarchyManager = mediaHierarchyManager,
|
||||
scrimController = scrimController,
|
||||
featureFlags = featureFlags,
|
||||
depthController = depthController,
|
||||
context = context,
|
||||
configurationController = configurationController,
|
||||
falsingManager = falsingManager,
|
||||
depthController = depthController
|
||||
falsingManager = falsingManager
|
||||
)
|
||||
whenever(nsslController.view).thenReturn(stackscroller)
|
||||
whenever(nsslController.expandHelperCallback).thenReturn(expandHelperCallback)
|
||||
|
||||
@@ -52,7 +52,6 @@ import com.android.systemui.ExpandHelper;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.EmptyShadeView;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.NotificationShelfController;
|
||||
@@ -106,7 +105,6 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
|
||||
@Mock private SysuiStatusBarStateController mStatusBarStateController;
|
||||
@Mock private NotificationSwipeHelper mNotificationSwipeHelper;
|
||||
@Mock private NotificationStackScrollLayoutController mStackScrollLayoutController;
|
||||
@Mock private FeatureFlags mFeatureFlags;
|
||||
@Mock private UnlockedScreenOffAnimationController mUnlockedScreenOffAnimationController;
|
||||
|
||||
@Before
|
||||
@@ -146,7 +144,6 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
|
||||
mGroupMembershipManger,
|
||||
mGroupExpansionManager,
|
||||
mAmbientState,
|
||||
mFeatureFlags,
|
||||
mUnlockedScreenOffAnimationController);
|
||||
mStackScrollerInternal.initView(getContext(), mNotificationSwipeHelper);
|
||||
mStackScroller = spy(mStackScrollerInternal);
|
||||
@@ -230,21 +227,24 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
|
||||
@Test
|
||||
@UiThreadTest
|
||||
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};
|
||||
|
||||
mStackScroller.addOnExpandedHeightChangedListener((expandedHeight, appear) -> {
|
||||
assertWithMessage("Given shade enabled: %s",
|
||||
mFeatureFlags.isTwoColumnNotificationShadeEnabled())
|
||||
true)
|
||||
.that(mStackScroller.getHeight())
|
||||
.isEqualTo(expectedStackHeight[0]);
|
||||
});
|
||||
|
||||
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(false);
|
||||
mContext.getOrCreateTestableResources()
|
||||
.addOverride(R.bool.config_use_split_notification_shade, /* value= */ false);
|
||||
expectedStackHeight[0] = 0;
|
||||
mStackScroller.setExpandedHeight(100f);
|
||||
|
||||
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(true);
|
||||
mContext.getOrCreateTestableResources()
|
||||
.addOverride(R.bool.config_use_split_notification_shade, /* value= */ true);
|
||||
expectedStackHeight[0] = 100;
|
||||
mStackScroller.setExpandedHeight(100f);
|
||||
}
|
||||
|
||||
@@ -99,7 +99,6 @@ import com.android.systemui.plugins.FalsingManager;
|
||||
import com.android.systemui.qs.QSDetailDisplayer;
|
||||
import com.android.systemui.screenrecord.RecordingController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.statusbar.KeyguardAffordanceView;
|
||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||
import com.android.systemui.statusbar.LockscreenShadeTransitionController;
|
||||
@@ -266,8 +265,6 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
@Mock
|
||||
private MediaDataManager mMediaDataManager;
|
||||
@Mock
|
||||
private FeatureFlags mFeatureFlags;
|
||||
@Mock
|
||||
private AmbientState mAmbientState;
|
||||
@Mock
|
||||
private UserManager mUserManager;
|
||||
@@ -434,7 +431,6 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
mNotificationShadeDepthController,
|
||||
mAmbientState,
|
||||
mLockIconViewController,
|
||||
mFeatureFlags,
|
||||
mKeyguardMediaController,
|
||||
mPrivacyDotViewController,
|
||||
mTapAgainViewController,
|
||||
@@ -560,7 +556,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void testAllChildrenOfNotificationContainer_haveIds() {
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
mNotificationContainerParent.removeAllViews();
|
||||
mNotificationContainerParent.addView(newViewWithId(1));
|
||||
mNotificationContainerParent.addView(newViewWithId(View.NO_ID));
|
||||
@@ -573,7 +569,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void testSinglePaneShadeLayout_isAlignedToParent() {
|
||||
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(false);
|
||||
enableSplitShade(/* enabled= */ false);
|
||||
|
||||
mNotificationPanelViewController.updateResources();
|
||||
|
||||
@@ -586,7 +582,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void testKeyguardStatusViewInSplitShade_changesConstraintsDependingOnNotifications() {
|
||||
mStatusBarStateController.setState(KEYGUARD);
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
|
||||
when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(2);
|
||||
mNotificationPanelViewController.updateResources();
|
||||
@@ -633,7 +629,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void testSplitShadeLayout_isAlignedToGuideline() {
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
|
||||
mNotificationPanelViewController.updateResources();
|
||||
|
||||
@@ -645,7 +641,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void testSinglePaneShadeLayout_childrenHaveConstantWidth() {
|
||||
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(false);
|
||||
enableSplitShade(/* enabled= */ false);
|
||||
|
||||
mNotificationPanelViewController.updateResources();
|
||||
|
||||
@@ -657,7 +653,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void testSplitShadeLayout_childrenHaveZeroWidth() {
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
|
||||
mNotificationPanelViewController.updateResources();
|
||||
|
||||
@@ -669,7 +665,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
public void testOnDragDownEvent_horizontalTranslationIsZeroForSplitShade() {
|
||||
when(mNotificationStackScrollLayoutController.getWidth()).thenReturn(350f);
|
||||
when(mView.getWidth()).thenReturn(800);
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
|
||||
onTouchEvent(MotionEvent.obtain(0L, 0L, MotionEvent.ACTION_DOWN,
|
||||
200f /* x position */, 0f, 0));
|
||||
@@ -703,7 +699,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void testCanCollapsePanelOnTouch_falseInDualPaneShade() {
|
||||
mStatusBarStateController.setState(SHADE);
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
mNotificationPanelViewController.setQsExpanded(true);
|
||||
|
||||
assertThat(mNotificationPanelViewController.canCollapsePanelOnTouch()).isFalse();
|
||||
@@ -773,7 +769,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void testSwitchesToCorrectClockInSplitShade() {
|
||||
mStatusBarStateController.setState(KEYGUARD);
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
|
||||
when(mNotificationStackScrollLayoutController.getVisibleNotificationCount()).thenReturn(0);
|
||||
triggerPositionClockAndNotifications();
|
||||
@@ -788,7 +784,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void testDisplaysSmallClockOnLockscreenInSplitShadeWhenMediaIsPlaying() {
|
||||
mStatusBarStateController.setState(KEYGUARD);
|
||||
enableSplitShade();
|
||||
enableSplitShade(/* enabled= */ true);
|
||||
when(mMediaDataManager.hasActiveMedia()).thenReturn(true);
|
||||
|
||||
// one notification + media player visible
|
||||
@@ -837,9 +833,8 @@ public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
return constraintSet.getConstraint(id).layout;
|
||||
}
|
||||
|
||||
private void enableSplitShade() {
|
||||
when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(true);
|
||||
when(mFeatureFlags.isTwoColumnNotificationShadeEnabled()).thenReturn(true);
|
||||
private void enableSplitShade(boolean enabled) {
|
||||
when(mResources.getBoolean(R.bool.config_use_split_notification_shade)).thenReturn(enabled);
|
||||
mNotificationPanelViewController.updateResources();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user