@@ -7,11 +7,13 @@ import androidx.compose.foundation.layout.Arrangement
7import androidx.compose.foundation.layout.Column
7import androidx.compose.foundation.layout.Column
8import androidx.compose.foundation.layout.Row
8import androidx.compose.foundation.layout.Row
9import androidx.compose.foundation.layout.Spacer
9import androidx.compose.foundation.layout.Spacer
10+import androidx.compose.foundation.layout.defaultMinSize
10import androidx.compose.foundation.layout.fillMaxWidth
11import androidx.compose.foundation.layout.fillMaxWidth
11import androidx.compose.foundation.layout.padding
12import androidx.compose.foundation.layout.padding
12import androidx.compose.foundation.layout.size
13import androidx.compose.foundation.layout.size
13import androidx.compose.foundation.layout.widthIn
14import androidx.compose.foundation.layout.widthIn
14import androidx.compose.foundation.selection.selectable
15import androidx.compose.foundation.selection.selectable
16+import androidx.compose.foundation.selection.toggleable
15import androidx.compose.material.icons.Icons
17import androidx.compose.material.icons.Icons
16import androidx.compose.material.icons.automirrored.filled.ArrowBack
18import androidx.compose.material.icons.automirrored.filled.ArrowBack
17import androidx.compose.material.icons.automirrored.filled.KeyboardArrowRight
19import androidx.compose.material.icons.automirrored.filled.KeyboardArrowRight
@@ -100,7 +102,14 @@ fun SettingsScreen(container: AppContainer, onBack: () -> Unit, onManageServers:
101 Spacer(Modifier.size(8.dp))
103 Spacer(Modifier.size(8.dp))
108+ value = dynamicColor,
109+ onValueChange = { scope.launch { runCatchingCancellable { container.settingsStore.setDynamicColor(it) } } },
103− modifier = Modifier.fillMaxWidth().padding(vertical = 8.dp),
112+ .padding(vertical = 8.dp),
104 verticalAlignment = Alignment.CenterVertically,
113 verticalAlignment = Alignment.CenterVertically,
106 Column(modifier = Modifier.weight(1f)) {
115 Column(modifier = Modifier.weight(1f)) {
@@ -113,7 +122,7 @@ fun SettingsScreen(container: AppContainer, onBack: () -> Unit, onManageServers:
115 checked = dynamicColor,
124 checked = dynamicColor,
116− onCheckedChange = { scope.launch { runCatchingCancellable { container.settingsStore.setDynamicColor(it) } } },
125+ onCheckedChange = null,
@@ -142,6 +151,7 @@ fun SettingsScreen(container: AppContainer, onBack: () -> Unit, onManageServers:
143 modifier = Modifier
152 modifier = Modifier
144 .fillMaxWidth()
153 .fillMaxWidth()
154+ .defaultMinSize(minHeight = 48.dp)
145 .padding(top = 8.dp)
155 .padding(top = 8.dp)
146 .clickable(role = Role.Button) { onManageServers() }
156 .clickable(role = Role.Button) { onManageServers() }
147 .padding(vertical = 8.dp),
157 .padding(vertical = 8.dp),
@@ -176,6 +186,7 @@ fun SettingsScreen(container: AppContainer, onBack: () -> Unit, onManageServers:
177 modifier = Modifier
187 modifier = Modifier
178 .fillMaxWidth()
188 .fillMaxWidth()
189+ .defaultMinSize(minHeight = 48.dp)
179 .clickable(role = Role.Button) { onOpenDiagnostics() }
190 .clickable(role = Role.Button) { onOpenDiagnostics() }
180 .padding(vertical = 8.dp),
191 .padding(vertical = 8.dp),
181 verticalAlignment = Alignment.CenterVertically,
192 verticalAlignment = Alignment.CenterVertically,
@@ -198,7 +209,7 @@ private fun ThemeRow(mode: ThemeMode, selected: Boolean, onSelect: () -> Unit) {
198 horizontalArrangement = Arrangement.spacedBy(8.dp),
209 horizontalArrangement = Arrangement.spacedBy(8.dp),
199 verticalAlignment = Alignment.CenterVertically,
210 verticalAlignment = Alignment.CenterVertically,
201− RadioButton(selected = selected, onClick = onSelect)
212+ RadioButton(selected = selected, onClick = null)
203 when (mode) {
214 when (mode) {
204 ThemeMode.SYSTEM -> stringResource(R.string.theme_system)
215 ThemeMode.SYSTEM -> stringResource(R.string.theme_system)