Fix preference disabled state alpha

This commit is contained in:
MM20 2022-01-01 21:21:38 +01:00
parent 89db713e24
commit 1a3fde5bf5
No known key found for this signature in database
GPG Key ID: 0B61A8F2DEAFA389

View File

@ -2,13 +2,13 @@ package de.mm20.launcher2.ui.component.preferences
import androidx.compose.foundation.clickable import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.* import androidx.compose.foundation.layout.*
import androidx.compose.material.ContentAlpha import androidx.compose.material3.Icon
import androidx.compose.material.LocalContentAlpha import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.* import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
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.alpha
import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@ -21,16 +21,13 @@ fun Preference(
controls: @Composable (() -> Unit)? = null, controls: @Composable (() -> Unit)? = null,
enabled: Boolean = true enabled: Boolean = true
) { ) {
CompositionLocalProvider(
LocalContentAlpha provides if (enabled) ContentAlpha.high else ContentAlpha.disabled
) {
Row( Row(
verticalAlignment = Alignment.CenterVertically, verticalAlignment = Alignment.CenterVertically,
modifier = Modifier modifier = Modifier
.fillMaxWidth() .fillMaxWidth()
.clickable(enabled = enabled, onClick = onClick) .clickable(enabled = enabled, onClick = onClick)
.padding(horizontal = 16.dp, vertical = 16.dp), .padding(horizontal = 16.dp, vertical = 16.dp)
.alpha(if (enabled) 1f else 0.38f),
) { ) {
Box( Box(
modifier = Modifier.width(56.dp), modifier = Modifier.width(56.dp),
@ -66,4 +63,3 @@ fun Preference(
} }
} }
} }
}