mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-29 12:46:58 +02:00
Feature/3120 location sharing
This commit is contained in:
+15
-4
@@ -24,6 +24,7 @@ struct StaticLocationViewingCoordinatorParameters {
|
||||
let avatarData: AvatarInputProtocol
|
||||
let location: CLLocationCoordinate2D
|
||||
let coordinateType: LocationSharingCoordinateType
|
||||
let mxSession: MXSession?
|
||||
}
|
||||
|
||||
final class StaticLocationViewingCoordinator: Coordinator, Presentable {
|
||||
@@ -50,10 +51,20 @@ final class StaticLocationViewingCoordinator: Coordinator, Presentable {
|
||||
init(parameters: StaticLocationViewingCoordinatorParameters) {
|
||||
self.parameters = parameters
|
||||
|
||||
let viewModel = StaticLocationViewingViewModel(mapStyleURL: BuildSettings.tileServerMapStyleURL,
|
||||
avatarData: parameters.avatarData,
|
||||
location: parameters.location,
|
||||
coordinateType: parameters.coordinateType)
|
||||
var viewModel: StaticLocationViewingViewModel
|
||||
if let mapStyleUrl = parameters.mxSession?.vc_homeserverConfiguration()?.tileServer.mapStyleURL {
|
||||
viewModel = StaticLocationViewingViewModel(mapStyleURL: mapStyleUrl,
|
||||
avatarData: parameters.avatarData,
|
||||
location: parameters.location,
|
||||
coordinateType: parameters.coordinateType)
|
||||
} else {
|
||||
viewModel = StaticLocationViewingViewModel(mapStyleURL: BuildSettings.tileServerMapStyleURL,
|
||||
avatarData: parameters.avatarData,
|
||||
location: parameters.location,
|
||||
coordinateType: parameters.coordinateType)
|
||||
}
|
||||
|
||||
|
||||
let view = StaticLocationView(viewModel: viewModel.context)
|
||||
.addDependency(AvatarService.instantiate(mediaManager: parameters.mediaManager))
|
||||
staticLocationViewingViewModel = viewModel
|
||||
|
||||
@@ -49,6 +49,10 @@ struct StaticLocationViewingViewState: BindableState {
|
||||
var shareButtonEnabled: Bool {
|
||||
!showLoadingIndicator
|
||||
}
|
||||
|
||||
var shareButtonVisible: Bool {
|
||||
BwiBuildSettings.bwiLocationShareButtonVisible
|
||||
}
|
||||
|
||||
let errorSubject = PassthroughSubject<LocationSharingViewError, Never>()
|
||||
|
||||
|
||||
@@ -62,8 +62,9 @@ struct StaticLocationView: View {
|
||||
} label: {
|
||||
Image(uiImage: Asset.Images.locationShareIcon.image)
|
||||
}
|
||||
.disabled(!viewModel.viewState.shareButtonEnabled)
|
||||
//.disabled(!viewModel.viewState.shareButtonEnabled)
|
||||
.accessibilityIdentifier("shareButton")
|
||||
.opacity(BwiBuildSettings.bwiLocationShareButtonVisible ? 1.0 : 0.0)
|
||||
}
|
||||
}
|
||||
.navigationBarTitleDisplayMode(.inline)
|
||||
|
||||
Reference in New Issue
Block a user