Skip to content

Commit 65d9deb

Browse files
authored
library:Sync colors to OS2 design & Added "Disabled" status color to "Switch" (#12)
1 parent 5b6ab8c commit 65d9deb

File tree

6 files changed

+53
-41
lines changed

6 files changed

+53
-41
lines changed

miuix/src/commonMain/kotlin/top/yukonga/miuix/kmp/basic/Button.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ private fun getButtonColor(enabled: Boolean, submit: Boolean): Color {
8282
return if (enabled) {
8383
if (submit) MiuixTheme.colorScheme.primary else MiuixTheme.colorScheme.secondary
8484
} else {
85-
if (submit) MiuixTheme.colorScheme.submitDisabledBg else MiuixTheme.colorScheme.disabledBg
85+
if (submit) MiuixTheme.colorScheme.disabledPrimary else MiuixTheme.colorScheme.disabledSecondary
8686
}
8787
}
8888

@@ -91,6 +91,6 @@ private fun getTextColor(enabled: Boolean, submit: Boolean): Color {
9191
return if (enabled) {
9292
if (submit) Color.White else MiuixTheme.colorScheme.onBackground
9393
} else {
94-
if (submit) MiuixTheme.colorScheme.submitButtonDisabledText else MiuixTheme.colorScheme.buttonDisableText
94+
if (submit) MiuixTheme.colorScheme.onDisabledPrimary else MiuixTheme.colorScheme.onDisabledSecondary
9595
}
9696
}

miuix/src/commonMain/kotlin/top/yukonga/miuix/kmp/basic/Checkbox.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ fun Checkbox(
5757
val isChecked by rememberUpdatedState(checked)
5858
var isPressed by remember { mutableStateOf(false) }
5959
val backgroundColor by animateColorAsState(if (isChecked) MiuixTheme.colorScheme.primary else MiuixTheme.colorScheme.secondary)
60-
val disabledBackgroundColor by rememberUpdatedState(if (isChecked) MiuixTheme.colorScheme.submitDisabledBg else MiuixTheme.colorScheme.disabledBg)
60+
val disabledBackgroundColor by rememberUpdatedState(if (isChecked) MiuixTheme.colorScheme.disabledPrimary else MiuixTheme.colorScheme.disabledSecondary)
6161
val checkboxSize by animateDpAsState(if (isPressed) 20.dp else 22.dp)
6262
val checkmarkColor by animateColorAsState(if (checked) Color.White else backgroundColor)
6363
val rotationAngle by animateFloatAsState(if (checked) 0f else 25f, animationSpec = tween(durationMillis = 200))

miuix/src/commonMain/kotlin/top/yukonga/miuix/kmp/basic/SearchBar.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ fun InputField(
163163
Box(
164164
modifier = Modifier
165165
.background(
166-
color = MiuixTheme.colorScheme.textFieldBg,
166+
color = MiuixTheme.colorScheme.searchBarBg,
167167
shape = SquircleShape(50.dp)
168168
)
169169
) {
@@ -182,7 +182,7 @@ fun InputField(
182182
) {
183183
Text(
184184
text = if (!(query.isNotEmpty() || expanded)) label else "",
185-
color = MiuixTheme.colorScheme.textFieldSub
185+
color = MiuixTheme.colorScheme.searchBarSub
186186
)
187187

188188
innerTextField()

miuix/src/commonMain/kotlin/top/yukonga/miuix/kmp/basic/Slider.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,8 @@ fun Slider(
6767
(round(newValue * factor) / factor).coerceIn(minValue, maxValue)
6868
}
6969
}
70-
val color = rememberUpdatedState(if (enabled) MiuixTheme.colorScheme.primary else MiuixTheme.colorScheme.submitDisabledBg)
71-
val backgroundColor = rememberUpdatedState(if (enabled) MiuixTheme.colorScheme.secondary else MiuixTheme.colorScheme.disabledBg)
70+
val color = rememberUpdatedState(if (enabled) MiuixTheme.colorScheme.primary else MiuixTheme.colorScheme.disabledPrimary)
71+
val backgroundColor = rememberUpdatedState(if (enabled) MiuixTheme.colorScheme.secondary else MiuixTheme.colorScheme.disabledSecondary)
7272

7373
Box(
7474
modifier = if (enabled) {

miuix/src/commonMain/kotlin/top/yukonga/miuix/kmp/basic/Switch.kt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,11 @@ fun Switch(
8383
animationSpec = tween(durationMillis = 200)
8484
)
8585
val disabledBackgroundColor by rememberUpdatedState(
86-
if (isChecked) MiuixTheme.colorScheme.submitDisabledBg else MiuixTheme.colorScheme.disabledBg
86+
if (isChecked) MiuixTheme.colorScheme.disabledPrimary else MiuixTheme.colorScheme.disabledSecondary
87+
)
88+
val thumbColor = Color.White
89+
val disabledThumbColor by rememberUpdatedState(
90+
if (isChecked) MiuixTheme.colorScheme.onDisabledPrimary else MiuixTheme.colorScheme.onDisabledSecondary
8791
)
8892
val toggleableModifier = remember(onCheckedChange, isChecked, enabled) {
8993
if (onCheckedChange != null) {
@@ -172,7 +176,7 @@ fun Switch(
172176
.padding(start = thumbOffset)
173177
.align(Alignment.CenterStart)
174178
.size(thumbSize)
175-
.background(Color.White, shape = SquircleShape(100.dp))
179+
.background(if (enabled) thumbColor else disabledThumbColor, shape = SquircleShape(100.dp))
176180
)
177181
}
178182
}

miuix/src/commonMain/kotlin/top/yukonga/miuix/kmp/theme/MiuixColor.kt

Lines changed: 40 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ import androidx.compose.ui.graphics.Color
2020
* @param dropdownSelect The color of the selected item in the dropdown.
2121
* @param textFieldBg The background color of the text field.
2222
* @param textFieldSub The color of the sub text field.
23-
* @param disabledBg The background color of the disabled button.
24-
* @param submitDisabledBg The background color of the disabled submit button.
25-
* @param buttonDisableText The text color of the disabled button.
26-
* @param submitButtonDisabledText The text color of the disabled submit button.
23+
* @param disabledSecondary The background color of the disabled button.
24+
* @param disabledPrimary The background color of the disabled submit button.
25+
* @param onDisabledSecondary The text color of the disabled button.
26+
* @param onDisabledPrimary The text color of the disabled submit button.
2727
* @param smallTitle The color of the small title.
2828
*/
2929
@Stable
@@ -37,12 +37,14 @@ class MiuixColor(
3737
secondary: Color,
3838
dropdownBackground: Color,
3939
dropdownSelect: Color,
40+
searchBarBg: Color,
41+
searchBarSub: Color,
4042
textFieldBg: Color,
4143
textFieldSub: Color,
42-
disabledBg: Color,
43-
submitDisabledBg: Color,
44-
buttonDisableText: Color,
45-
submitButtonDisabledText: Color,
44+
disabledPrimary: Color,
45+
disabledSecondary: Color,
46+
onDisabledPrimary: Color,
47+
onDisabledSecondary: Color,
4648
smallTitle: Color
4749
) {
4850
val primary by mutableStateOf(primary, structuralEqualityPolicy())
@@ -54,49 +56,55 @@ class MiuixColor(
5456
val secondary by mutableStateOf(secondary, structuralEqualityPolicy())
5557
val dropdownBackground by mutableStateOf(dropdownBackground, structuralEqualityPolicy())
5658
val dropdownSelect by mutableStateOf(dropdownSelect, structuralEqualityPolicy())
59+
val searchBarBg by mutableStateOf(searchBarBg, structuralEqualityPolicy())
60+
val searchBarSub by mutableStateOf(searchBarSub, structuralEqualityPolicy())
5761
val textFieldBg by mutableStateOf(textFieldBg, structuralEqualityPolicy())
5862
val textFieldSub by mutableStateOf(textFieldSub, structuralEqualityPolicy())
59-
val disabledBg by mutableStateOf(submitDisabledBg, structuralEqualityPolicy())
60-
val submitDisabledBg by mutableStateOf(disabledBg, structuralEqualityPolicy())
61-
val buttonDisableText by mutableStateOf(buttonDisableText, structuralEqualityPolicy())
62-
val submitButtonDisabledText by mutableStateOf(submitButtonDisabledText, structuralEqualityPolicy())
63+
val disabledPrimary by mutableStateOf(disabledPrimary, structuralEqualityPolicy())
64+
val disabledSecondary by mutableStateOf(disabledSecondary, structuralEqualityPolicy())
65+
val onDisabledPrimary by mutableStateOf(onDisabledPrimary, structuralEqualityPolicy())
66+
val onDisabledSecondary by mutableStateOf(onDisabledSecondary, structuralEqualityPolicy())
6367
val smallTitle by mutableStateOf(smallTitle, structuralEqualityPolicy())
6468
}
6569

6670
fun lightColorScheme() = MiuixColor(
6771
primary = Color(0xFF3482FF),
6872
onPrimary = Color.Black,
6973
primaryContainer = Color.White,
70-
background = Color(0xFFF5F5F5),
74+
background = Color(0xFFF7F7F7),
7175
onBackground = Color.Black,
72-
subTextBase = Color(0xFF999999),
76+
subTextBase = Color(0xFF666666),
7377
secondary = Color(0xFFE6E6E6),
7478
dropdownBackground = Color(0xFFFFFFFF),
7579
dropdownSelect = Color(0xFFEAF2FF),
80+
searchBarBg = Color(0xFFEDEDED),
81+
searchBarSub = Color(0xFFA5A5A5),
7682
textFieldBg = Color(0xFFF0F0F0),
7783
textFieldSub = Color(0xFFA8A8A8),
78-
disabledBg = Color(0xFFC2D9FF),
79-
submitDisabledBg = Color(0xFFEEEEEC),
80-
buttonDisableText = Color.LightGray,
81-
submitButtonDisabledText = Color(0xFFFFFFFF),
82-
smallTitle = Color(0xFF8F96B2)
84+
disabledPrimary = Color(0xFFC2D9FF),
85+
disabledSecondary = Color(0xFFF2F2F2),
86+
onDisabledPrimary = Color(0xFFEDF4FF),
87+
onDisabledSecondary = Color(0xFFFCFCFC),
88+
smallTitle = Color(0xFF8C93B0)
8389
)
8490

8591
fun darkColorScheme() = MiuixColor(
8692
primary = Color(0xFF277AF7),
8793
onPrimary = Color.White,
88-
primaryContainer = Color(0xFF1F1F1F),
89-
background = Color.Black,
90-
onBackground = Color.White,
91-
subTextBase = Color(0xFF666666),
92-
secondary = Color(0xFF333333),
93-
dropdownBackground = Color(0xFF242424),
94-
dropdownSelect = Color(0xFF23334E),
95-
textFieldBg = Color(0xFF363636),
96-
textFieldSub = Color(0xFF727272),
97-
disabledBg = Color(0xFF253E64),
98-
submitDisabledBg = Color(0xFF222223),
99-
buttonDisableText = Color(0xFF666666),
100-
submitButtonDisabledText = Color(0xFF677893),
94+
primaryContainer = Color(0xFF242424),
95+
background = Color(0xFF101010),
96+
onBackground = Color(0xFFE9E9E9),
97+
subTextBase = Color(0xFF929292),
98+
secondary = Color(0xFF505050),
99+
dropdownBackground = Color(0xFF2C2C2C),
100+
dropdownSelect = Color(0xFF2B3B54),
101+
searchBarBg = Color(0xFF2D2D2D),
102+
searchBarSub = Color(0xFF6C6C6C),
103+
textFieldBg = Color(0xFF2C2C2C),
104+
textFieldSub = Color(0xFF6C6C6C),
105+
disabledPrimary = Color(0xFF253E64),
106+
disabledSecondary = Color(0xFF404040),
107+
onDisabledPrimary = Color(0xFF677993),
108+
onDisabledSecondary = Color(0xFF707070),
101109
smallTitle = Color(0xFF787E96)
102110
)

0 commit comments

Comments
 (0)