@@ -88,19 +88,24 @@ struct AddEditFavoriteFoodView: View {
8888
8989 private var card : some View {
9090 VStack ( spacing: 10 ) {
91- TextFieldRow ( text: $viewModel. name, title: " Name " , placeholder: " Apple " , expandedRow: $expandedRow, row: . name)
91+ var nameFocused : Binding < Bool > = Binding ( get: { expandedRow == . name } , set: { expandedRow = $0 ? . name : nil } )
92+ var carbQuantityFocused : Binding < Bool > = Binding ( get: { expandedRow == . carbQuantity } , set: { expandedRow = $0 ? . carbQuantity : nil } )
93+ var foodTypeFocused : Binding < Bool > = Binding ( get: { expandedRow == . foodType } , set: { expandedRow = $0 ? . foodType : nil } )
94+ var absorptionTimeFocused : Binding < Bool > = Binding ( get: { expandedRow == . absorptionTime } , set: { expandedRow = $0 ? . absorptionTime : nil } )
95+
96+ TextFieldRow ( text: $viewModel. name, isFocused: nameFocused, title: " Name " , placeholder: " Apple " )
9297
9398 CardSectionDivider ( )
9499
95- CarbQuantityRow ( quantity: $viewModel. carbsQuantity, title: " Carb Quantity " , preferredCarbUnit: viewModel. preferredCarbUnit, expandedRow : $expandedRow , row : Row . amountConsumed )
100+ CarbQuantityRow ( quantity: $viewModel. carbsQuantity, isFocused : carbQuantityFocused , title: " Carb Quantity " , preferredCarbUnit: viewModel. preferredCarbUnit)
96101
97102 CardSectionDivider ( )
98103
99- EmojiRow ( emojiType : . food , text: $viewModel. foodType, title : " Food Type " , expandedRow : $expandedRow , row : . foodType )
104+ EmojiRow ( text: $viewModel. foodType, isFocused : foodTypeFocused , emojiType : . food , title : " Food Type " )
100105
101106 CardSectionDivider ( )
102107
103- AbsorptionTimePickerRow ( absorptionTime: $viewModel. absorptionTime, validDurationRange : viewModel . absorptionRimesRange , expandedRow : $expandedRow , row : Row . absorptionTime , showHowAbsorptionTimeWorks: $showHowAbsorptionTimeWorks)
108+ AbsorptionTimePickerRow ( absorptionTime: $viewModel. absorptionTime, isFocused : absorptionTimeFocused , validDurationRange : viewModel . absorptionRimesRange , showHowAbsorptionTimeWorks: $showHowAbsorptionTimeWorks)
104109 . padding ( . bottom, 2 )
105110 }
106111 . padding ( . vertical, 12 )
@@ -163,6 +168,6 @@ extension AddEditFavoriteFoodView {
163168
164169extension AddEditFavoriteFoodView {
165170 enum Row {
166- case name, amountConsumed , foodType, absorptionTime
171+ case name, carbQuantity , foodType, absorptionTime
167172 }
168173}
0 commit comments