Renaming SplitShadeHeader to LargeScreenShadeHeader

Bug: 222472794
Test: code compiles and works
Change-Id: Ifcd1f11546cfb84a4760fb8c2cd134bdf366f8c2
This commit is contained in:
Michal Brzezinski 2022-03-22 11:23:39 +00:00
parent 5ad1ec1c71
commit 193baa3ab3
18 changed files with 94 additions and 93 deletions

View File

@ -20,7 +20,7 @@
android:id="@+id/split_shade_status_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="@dimen/split_shade_header_min_height"
android:minHeight="@dimen/large_screen_shade_header_min_height"
android:clickable="false"
android:focusable="true"
android:paddingLeft="@dimen/qs_panel_padding"
@ -61,8 +61,8 @@
<include
android:id="@+id/carrier_group"
layout="@layout/qs_carrier_group"
app:layout_constraintHeight_min="@dimen/split_shade_header_min_height"
android:minHeight="@dimen/split_shade_header_min_height"
app:layout_constraintHeight_min="@dimen/large_screen_shade_header_min_height"
android:minHeight="@dimen/large_screen_shade_header_min_height"
app:layout_constraintWidth_min="48dp"
android:layout_width="0dp"
android:layout_height="0dp"
@ -78,7 +78,7 @@
<com.android.systemui.statusbar.phone.StatusIconContainer
android:id="@+id/statusIcons"
app:layout_constraintHeight_min="@dimen/split_shade_header_min_height"
app:layout_constraintHeight_min="@dimen/large_screen_shade_header_min_height"
android:paddingEnd="@dimen/signal_cluster_battery_padding"
android:layout_width="wrap_content"
android:layout_height="48dp"
@ -93,7 +93,7 @@
android:id="@+id/batteryRemainingIcon"
android:layout_width="wrap_content"
android:layout_height="48dp"
app:layout_constraintHeight_min="@dimen/split_shade_header_min_height"
app:layout_constraintHeight_min="@dimen/large_screen_shade_header_min_height"
app:textAppearance="@style/TextAppearance.QS.Status"
app:layout_constraintStart_toEndOf="@id/statusIcons"
app:layout_constraintEnd_toEndOf="parent"

View File

@ -18,8 +18,8 @@
xmlns:systemui="http://schemas.android.com/apk/res-auto"
android:id="@+id/split_shade_status_bar"
android:layout_width="match_parent"
android:layout_height="@dimen/split_shade_header_height"
android:minHeight="@dimen/split_shade_header_min_height"
android:layout_height="@dimen/large_screen_shade_header_height"
android:minHeight="@dimen/large_screen_shade_header_min_height"
android:clickable="false"
android:focusable="true"
android:paddingLeft="@dimen/qs_panel_padding"
@ -32,7 +32,7 @@
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:minWidth="48dp"
android:minHeight="@dimen/split_shade_header_min_height"
android:minHeight="@dimen/large_screen_shade_header_min_height"
android:gravity="start|center_vertical"
android:paddingStart="@dimen/status_bar_left_clock_starting_padding"
android:paddingEnd="@dimen/status_bar_left_clock_end_padding"
@ -69,7 +69,7 @@
android:layout_gravity="end|center_vertical"
android:layout_marginStart="8dp"
android:focusable="false"
android:minHeight="@dimen/split_shade_header_min_height"
android:minHeight="@dimen/large_screen_shade_header_min_height"
android:minWidth="48dp" />
<com.android.systemui.statusbar.phone.StatusIconContainer

View File

@ -68,5 +68,5 @@
<!-- The width of large/content heavy dialogs (e.g. Internet, Media output, etc) -->
<dimen name="large_dialog_width">472dp</dimen>
<dimen name="split_shade_header_height">42dp</dimen>
<dimen name="large_screen_shade_header_height">42dp</dimen>
</resources>

View File

@ -21,6 +21,6 @@
<dimen name="controls_padding_horizontal">75dp</dimen>
<dimen name="split_shade_header_height">56dp</dimen>
<dimen name="large_screen_shade_header_height">56dp</dimen>
</resources>

View File

@ -368,8 +368,8 @@
<dimen name="match_parent">-1px</dimen>
<!-- Height of status bar in split shade mode - visible only on large screens -->
<dimen name="split_shade_header_height">@*android:dimen/quick_qs_offset_height</dimen>
<dimen name="split_shade_header_min_height">@dimen/qs_header_row_min_height</dimen>
<dimen name="large_screen_shade_header_height">@*android:dimen/quick_qs_offset_height</dimen>
<dimen name="large_screen_shade_header_min_height">@dimen/qs_header_row_min_height</dimen>
<!-- The top margin of the panel that holds the list of notifications.
On phones it's always 0dp but it's overridden in Car UI

View File

@ -43,9 +43,9 @@
</Transition>
<Transition
android:id="@+id/split_header_transition"
app:constraintSetStart="@id/split_header_constraint"
app:constraintSetEnd="@id/split_header_constraint"/>
android:id="@+id/large_screen_header_transition"
app:constraintSetStart="@id/large_screen_header_constraint"
app:constraintSetEnd="@id/large_screen_header_constraint"/>
<!--
Placeholder ConstraintSet. They are populated in the controller for this class.
@ -56,6 +56,6 @@
<ConstraintSet android:id="@id/qs_header_constraint"/>
<ConstraintSet android:id="@id/split_header_constraint" />
<ConstraintSet android:id="@id/large_screen_header_constraint" />
</MotionScene>

View File

@ -18,7 +18,7 @@
<ConstraintSet
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/split_header_constraint">
android:id="@+id/large_screen_header_constraint">
<Constraint
android:id="@+id/clock">
@ -58,7 +58,7 @@
<Layout
android:layout_width="wrap_content"
android:layout_height="0dp"
app:layout_constraintHeight_min="@dimen/split_shade_header_min_height"
app:layout_constraintHeight_min="@dimen/large_screen_shade_header_min_height"
app:layout_constraintStart_toEndOf="@id/statusIcons"
app:layout_constraintEnd_toStartOf="@id/privacy_container"
app:layout_constraintTop_toTopOf="@id/clock"

View File

@ -148,7 +148,7 @@ public class KeyguardClockPositionAlgorithm {
mStatusViewBottomMargin = res.getDimensionPixelSize(
R.dimen.keyguard_status_view_bottom_margin);
mSplitShadeTopNotificationsMargin =
res.getDimensionPixelSize(R.dimen.split_shade_header_height);
res.getDimensionPixelSize(R.dimen.large_screen_shade_header_height);
mSplitShadeTargetTopMargin =
res.getDimensionPixelSize(R.dimen.keyguard_split_shade_top_margin);

View File

@ -31,35 +31,35 @@ import com.android.systemui.qs.ChipVisibilityListener
import com.android.systemui.qs.HeaderPrivacyIconsController
import com.android.systemui.qs.carrier.QSCarrierGroupController
import com.android.systemui.statusbar.phone.dagger.CentralSurfacesComponent.CentralSurfacesScope
import com.android.systemui.statusbar.phone.dagger.StatusBarViewModule.SPLIT_SHADE_BATTERY_CONTROLLER
import com.android.systemui.statusbar.phone.dagger.StatusBarViewModule.SPLIT_SHADE_HEADER
import com.android.systemui.statusbar.phone.dagger.StatusBarViewModule.LARGE_SCREEN_BATTERY_CONTROLLER
import com.android.systemui.statusbar.phone.dagger.StatusBarViewModule.LARGE_SCREEN_SHADE_HEADER
import java.io.FileDescriptor
import java.io.PrintWriter
import javax.inject.Inject
import javax.inject.Named
@CentralSurfacesScope
class SplitShadeHeaderController @Inject constructor(
@Named(SPLIT_SHADE_HEADER) private val statusBar: View,
class LargeScreenShadeHeaderController @Inject constructor(
@Named(LARGE_SCREEN_SHADE_HEADER) private val header: View,
private val statusBarIconController: StatusBarIconController,
private val privacyIconsController: HeaderPrivacyIconsController,
qsCarrierGroupControllerBuilder: QSCarrierGroupController.Builder,
featureFlags: FeatureFlags,
@Named(SPLIT_SHADE_BATTERY_CONTROLLER) batteryMeterViewController: BatteryMeterViewController,
@Named(LARGE_SCREEN_BATTERY_CONTROLLER) batteryMeterViewController: BatteryMeterViewController,
dumpManager: DumpManager
) : Dumpable {
companion object {
private val HEADER_TRANSITION_ID = R.id.header_transition
private val SPLIT_HEADER_TRANSITION_ID = R.id.split_header_transition
private val LARGE_SCREEN_HEADER_TRANSITION_ID = R.id.large_screen_header_transition
private val QQS_HEADER_CONSTRAINT = R.id.qqs_header_constraint
private val QS_HEADER_CONSTRAINT = R.id.qs_header_constraint
private val SPLIT_HEADER_CONSTRAINT = R.id.split_header_constraint
private val LARGE_SCREEN_HEADER_CONSTRAINT = R.id.large_screen_header_constraint
private fun Int.stateToString() = when (this) {
QQS_HEADER_CONSTRAINT -> "QQS Header"
QS_HEADER_CONSTRAINT -> "QS Header"
SPLIT_HEADER_CONSTRAINT -> "Split Header"
LARGE_SCREEN_HEADER_CONSTRAINT -> "Large Screen Header"
else -> "Unknown state"
}
}
@ -99,7 +99,7 @@ class SplitShadeHeaderController @Inject constructor(
var shadeExpandedFraction = -1f
set(value) {
if (visible && field != value) {
statusBar.alpha = ShadeInterpolation.getContentAlpha(value)
header.alpha = ShadeInterpolation.getContentAlpha(value)
field = value
}
}
@ -123,53 +123,53 @@ class SplitShadeHeaderController @Inject constructor(
private val chipVisibilityListener: ChipVisibilityListener = object : ChipVisibilityListener {
override fun onChipVisibilityRefreshed(visible: Boolean) {
if (statusBar is MotionLayout) {
val state = statusBar.getConstraintSet(QQS_HEADER_CONSTRAINT).apply {
if (header is MotionLayout) {
val state = header.getConstraintSet(QQS_HEADER_CONSTRAINT).apply {
setAlpha(R.id.statusIcons, if (visible) 0f else 1f)
setAlpha(R.id.batteryRemainingIcon, if (visible) 0f else 1f)
}
statusBar.updateState(QQS_HEADER_CONSTRAINT, state)
header.updateState(QQS_HEADER_CONSTRAINT, state)
}
}
}
init {
if (statusBar is MotionLayout) {
val context = statusBar.context
val resources = statusBar.resources
statusBar.getConstraintSet(QQS_HEADER_CONSTRAINT)
if (header is MotionLayout) {
val context = header.context
val resources = header.resources
header.getConstraintSet(QQS_HEADER_CONSTRAINT)
.load(context, resources.getXml(R.xml.qqs_header))
statusBar.getConstraintSet(QS_HEADER_CONSTRAINT)
header.getConstraintSet(QS_HEADER_CONSTRAINT)
.load(context, resources.getXml(R.xml.qs_header))
statusBar.getConstraintSet(SPLIT_HEADER_CONSTRAINT)
.load(context, resources.getXml(R.xml.split_header))
header.getConstraintSet(LARGE_SCREEN_HEADER_CONSTRAINT)
.load(context, resources.getXml(R.xml.large_screen_shade_header))
privacyIconsController.chipVisibilityListener = chipVisibilityListener
}
}
init {
batteryMeterViewController.init()
val batteryIcon: BatteryMeterView = statusBar.findViewById(R.id.batteryRemainingIcon)
val batteryIcon: BatteryMeterView = header.findViewById(R.id.batteryRemainingIcon)
// battery settings same as in QS icons
batteryMeterViewController.ignoreTunerUpdates()
batteryIcon.setPercentShowMode(BatteryMeterView.MODE_ESTIMATE)
iconContainer = statusBar.findViewById(R.id.statusIcons)
iconContainer = header.findViewById(R.id.statusIcons)
iconManager = StatusBarIconController.TintedIconManager(iconContainer, featureFlags)
iconManager.setTint(Utils.getColorAttrDefaultColor(statusBar.context,
iconManager.setTint(Utils.getColorAttrDefaultColor(header.context,
android.R.attr.textColorPrimary))
carrierIconSlots = if (featureFlags.isEnabled(Flags.COMBINED_STATUS_BAR_SIGNAL_ICONS)) {
listOf(
statusBar.context.getString(com.android.internal.R.string.status_bar_no_calling),
statusBar.context.getString(com.android.internal.R.string.status_bar_call_strength)
header.context.getString(com.android.internal.R.string.status_bar_no_calling),
header.context.getString(com.android.internal.R.string.status_bar_call_strength)
)
} else {
listOf(statusBar.context.getString(com.android.internal.R.string.status_bar_mobile))
listOf(header.context.getString(com.android.internal.R.string.status_bar_mobile))
}
qsCarrierGroupController = qsCarrierGroupControllerBuilder
.setQSCarrierGroup(statusBar.findViewById(R.id.carrier_group))
.setQSCarrierGroup(header.findViewById(R.id.carrier_group))
.build()
dumpManager.registerDumpable(this)
@ -180,7 +180,7 @@ class SplitShadeHeaderController @Inject constructor(
private fun updateScrollY() {
if (!active && combinedHeaders) {
statusBar.scrollY = qsScrollY
header.scrollY = qsScrollY
}
}
@ -212,8 +212,8 @@ class SplitShadeHeaderController @Inject constructor(
} else {
View.INVISIBLE
}
if (statusBar.visibility != visibility) {
statusBar.visibility = visibility
if (header.visibility != visibility) {
header.visibility = visibility
visible = visibility == View.VISIBLE
}
}
@ -222,20 +222,20 @@ class SplitShadeHeaderController @Inject constructor(
if (!combinedHeaders) {
return
}
statusBar as MotionLayout
header as MotionLayout
if (active) {
statusBar.setTransition(SPLIT_HEADER_TRANSITION_ID)
header.setTransition(LARGE_SCREEN_HEADER_TRANSITION_ID)
} else {
statusBar.setTransition(HEADER_TRANSITION_ID)
statusBar.transitionToStart()
header.setTransition(HEADER_TRANSITION_ID)
header.transitionToStart()
updatePosition()
updateScrollY()
}
}
private fun updatePosition() {
if (statusBar is MotionLayout && !active && visible) {
statusBar.setProgress(qsExpandedFraction)
if (header is MotionLayout && !active && visible) {
header.setProgress(qsExpandedFraction)
}
}
@ -267,8 +267,8 @@ class SplitShadeHeaderController @Inject constructor(
pw.println("qsExpandedFraction: $qsExpandedFraction")
pw.println("qsScrollY: $qsScrollY")
if (combinedHeaders) {
statusBar as MotionLayout
pw.println("currentState: ${statusBar.currentState.stateToString()}")
header as MotionLayout
pw.println("currentState: ${header.currentState.stateToString()}")
}
}
}

View File

@ -312,7 +312,7 @@ public class NotificationPanelViewController extends PanelViewController {
private final LockscreenShadeTransitionController mLockscreenShadeTransitionController;
private final TapAgainViewController mTapAgainViewController;
private final SplitShadeHeaderController mSplitShadeHeaderController;
private final LargeScreenShadeHeaderController mLargeScreenShadeHeaderController;
private final RecordingController mRecordingController;
private final PanelEventsEmitter mPanelEventsEmitter;
private boolean mShouldUseSplitNotificationShade;
@ -734,7 +734,7 @@ public class NotificationPanelViewController extends PanelViewController {
RecordingController recordingController,
@Main Executor uiExecutor,
SecureSettings secureSettings,
SplitShadeHeaderController splitShadeHeaderController,
LargeScreenShadeHeaderController largeScreenShadeHeaderController,
ScreenOffAnimationController screenOffAnimationController,
LockscreenGestureLogger lockscreenGestureLogger,
PanelExpansionStateManager panelExpansionStateManager,
@ -794,7 +794,7 @@ public class NotificationPanelViewController extends PanelViewController {
mShouldUseSplitNotificationShade =
LargeScreenUtils.shouldUseSplitNotificationShade(mResources);
mView.setWillNotDraw(!DEBUG);
mSplitShadeHeaderController = splitShadeHeaderController;
mLargeScreenShadeHeaderController = largeScreenShadeHeaderController;
mLayoutInflater = layoutInflater;
mFeatureFlags = featureFlags;
mFalsingManager = falsingManager;
@ -1088,12 +1088,12 @@ public class NotificationPanelViewController extends PanelViewController {
mQs.setInSplitShade(mShouldUseSplitNotificationShade);
}
mLargeScreenShadeHeaderHeight =
mResources.getDimensionPixelSize(R.dimen.split_shade_header_height);
mResources.getDimensionPixelSize(R.dimen.large_screen_shade_header_height);
mQuickQsHeaderHeight = useLargeScreenShadeHeader ? mLargeScreenShadeHeaderHeight :
SystemBarUtils.getQuickQsOffsetHeight(mView.getContext());
int topMargin = useLargeScreenShadeHeader ? mLargeScreenShadeHeaderHeight :
mResources.getDimensionPixelSize(R.dimen.notification_panel_margin_top);
mSplitShadeHeaderController.setActive(useLargeScreenShadeHeader);
mLargeScreenShadeHeaderController.setActive(useLargeScreenShadeHeader);
mAmbientState.setStackTopMargin(topMargin);
mNotificationsQSContainerController.updateResources();
@ -2273,9 +2273,9 @@ public class NotificationPanelViewController extends PanelViewController {
float shadeExpandedFraction = mTransitioningToFullShadeProgress > 0
? mLockscreenShadeTransitionController.getQSDragProgress()
: getExpandedFraction();
mSplitShadeHeaderController.setShadeExpandedFraction(shadeExpandedFraction);
mSplitShadeHeaderController.setQsExpandedFraction(qsExpansionFraction);
mSplitShadeHeaderController.setShadeExpanded(mQsVisible);
mLargeScreenShadeHeaderController.setShadeExpandedFraction(shadeExpandedFraction);
mLargeScreenShadeHeaderController.setQsExpandedFraction(qsExpansionFraction);
mLargeScreenShadeHeaderController.setShadeExpanded(mQsVisible);
}
private void onStackYChanged(boolean shouldAnimate) {
@ -3538,7 +3538,7 @@ public class NotificationPanelViewController extends PanelViewController {
public final QS.ScrollListener mScrollListener = new QS.ScrollListener() {
@Override
public void onQsPanelScrollChanged(int scrollY) {
mSplitShadeHeaderController.setQsScrollY(scrollY);
mLargeScreenShadeHeaderController.setQsScrollY(scrollY);
if (scrollY > 0 && !mQsFullyExpanded) {
if (DEBUG) Log.d(TAG, "Scrolling while not expanded. Forcing expand");
// If we are scrolling QS, we should be fully expanded.

View File

@ -123,7 +123,7 @@ class NotificationsQSContainerController @Inject constructor(
notificationsBottomMargin = resources.getDimensionPixelSize(
R.dimen.notification_panel_margin_bottom)
largeScreenShadeHeaderHeight =
resources.getDimensionPixelSize(R.dimen.split_shade_header_height)
resources.getDimensionPixelSize(R.dimen.large_screen_shade_header_height)
panelMarginHorizontal = resources.getDimensionPixelSize(
R.dimen.notification_panel_margin_horizontal)
topMargin = if (largeScreenShadeHeaderActive) {

View File

@ -31,10 +31,10 @@ import com.android.systemui.statusbar.notification.stack.NotificationListContain
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController;
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutListContainerModule;
import com.android.systemui.statusbar.phone.CentralSurfacesCommandQueueCallbacks;
import com.android.systemui.statusbar.phone.LargeScreenShadeHeaderController;
import com.android.systemui.statusbar.phone.NotificationPanelViewController;
import com.android.systemui.statusbar.phone.NotificationShadeWindowView;
import com.android.systemui.statusbar.phone.NotificationShadeWindowViewController;
import com.android.systemui.statusbar.phone.SplitShadeHeaderController;
import com.android.systemui.statusbar.phone.StatusBarHeadsUpChangeListener;
import com.android.systemui.statusbar.phone.StatusBarNotificationActivityStarterModule;
import com.android.systemui.statusbar.phone.StatusBarNotificationPresenterModule;
@ -133,9 +133,9 @@ public interface CentralSurfacesComponent {
CentralSurfacesCommandQueueCallbacks getCentralSurfacesCommandQueueCallbacks();
/**
* Creates a SplitShadeHeaderController.
* Creates a {@link LargeScreenShadeHeaderController}.
*/
SplitShadeHeaderController getSplitShadeHeaderController();
LargeScreenShadeHeaderController getLargeScreenShadeHeaderController();
/**
* Creates a new {@link CollapsedStatusBarFragment} each time it's called. See

View File

@ -73,9 +73,9 @@ import dagger.Provides;
@Module(subcomponents = StatusBarFragmentComponent.class)
public abstract class StatusBarViewModule {
public static final String SPLIT_SHADE_HEADER = "split_shade_header";
public static final String LARGE_SCREEN_SHADE_HEADER = "large_screen_shade_header";
private static final String SPLIT_SHADE_BATTERY_VIEW = "split_shade_battery_view";
public static final String SPLIT_SHADE_BATTERY_CONTROLLER = "split_shade_battery_controller";
public static final String LARGE_SCREEN_BATTERY_CONTROLLER = "split_shade_battery_controller";
public static final String STATUS_BAR_FRAGMENT = "status_bar_fragment";
/** */
@ -159,15 +159,15 @@ public abstract class StatusBarViewModule {
/** */
@Provides
@Named(SPLIT_SHADE_HEADER)
@Named(LARGE_SCREEN_SHADE_HEADER)
@CentralSurfacesComponent.CentralSurfacesScope
public static View getSplitShadeStatusBarView(
public static View getLargeScreenShadeHeaderBarView(
NotificationShadeWindowView notificationShadeWindowView,
FeatureFlags featureFlags) {
ViewStub stub = notificationShadeWindowView.findViewById(R.id.qs_header_stub);
int layoutId = featureFlags.isEnabled(Flags.COMBINED_QS_HEADERS)
? R.layout.combined_qs_header
: R.layout.split_shade_header;
: R.layout.large_screen_shade_header;
stub.setLayoutResource(layoutId);
View v = stub.inflate();
return v;
@ -177,14 +177,15 @@ public abstract class StatusBarViewModule {
@Provides
@CentralSurfacesComponent.CentralSurfacesScope
public static OngoingPrivacyChip getSplitShadeOngoingPrivacyChip(
@Named(SPLIT_SHADE_HEADER) View header) {
@Named(LARGE_SCREEN_SHADE_HEADER) View header) {
return header.findViewById(R.id.privacy_chip);
}
/** */
@Provides
@CentralSurfacesComponent.CentralSurfacesScope
static StatusIconContainer providesStatusIconContainer(@Named(SPLIT_SHADE_HEADER) View header) {
static StatusIconContainer providesStatusIconContainer(
@Named(LARGE_SCREEN_SHADE_HEADER) View header) {
return header.findViewById(R.id.statusIcons);
}
@ -192,13 +193,13 @@ public abstract class StatusBarViewModule {
@Provides
@CentralSurfacesComponent.CentralSurfacesScope
@Named(SPLIT_SHADE_BATTERY_VIEW)
static BatteryMeterView getBatteryMeterView(@Named(SPLIT_SHADE_HEADER) View view) {
static BatteryMeterView getBatteryMeterView(@Named(LARGE_SCREEN_SHADE_HEADER) View view) {
return view.findViewById(R.id.batteryRemainingIcon);
}
@Provides
@CentralSurfacesComponent.CentralSurfacesScope
@Named(SPLIT_SHADE_BATTERY_CONTROLLER)
@Named(LARGE_SCREEN_BATTERY_CONTROLLER)
static BatteryMeterViewController getBatteryMeterViewController(
@Named(SPLIT_SHADE_BATTERY_VIEW) BatteryMeterView batteryMeterView,
ConfigurationController configurationController,

View File

@ -16,7 +16,7 @@ object LargeScreenUtils {
/**
* Returns true if we should use large screen shade header:
* [com.android.systemui.statusbar.phone.SplitShadeHeaderController]
* [com.android.systemui.statusbar.phone.LargeScreenShadeHeaderController]
* That should be true when we have enough horizontal space to show all info in one row.
*/
@JvmStatic

View File

@ -279,7 +279,7 @@ public class KeyguardClockPositionAlgorithmTest extends SysuiTestCase {
public void notifPaddingMakesUpToFullMarginInSplitShade() {
when(mResources.getDimensionPixelSize(R.dimen.keyguard_split_shade_top_margin))
.thenReturn(100);
when(mResources.getDimensionPixelSize(R.dimen.split_shade_header_height))
when(mResources.getDimensionPixelSize(R.dimen.large_screen_shade_header_height))
.thenReturn(70);
mClockPositionAlgorithm.loadDimens(mResources);
givenLockScreen();

View File

@ -27,7 +27,7 @@ import org.mockito.Mockito.`when` as whenever
@SmallTest
@RunWith(AndroidTestingRunner::class)
class SplitShadeHeaderControllerTest : SysuiTestCase() {
class LargeScreenShadeHeaderControllerTest : SysuiTestCase() {
@Mock private lateinit var view: View
@Mock private lateinit var statusIcons: StatusIconContainer
@ -43,7 +43,7 @@ class SplitShadeHeaderControllerTest : SysuiTestCase() {
@JvmField @Rule val mockitoRule = MockitoJUnit.rule()
var viewVisibility = View.GONE
private lateinit var splitShadeHeaderController: SplitShadeHeaderController
private lateinit var mLargeScreenShadeHeaderController: LargeScreenShadeHeaderController
private lateinit var carrierIconSlots: List<String>
@Before
@ -62,7 +62,7 @@ class SplitShadeHeaderControllerTest : SysuiTestCase() {
}
whenever(view.visibility).thenAnswer { _ -> viewVisibility }
whenever(featureFlags.isEnabled(Flags.COMBINED_QS_HEADERS)).thenReturn(false)
splitShadeHeaderController = SplitShadeHeaderController(
mLargeScreenShadeHeaderController = LargeScreenShadeHeaderController(
view,
statusBarIconController,
privacyIconsController,
@ -80,7 +80,7 @@ class SplitShadeHeaderControllerTest : SysuiTestCase() {
makeShadeVisible()
assertThat(viewVisibility).isEqualTo(View.VISIBLE)
splitShadeHeaderController.active = false
mLargeScreenShadeHeaderController.active = false
assertThat(viewVisibility).isEqualTo(View.GONE)
}
@ -94,7 +94,7 @@ class SplitShadeHeaderControllerTest : SysuiTestCase() {
@Test
fun shadeExpandedFraction_updatesAlpha() {
makeShadeVisible()
splitShadeHeaderController.shadeExpandedFraction = 0.5f
mLargeScreenShadeHeaderController.shadeExpandedFraction = 0.5f
verify(view).setAlpha(ShadeInterpolation.getContentAlpha(0.5f))
}
@ -117,7 +117,7 @@ class SplitShadeHeaderControllerTest : SysuiTestCase() {
}
private fun makeShadeVisible() {
splitShadeHeaderController.active = true
splitShadeHeaderController.shadeExpanded = true
mLargeScreenShadeHeaderController.active = true
mLargeScreenShadeHeaderController.shadeExpanded = true
}
}

View File

@ -288,7 +288,7 @@ public class NotificationPanelViewControllerTest extends SysuiTestCase {
@Mock
private SecureSettings mSecureSettings;
@Mock
private SplitShadeHeaderController mSplitShadeHeaderController;
private LargeScreenShadeHeaderController mLargeScreenShadeHeaderController;
@Mock
private ContentResolver mContentResolver;
@Mock
@ -498,7 +498,7 @@ public class NotificationPanelViewControllerTest extends SysuiTestCase {
mRecordingController,
mExecutor,
mSecureSettings,
mSplitShadeHeaderController,
mLargeScreenShadeHeaderController,
mScreenOffAnimationController,
mLockscreenGestureLogger,
new PanelExpansionStateManager(),
@ -923,11 +923,11 @@ public class NotificationPanelViewControllerTest extends SysuiTestCase {
mStatusBarStateController.setState(SHADE);
when(mResources.getBoolean(R.bool.config_use_large_screen_shade_header)).thenReturn(true);
mNotificationPanelViewController.updateResources();
verify(mSplitShadeHeaderController).setActive(true);
verify(mLargeScreenShadeHeaderController).setActive(true);
when(mResources.getBoolean(R.bool.config_use_large_screen_shade_header)).thenReturn(false);
mNotificationPanelViewController.updateResources();
verify(mSplitShadeHeaderController).setActive(false);
verify(mLargeScreenShadeHeaderController).setActive(false);
}
private void triggerPositionClockAndNotifications() {

View File

@ -471,7 +471,7 @@ class NotificationQSContainerControllerTest : SysuiTestCase() {
fun testLargeScreenLayout_qsAndNotifsTopMarginIsOfHeaderHeight() {
setLargeScreen()
val largeScreenHeaderHeight = 100
overrideResource(R.dimen.split_shade_header_height, largeScreenHeaderHeight)
overrideResource(R.dimen.large_screen_shade_header_height, largeScreenHeaderHeight)
controller.updateResources()