change the click management on status summary
This commit is contained in:
parent
a73a352004
commit
38ae516704
2 changed files with 11 additions and 18 deletions
|
|
@ -15,7 +15,6 @@ import androidx.compose.foundation.layout.padding
|
|||
import androidx.compose.foundation.layout.size
|
||||
import androidx.compose.foundation.shape.CutCornerShape
|
||||
import androidx.compose.foundation.shape.RoundedCornerShape
|
||||
import androidx.compose.material.minimumInteractiveComponentSize
|
||||
import androidx.compose.material3.Divider
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
|
|
@ -182,9 +181,15 @@ fun SummaryIcon(
|
|||
@DrawableRes icon: Int?,
|
||||
onClick: () -> Unit,
|
||||
) {
|
||||
val localModifier = remember(icon) {
|
||||
if (icon != null) {
|
||||
Modifier.clickable(onClick = onClick)
|
||||
} else {
|
||||
Modifier
|
||||
}
|
||||
}
|
||||
Box(
|
||||
modifier = Modifier
|
||||
.clickable(enabled = icon != null, onClick = onClick)
|
||||
modifier = localModifier
|
||||
.size(size = MaterialTheme.lexicon.dimens.summary.cell)
|
||||
.then(other = modifier),
|
||||
contentAlignment = Alignment.Center,
|
||||
|
|
|
|||
|
|
@ -95,15 +95,6 @@ fun StatisticSummary(
|
|||
onStatus: (Boolean) -> Unit,
|
||||
onAlteration: (StatusSummaryUio.Status) -> Unit,
|
||||
) {
|
||||
val density = LocalDensity.current
|
||||
|
||||
val headerSize = remember {
|
||||
mutableStateOf(IntSize.Zero)
|
||||
}
|
||||
val headerHeight = remember {
|
||||
derivedStateOf { with(density) { headerSize.value.height.toDp() - 24.dp } }
|
||||
}
|
||||
|
||||
Box(
|
||||
modifier = Modifier
|
||||
.padding(horizontal = 16.dp)
|
||||
|
|
@ -113,10 +104,8 @@ fun StatisticSummary(
|
|||
modifier = Modifier.verticalScroll(state = scrollState),
|
||||
verticalArrangement = Arrangement.spacedBy(space = 8.dp),
|
||||
) {
|
||||
Spacer(
|
||||
modifier = Modifier.height(height = headerHeight.value),
|
||||
)
|
||||
AnimatedVisibility(
|
||||
modifier = Modifier.padding(top = 96.dp + 8.dp),
|
||||
visible = summary.statsVisibility.value,
|
||||
enter = enterTransition(),
|
||||
) {
|
||||
|
|
@ -199,7 +188,6 @@ fun StatisticSummary(
|
|||
AnimatedVisibility(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.onSizeChanged { headerSize.value = it }
|
||||
.background(brush = rememberHeaderBackgroundGradient())
|
||||
.padding(bottom = 16.dp, end = 3.dp),
|
||||
visible = summary.headerVisibility.value,
|
||||
|
|
@ -237,8 +225,8 @@ private fun rememberHeaderBackgroundGradient(): Brush {
|
|||
}
|
||||
|
||||
@Composable
|
||||
@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO, heightDp = 2000)
|
||||
@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES, heightDp = 2000)
|
||||
@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO, heightDp = 1800)
|
||||
@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES, heightDp = 1800)
|
||||
fun StatisticSummaryPreview() {
|
||||
LexiconTheme {
|
||||
Surface {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue