From db4ae134aab2376fa110682e96798b32efd0d563 Mon Sep 17 00:00:00 2001 From: zbue <108109611+zbue@users.noreply.github.com> Date: Fri, 13 Jan 2023 06:46:24 +0800 Subject: [PATCH] Tweak `TriStateItem` view to match in earlier app version (#8898) * Tweak `TriStateItem` view to match in earlier app version * Apply to disabled state too --- .../kanade/presentation/components/SettingsItems.kt | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/kanade/presentation/components/SettingsItems.kt b/app/src/main/java/eu/kanade/presentation/components/SettingsItems.kt index e881979651..ba454cded3 100644 --- a/app/src/main/java/eu/kanade/presentation/components/SettingsItems.kt +++ b/app/src/main/java/eu/kanade/presentation/components/SettingsItems.kt @@ -7,6 +7,7 @@ import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size +import androidx.compose.material.ContentAlpha import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.ArrowDownward import androidx.compose.material.icons.filled.ArrowUpward @@ -46,6 +47,8 @@ fun TriStateItem( verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(24.dp), ) { + val stateAlpha = if (onClick != null) 1f else ContentAlpha.disabled + Icon( imageVector = when (state) { TriStateFilter.DISABLED -> Icons.Rounded.CheckBoxOutlineBlank @@ -54,13 +57,17 @@ fun TriStateItem( }, contentDescription = null, tint = if (state == TriStateFilter.DISABLED) { - MaterialTheme.colorScheme.onSurfaceVariant + MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = stateAlpha) } else { - MaterialTheme.colorScheme.primary + when (onClick) { + null -> MaterialTheme.colorScheme.onSurface.copy(alpha = ContentAlpha.disabled) + else -> MaterialTheme.colorScheme.primary + } }, ) Text( text = label, + color = MaterialTheme.colorScheme.onSurface.copy(alpha = stateAlpha), style = MaterialTheme.typography.bodyMedium, ) }