Merge "[flexiglass] Implementation of the Shade scene UI." into udc-qpr-dev

This commit is contained in:
Treehugger Robot
2023-07-14 23:24:32 +00:00
committed by Android (Google) Code Review
3 changed files with 63 additions and 35 deletions

View File

@@ -17,15 +17,19 @@
package com.android.systemui.notifications.ui.composable package com.android.systemui.notifications.ui.composable
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.defaultMinSize import androidx.compose.foundation.layout.defaultMinSize
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@Composable @Composable
@@ -34,10 +38,26 @@ fun Notifications(
) { ) {
// TODO(b/272779828): implement. // TODO(b/272779828): implement.
Column( Column(
modifier = modifier.fillMaxWidth().defaultMinSize(minHeight = 300.dp).padding(4.dp), modifier =
modifier
.fillMaxWidth()
.defaultMinSize(minHeight = 300.dp)
.clip(RoundedCornerShape(32.dp))
.background(MaterialTheme.colorScheme.surface)
.padding(16.dp),
) { ) {
Text("Notifications", modifier = Modifier.align(Alignment.CenterHorizontally)) Text(
text = "Notifications",
modifier = Modifier.align(Alignment.CenterHorizontally),
style = MaterialTheme.typography.titleLarge,
color = MaterialTheme.colorScheme.onSurface,
)
Spacer(modifier = Modifier.weight(1f)) Spacer(modifier = Modifier.weight(1f))
Text("Shelf", modifier = Modifier.align(Alignment.CenterHorizontally)) Text(
text = "Shelf",
modifier = Modifier.align(Alignment.CenterHorizontally),
style = MaterialTheme.typography.titleSmall,
color = MaterialTheme.colorScheme.onSurface,
)
} }
} }

View File

@@ -17,15 +17,19 @@
package com.android.systemui.qs.footer.ui.compose package com.android.systemui.qs.footer.ui.compose
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.defaultMinSize import androidx.compose.foundation.layout.defaultMinSize
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@Composable @Composable
@@ -34,10 +38,26 @@ fun QuickSettings(
) { ) {
// TODO(b/272780058): implement. // TODO(b/272780058): implement.
Column( Column(
modifier = modifier.fillMaxWidth().defaultMinSize(minHeight = 300.dp).padding(4.dp), modifier =
modifier
.fillMaxWidth()
.defaultMinSize(minHeight = 300.dp)
.clip(RoundedCornerShape(32.dp))
.background(MaterialTheme.colorScheme.primary)
.padding(16.dp),
) { ) {
Text("Quick settings", modifier = Modifier.align(Alignment.CenterHorizontally)) Text(
text = "Quick settings",
modifier = Modifier.align(Alignment.CenterHorizontally),
style = MaterialTheme.typography.titleLarge,
color = MaterialTheme.colorScheme.onPrimary,
)
Spacer(modifier = Modifier.weight(1f)) Spacer(modifier = Modifier.weight(1f))
Text("QS footer actions", modifier = Modifier.align(Alignment.CenterHorizontally)) Text(
text = "QS footer actions",
modifier = Modifier.align(Alignment.CenterHorizontally),
style = MaterialTheme.typography.titleSmall,
color = MaterialTheme.colorScheme.onPrimary,
)
} }
} }

View File

@@ -16,18 +16,19 @@
package com.android.systemui.shade.ui.composable package com.android.systemui.shade.ui.composable
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.Button import androidx.compose.foundation.layout.height
import androidx.compose.material3.MaterialTheme import androidx.compose.foundation.layout.padding
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.notifications.ui.composable.Notifications
import com.android.systemui.qs.footer.ui.compose.QuickSettings
import com.android.systemui.scene.shared.model.Direction import com.android.systemui.scene.shared.model.Direction
import com.android.systemui.scene.shared.model.SceneKey import com.android.systemui.scene.shared.model.SceneKey
import com.android.systemui.scene.shared.model.SceneModel import com.android.systemui.scene.shared.model.SceneModel
@@ -62,12 +63,7 @@ class ShadeScene(
override fun Content( override fun Content(
containerName: String, containerName: String,
modifier: Modifier, modifier: Modifier,
) { ) = ShadeScene(viewModel, modifier)
ShadeScene(
viewModel = viewModel,
modifier = modifier,
)
}
private fun destinationScenes( private fun destinationScenes(
up: SceneKey, up: SceneKey,
@@ -84,23 +80,15 @@ private fun ShadeScene(
viewModel: ShadeSceneViewModel, viewModel: ShadeSceneViewModel,
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
) { ) {
// TODO(b/280887022): implement the real UI. Column(
horizontalAlignment = Alignment.CenterHorizontally,
Box(modifier = modifier) { verticalArrangement = Arrangement.spacedBy(16.dp),
Column( modifier =
horizontalAlignment = Alignment.CenterHorizontally, Modifier.fillMaxSize()
modifier = Modifier.align(Alignment.Center) .clickable(onClick = { viewModel.onContentClicked() })
) { .padding(horizontal = 16.dp, vertical = 48.dp)
Text("Shade", style = MaterialTheme.typography.headlineMedium) ) {
Row( QuickSettings(modifier = modifier.height(160.dp))
horizontalArrangement = Arrangement.spacedBy(8.dp), Notifications(modifier = modifier.weight(1f))
) {
Button(
onClick = { viewModel.onContentClicked() },
) {
Text("Open some content")
}
}
}
} }
} }