diff options
Diffstat (limited to 'iosApp/iosApp/Units')
-rw-r--r-- | iosApp/iosApp/Units/UnitsView.swift | 7 | ||||
-rw-r--r-- | iosApp/iosApp/Units/UnitsViewModel.swift | 10 |
2 files changed, 17 insertions, 0 deletions
diff --git a/iosApp/iosApp/Units/UnitsView.swift b/iosApp/iosApp/Units/UnitsView.swift index aedb165..bfd4e06 100644 --- a/iosApp/iosApp/Units/UnitsView.swift +++ b/iosApp/iosApp/Units/UnitsView.swift @@ -74,6 +74,13 @@ struct UnitsView: View { } } .navigationViewStyle(StackNavigationViewStyle()) + .sheet(isPresented: $unitsViewModel.showDetails) { + print("Dismissed") + } content: { + DetailsView(isPresented: $unitsViewModel.showDetails, + action: unitsViewModel.showAction, + forId: unitsViewModel.tappedId) + } } private func getNavigationTitle(_ unitDisplayMode: UnitsViewModel.UnitsDisplayMode) -> LocalizedStringKey { diff --git a/iosApp/iosApp/Units/UnitsViewModel.swift b/iosApp/iosApp/Units/UnitsViewModel.swift index b657675..f561504 100644 --- a/iosApp/iosApp/Units/UnitsViewModel.swift +++ b/iosApp/iosApp/Units/UnitsViewModel.swift @@ -41,6 +41,8 @@ class UnitsViewModel: ObservableObject { } } + var tappedId: Int32? = nil + @Published var searchQuery = "" { didSet { unitsDisplayMode = .list @@ -48,6 +50,8 @@ class UnitsViewModel: ObservableObject { } } @Published var isEditing = false + @Published var showDetails = false + @Published var showAction = DeviceRow.Action.details @Published var unitsDisplayMode: UnitsDisplayMode = .list @Published var units: [UnitInformation] = [] { didSet { @@ -121,4 +125,10 @@ class UnitsViewModel: ObservableObject { func search(query: String) { unitsController.search(query: query) } + + func show(action: DeviceRow.Action, for unit: UnitInformation) { + showAction = action + tappedId = unit.device.id + showDetails = true + } } |