@@ -47,7 +47,6 @@ fun <T> ConverterUnitPickerScreen(
4747 converterViewModel : UnitConverterViewModel ,
4848 availableUnits : List <ConverterUnit <T >>,
4949 selectedUnit : ConverterUnit <T >,
50- onUnitSelected : (ConverterUnit <T >) -> Unit ,
5150 onDismissRequest : () -> Unit
5251) {
5352 val context = LocalContext .current
@@ -64,6 +63,11 @@ fun <T> ConverterUnitPickerScreen(
6463
6564 val scrollBehavior = SearchBarDefaults .enterAlwaysSearchBarScrollBehavior()
6665
66+ fun setSelectedUnit (unit : ConverterUnit <T >) {
67+ converterViewModel.saveSelectedUnitForCategory(unit)
68+ onDismissRequest()
69+ }
70+
6771 FullscreenDialog (onDismissRequest = onDismissRequest) {
6872 Scaffold (
6973 topBar = {
@@ -76,9 +80,7 @@ fun <T> ConverterUnitPickerScreen(
7680 SearchBarDefaults .InputField (
7781 query = query,
7882 onQueryChange = { query = it },
79- onSearch = {
80-
81- },
83+ onSearch = { /* do nothing, search is automatically triggered by onQueryChange */ },
8284 expanded = true ,
8385 onExpandedChange = {},
8486 placeholder = { Text (stringResource(R .string.search)) },
@@ -120,8 +122,7 @@ fun <T> ConverterUnitPickerScreen(
120122 isSelected = unit == selectedUnit,
121123 isFavorite = true ,
122124 onClicked = {
123- onUnitSelected(unit)
124- onDismissRequest()
125+ setSelectedUnit(unit)
125126 },
126127 toggleIsFavorited = {
127128 converterViewModel.removeFavoriteUnit(unit)
@@ -139,8 +140,7 @@ fun <T> ConverterUnitPickerScreen(
139140 isSelected = unit == selectedUnit,
140141 isFavorite = false ,
141142 onClicked = {
142- onUnitSelected(unit)
143- onDismissRequest()
143+ setSelectedUnit(unit)
144144 },
145145 toggleIsFavorited = {
146146 converterViewModel.addFavoriteUnit(unit)
0 commit comments