summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author burakov <burakov@google.com> 2024-06-04 09:26:23 +0000
committer burakov <burakov@google.com> 2024-06-04 09:26:23 +0000
commit51ea31dcd1214e5bafeec19ca84e5077aceecd7c (patch)
tree10b2d5a3ec76937948c6432ba01822116eb7ab44
parent57f25a882ef47a9ecddd54ea8a94db0a95f1d24c (diff)
[bc25] Support both horizontal and vertical alignment in dual shade.
This is necessary to allow dual shade to be invoked from the bottom on other system UI variants, such as ARC. Test: Manually tested by opening and closing the quick settings shade on a foldable device both in a folded and unfolded configuration. Test: Unit tests build and pass. Bug: 343744476 Flag: com.android.systemui.dual_shade Change-Id: Idf48a30f317c2d318d3ba80d447abbb4f6377f99
-rw-r--r--packages/SystemUI/compose/features/src/com/android/systemui/notifications/ui/composable/NotificationsShadeScene.kt4
-rw-r--r--packages/SystemUI/compose/features/src/com/android/systemui/qs/ui/composable/QuickSettingsShadeScene.kt2
-rw-r--r--packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt9
3 files changed, 7 insertions, 8 deletions
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/notifications/ui/composable/NotificationsShadeScene.kt b/packages/SystemUI/compose/features/src/com/android/systemui/notifications/ui/composable/NotificationsShadeScene.kt
index edb17273dba1..f62a28c94763 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/notifications/ui/composable/NotificationsShadeScene.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/notifications/ui/composable/NotificationsShadeScene.kt
@@ -16,11 +16,11 @@
package com.android.systemui.notifications.ui.composable
-import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.runtime.Composable
+import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import com.android.compose.animation.scene.SceneScope
@@ -75,7 +75,7 @@ constructor(
OverlayShade(
modifier = modifier,
viewModel = overlayShadeViewModel,
- horizontalArrangement = Arrangement.End,
+ panelAlignment = Alignment.TopEnd,
lockscreenContent = lockscreenContent,
) {
Column {
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/qs/ui/composable/QuickSettingsShadeScene.kt b/packages/SystemUI/compose/features/src/com/android/systemui/qs/ui/composable/QuickSettingsShadeScene.kt
index 4bf90ec69f46..a0d6be9c68dc 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/qs/ui/composable/QuickSettingsShadeScene.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/qs/ui/composable/QuickSettingsShadeScene.kt
@@ -82,7 +82,7 @@ constructor(
) {
OverlayShade(
viewModel = viewModel.overlayShadeViewModel,
- horizontalArrangement = Arrangement.End,
+ panelAlignment = Alignment.TopEnd,
lockscreenContent = lockscreenContent,
modifier = modifier,
) {
diff --git a/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt b/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt
index 6924d432453c..c189d73e2db5 100644
--- a/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt
+++ b/packages/SystemUI/compose/features/src/com/android/systemui/shade/ui/composable/OverlayShade.kt
@@ -20,11 +20,9 @@ package com.android.systemui.shade.ui.composable
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
-import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.ExperimentalLayoutApi
import androidx.compose.foundation.layout.PaddingValues
-import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.asPaddingValues
@@ -43,6 +41,7 @@ import androidx.compose.material3.windowsizeclass.WindowWidthSizeClass
import androidx.compose.runtime.Composable
import androidx.compose.runtime.ReadOnlyComposable
import androidx.compose.runtime.getValue
+import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
@@ -64,7 +63,7 @@ import java.util.Optional
@Composable
fun SceneScope.OverlayShade(
viewModel: OverlayShadeViewModel,
- horizontalArrangement: Arrangement.Horizontal,
+ panelAlignment: Alignment,
lockscreenContent: Lazy<Optional<LockscreenContent>>,
modifier: Modifier = Modifier,
content: @Composable () -> Unit,
@@ -81,9 +80,9 @@ fun SceneScope.OverlayShade(
Scrim(onClicked = viewModel::onScrimClicked)
- Row(
+ Box(
modifier = Modifier.fillMaxSize().panelPadding(),
- horizontalArrangement = horizontalArrangement,
+ contentAlignment = panelAlignment,
) {
Panel(
modifier = Modifier.element(OverlayShade.Elements.Panel).panelSize(),