Skip to content

Commit 788847f

Browse files
committed
Add disable button colors
1 parent 630ef0b commit 788847f

File tree

3 files changed

+24
-12
lines changed

3 files changed

+24
-12
lines changed

android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/button/MullvadButton.kt

+7-12
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,17 @@ import androidx.compose.runtime.Composable
1414
import androidx.compose.ui.Modifier
1515
import androidx.compose.ui.draw.alpha
1616
import androidx.compose.ui.graphics.Color
17-
import androidx.compose.ui.graphics.compositeOver
1817
import androidx.compose.ui.text.style.TextAlign
1918
import androidx.compose.ui.text.style.TextOverflow
2019
import androidx.compose.ui.tooling.preview.Preview
2120
import androidx.compose.ui.unit.dp
2221
import net.mullvad.mullvadvpn.lib.theme.AppTheme
2322
import net.mullvad.mullvadvpn.lib.theme.Dimens
2423
import net.mullvad.mullvadvpn.lib.theme.color.Alpha20
25-
import net.mullvad.mullvadvpn.lib.theme.color.AlphaInactive
2624
import net.mullvad.mullvadvpn.lib.theme.color.AlphaInvisible
25+
import net.mullvad.mullvadvpn.lib.theme.color.errorDisabled
26+
import net.mullvad.mullvadvpn.lib.theme.color.primaryDisabled
27+
import net.mullvad.mullvadvpn.lib.theme.color.tertiaryDisabled
2728

2829
@Preview
2930
@Composable
@@ -71,7 +72,7 @@ fun NegativeButton(
7172
containerColor = MaterialTheme.colorScheme.error,
7273
contentColor = MaterialTheme.colorScheme.onError,
7374
disabledContentColor = MaterialTheme.colorScheme.onError.copy(alpha = Alpha20),
74-
disabledContainerColor = MaterialTheme.colorScheme.error.copy(alpha = AlphaInactive)
75+
disabledContainerColor = MaterialTheme.colorScheme.errorDisabled
7576
),
7677
isEnabled: Boolean = true,
7778
icon: @Composable (() -> Unit)? = null
@@ -97,7 +98,7 @@ fun VariantButton(
9798
containerColor = background,
9899
contentColor = MaterialTheme.colorScheme.onTertiary,
99100
disabledContentColor = MaterialTheme.colorScheme.onTertiary.copy(alpha = Alpha20),
100-
disabledContainerColor = background.copy(alpha = AlphaInactive),
101+
disabledContainerColor = MaterialTheme.colorScheme.tertiaryDisabled,
101102
),
102103
isEnabled: Boolean = true,
103104
icon: @Composable (() -> Unit)? = null
@@ -121,14 +122,8 @@ fun PrimaryButton(
121122
ButtonDefaults.buttonColors(
122123
containerColor = MaterialTheme.colorScheme.primary,
123124
contentColor = MaterialTheme.colorScheme.onPrimary,
124-
disabledContentColor =
125-
MaterialTheme.colorScheme.onPrimary
126-
.copy(alpha = Alpha20)
127-
.compositeOver(MaterialTheme.colorScheme.background),
128-
disabledContainerColor =
129-
MaterialTheme.colorScheme.primary
130-
.copy(alpha = AlphaInactive)
131-
.compositeOver(MaterialTheme.colorScheme.background),
125+
disabledContentColor = MaterialTheme.colorScheme.onPrimary.copy(alpha = Alpha20),
126+
disabledContainerColor = MaterialTheme.colorScheme.primaryDisabled,
132127
),
133128
isEnabled: Boolean = true,
134129
leadingIcon: @Composable (() -> Unit)? = null,

android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/Color.kt

+12
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,21 @@ val ColorScheme.selected: Color
2424
val ColorScheme.onSelected: Color
2525
@Composable get() = MaterialTheme.colorScheme.onTertiary
2626

27+
// Static defined waring color
2728
val ColorScheme.warning: Color
2829
@Composable get() = PaletteTokens.Yellow500
2930

31+
// Disabled colors for buttons
32+
val ColorScheme.tertiaryDisabled: Color
33+
@Composable get() = PaletteTokens.DisabledContainerTiertary
34+
35+
val ColorScheme.primaryDisabled: Color
36+
@Composable get() = PaletteTokens.DisabledContainerPrimary
37+
38+
val ColorScheme.errorDisabled: Color
39+
@Composable get() = PaletteTokens.DisabledContainerDestructive
40+
41+
3042
val menuItemColors: MenuItemColors
3143
@Composable
3244
get() =

android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/PaletteTokens.kt

+5
Original file line numberDiff line numberDiff line change
@@ -80,4 +80,9 @@ internal object PaletteTokens {
8080

8181
// Black
8282
val Black = Color(0xFF000000)
83+
84+
//Disabled container colors
85+
val DisabledContainerPrimary = Color(0xFF1F3A57)
86+
val DisabledContainerTiertary = Color(0xFF2A6148)
87+
val DisabledContainerDestructive = Color(0xFF6A3540)
8388
}

0 commit comments

Comments
 (0)