Merge pull request #7007 from element-hq/renovate/androidx.compose.material3-material3-1.x

Update dependency androidx.compose.material3:material3 to v1.5.0-alpha21
This commit is contained in:
Benoit Marty
2026-07-06 18:31:45 +02:00
committed by GitHub
74 changed files with 228 additions and 160 deletions
@@ -17,7 +17,8 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.rememberModalBottomSheetState
import androidx.compose.material3.SheetValue
import androidx.compose.material3.rememberBottomSheetState
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.datasource.LoremIpsum
@@ -39,7 +40,10 @@ fun SimpleModalBottomSheet(
ModalBottomSheet(
onDismissRequest = onDismiss,
modifier = modifier,
sheetState = rememberModalBottomSheetState(skipPartiallyExpanded = true),
sheetState = rememberBottomSheetState(
initialValue = SheetValue.Hidden,
enabledValues = setOf(SheetValue.Hidden, SheetValue.Expanded),
),
scrollable = false,
) {
Column(
@@ -61,7 +65,7 @@ fun SimpleModalBottomSheet(
@PreviewsDayNight
@Composable
internal fun SimpleModalBottomSheetPreview() = ElementPreview {
internal fun SimpleModalBottomSheetPreview() = ElementPreview(fillMaxSize = true) {
SimpleModalBottomSheet(title = "A title", onDismiss = {}) {
Text(
text = LoremIpsum(20).values.first(),
@@ -10,8 +10,13 @@ package io.element.android.libraries.designsystem.preview
import androidx.annotation.DrawableRes
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.movableContentOf
import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
import androidx.core.content.res.ResourcesCompat
import coil3.annotation.ExperimentalCoilApi
@@ -29,6 +34,7 @@ import io.element.android.libraries.designsystem.utils.CommonDrawables
fun ElementPreview(
theme: Theme = if (isSystemInDarkTheme()) Theme.Dark else Theme.Light,
showBackground: Boolean = true,
fillMaxSize: Boolean = false,
@DrawableRes
drawableFallbackForImages: Int = CommonDrawables.sample_background,
content: @Composable () -> Unit
@@ -40,11 +46,21 @@ fun ElementPreview(
}
) {
ElementTheme(theme = theme) {
val movableContent = remember { movableContentOf { content() } }
if (showBackground) {
// If we have a proper contentColor applied we need a Surface instead of a Box
Surface(content = content)
Surface(
modifier = if (fillMaxSize) Modifier.fillMaxSize() else Modifier,
content = movableContent,
)
} else {
content()
if (fillMaxSize) {
Box(modifier = Modifier.fillMaxSize()) {
movableContent()
}
} else {
movableContent()
}
}
}
}
@@ -11,12 +11,10 @@ package io.element.android.libraries.designsystem.preview
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.SheetState
import androidx.compose.material3.SheetValue
import androidx.compose.runtime.Composable
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun sheetStateForPreview() = SheetState(
skipPartiallyExpanded = true,
enabledValues = setOf(SheetValue.Hidden, SheetValue.Expanded),
positionalThreshold = { 0.5f },
velocityThreshold = { 400f },
initialValue = SheetValue.Expanded,
@@ -21,8 +21,9 @@ import androidx.compose.material3.BottomSheetDefaults
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.SheetState
import androidx.compose.material3.SheetValue
import androidx.compose.material3.contentColorFor
import androidx.compose.material3.rememberModalBottomSheetState
import androidx.compose.material3.rememberBottomSheetState
import androidx.compose.runtime.Composable
import androidx.compose.runtime.movableContentOf
import androidx.compose.runtime.remember
@@ -57,7 +58,9 @@ fun ModalBottomSheet(
onDismissRequest: () -> Unit,
scrollable: Boolean,
modifier: Modifier = Modifier,
sheetState: SheetState = rememberModalBottomSheetState(),
sheetState: SheetState = rememberBottomSheetState(
initialValue = SheetValue.Hidden,
),
shape: Shape = BottomSheetDefaults.ExpandedShape,
containerColor: Color = MaterialTheme.colorScheme.surface,
contentColor: Color = contentColorFor(containerColor),