Skip to content

Commit 0f168ad

Browse files
committed
#1871 use monospace font in ChooseSettingScreen.kt
1 parent 2b0efdc commit 0f168ad

1 file changed

Lines changed: 43 additions & 12 deletions

File tree

base/src/main/java/io/github/sds100/keymapper/base/actions/ChooseSettingScreen.kt

Lines changed: 43 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import androidx.compose.material3.CircularProgressIndicator
1616
import androidx.compose.material3.ExperimentalMaterial3Api
1717
import androidx.compose.material3.HorizontalDivider
1818
import androidx.compose.material3.ListItem
19+
import androidx.compose.material3.LocalTextStyle
1920
import androidx.compose.material3.MaterialTheme
2021
import androidx.compose.material3.Scaffold
2122
import androidx.compose.material3.Surface
@@ -26,6 +27,7 @@ import androidx.compose.runtime.getValue
2627
import androidx.compose.ui.Alignment
2728
import androidx.compose.ui.Modifier
2829
import androidx.compose.ui.res.stringResource
30+
import androidx.compose.ui.text.font.FontFamily
2931
import androidx.compose.ui.tooling.preview.Preview
3032
import androidx.compose.ui.unit.dp
3133
import androidx.lifecycle.compose.collectAsStateWithLifecycle
@@ -135,18 +137,11 @@ private fun ChooseSettingScreen(
135137
)
136138
}
137139
} else {
138-
LazyColumn(modifier = Modifier.fillMaxSize()) {
139-
items(state.data) { item ->
140-
ListItem(
141-
headlineContent = { Text(item.key) },
142-
supportingContent = item.value?.let { { Text(it) } },
143-
modifier = Modifier.clickable {
144-
onClickSetting(item.key, item.value)
145-
},
146-
)
147-
HorizontalDivider()
148-
}
149-
}
140+
LoadedList(
141+
modifier = Modifier.fillMaxSize(),
142+
listItems = state.data,
143+
onClick = onClickSetting,
144+
)
150145
}
151146
}
152147
}
@@ -155,6 +150,42 @@ private fun ChooseSettingScreen(
155150
}
156151
}
157152

153+
@Composable
154+
private fun LoadedList(
155+
modifier: Modifier = Modifier,
156+
listItems: List<SettingItem>,
157+
onClick: (String, String?) -> Unit,
158+
) {
159+
LazyColumn(modifier = modifier) {
160+
items(listItems) { item ->
161+
ListItem(
162+
headlineContent = {
163+
Text(
164+
item.key,
165+
style = LocalTextStyle.current.copy(
166+
fontFamily = FontFamily.Monospace,
167+
),
168+
)
169+
},
170+
supportingContent = item.value?.let {
171+
{
172+
Text(
173+
it,
174+
style = LocalTextStyle.current.copy(
175+
fontFamily = FontFamily.Monospace,
176+
),
177+
)
178+
}
179+
},
180+
modifier = Modifier.clickable {
181+
onClick(item.key, item.value)
182+
},
183+
)
184+
HorizontalDivider()
185+
}
186+
}
187+
}
188+
158189
@OptIn(ExperimentalMaterial3Api::class)
159190
@Preview
160191
@Composable

0 commit comments

Comments
 (0)