prevent replies to LLS timeline items, and live location sharing in threads

This commit is contained in:
Mauro Romito
2026-05-12 14:42:12 +02:00
committed by Mauro
parent 212ac17d0b
commit 07fc022a65
12 changed files with 73 additions and 29 deletions
@@ -40,7 +40,7 @@ struct LocationSharingScreen: View {
private var mainContent: some View {
mapView
.ignoresSafeArea(edges: .bottom)
.track(screen: context.viewState.interactionMode == .picker ? .LocationSend : .LocationView)
.track(screen: context.viewState.interactionMode.isPicker ? .LocationSend : .LocationView)
.navigationTitle(L10n.screenViewLocationTitle)
.navigationBarTitleDisplayMode(.inline)
.toolbar { toolbar }
@@ -71,7 +71,7 @@ struct LocationSharingScreen: View {
}
private var mapSafeAreaEdges: Edge.Set {
context.viewState.interactionMode == .picker ? .horizontal : [.horizontal, .bottom]
context.viewState.interactionMode.isPicker ? .horizontal : [.horizontal, .bottom]
}
@ToolbarContentBuilder
@@ -126,19 +126,26 @@ struct LocationSharingScreen: View {
struct LocationSharingScreen_Previews: PreviewProvider, TestablePreview {
static let viewModel = LocationSharingScreenViewModel.mock(type: .staticSenderLocation)
static let withoutLiveSharingViewModel = LocationSharingScreenViewModel.mock(type: .pickerWithoutLiveLocationOption)
static let pinViewModel = LocationSharingScreenViewModel.mock(type: .staticPinLocation)
static let pickerViewModel = LocationSharingScreenViewModel.mock(type: .picker)
static let liveLocationViewModel = LocationSharingScreenViewModel.mock(type: .viewLive)
static var previews: some View {
ElementNavigationStack {
LocationSharingScreen(context: pickerViewModel.context)
}
.previewDisplayName("Picker")
ElementNavigationStack {
LocationSharingScreen(context: withoutLiveSharingViewModel.context)
}
.previewDisplayName("Picker without live location sharing")
ElementNavigationStack {
LocationSharingScreen(context: viewModel.context)
}