aboutsummaryrefslogtreecommitdiff
path: root/iosApp/iosApp/Map/MapView.swift
diff options
context:
space:
mode:
authorIván Ávalos <avalos@disroot.org>2022-02-04 02:20:29 -0600
committerIván Ávalos <avalos@disroot.org>2022-02-04 02:20:29 -0600
commitdac657032851dbd6b13be72253e4f8777c67b439 (patch)
treee1c8abbb7a7bde807d2d0b8d5b7ec06facc7d975 /iosApp/iosApp/Map/MapView.swift
parent48e9f6e38213c533286d83e426346471d507467d (diff)
downloadetbsa-trackermap-mobile-dac657032851dbd6b13be72253e4f8777c67b439.tar.gz
etbsa-trackermap-mobile-dac657032851dbd6b13be72253e4f8777c67b439.tar.bz2
etbsa-trackermap-mobile-dac657032851dbd6b13be72253e4f8777c67b439.zip
- Center selected marker in map has been implemented.
- Initial zoom on map works again.
Diffstat (limited to 'iosApp/iosApp/Map/MapView.swift')
-rw-r--r--iosApp/iosApp/Map/MapView.swift11
1 files changed, 11 insertions, 0 deletions
diff --git a/iosApp/iosApp/Map/MapView.swift b/iosApp/iosApp/Map/MapView.swift
index 6b0fa20..989f17a 100644
--- a/iosApp/iosApp/Map/MapView.swift
+++ b/iosApp/iosApp/Map/MapView.swift
@@ -25,6 +25,7 @@ struct MapView: UIViewControllerRepresentable {
@Binding var layer: MapLayer
@Binding var markers: [Marker]
+ @Binding var selected: Marker?
var markerCallback: MarkerCallback?
class Coordinator {
@@ -51,5 +52,15 @@ struct MapView: UIViewControllerRepresentable {
isReport: false,
center: context.coordinator.shouldCenter)
context.coordinator.shouldCenter = false
+
+ // MARK: - Center selected marker
+ if let selected = selected {
+ uiViewController.focusOn(marker: selected)
+ self.selected = nil
+ }
+ }
+
+ static func dismantleUIViewController(_ uiViewController: MapViewController, coordinator: Coordinator) {
+ uiViewController.dismantle()
}
}