hide context indicator for statuses inside StatusDetailView

This commit is contained in:
Duong Thai 2024-01-18 09:09:27 +07:00
parent e03747aa45
commit d0e1da148a
2 changed files with 8 additions and 4 deletions

View file

@ -123,7 +123,7 @@ public struct StatusDetailView: View {
scrollToId: $viewModel.scrollToId) scrollToId: $viewModel.scrollToId)
let isFocused = self.viewModel.statusId == status.id let isFocused = self.viewModel.statusId == status.id
StatusRowView(viewModel: viewModel) StatusRowView(viewModel: viewModel, context: .detail)
.id(status.id + (status.editedAt?.asDate.description ?? "")) .id(status.id + (status.editedAt?.asDate.description ?? ""))
.environment(\.extraLeadingInset, !isCompact ? extraInsets : 0) .environment(\.extraLeadingInset, !isCompact ? extraInsets : 0)
.environment(\.indentationLevel, !isCompact ? indentationLevel : 0) .environment(\.indentationLevel, !isCompact ? indentationLevel : 0)

View file

@ -23,8 +23,12 @@ public struct StatusRowView: View {
@State private var viewModel: StatusRowViewModel @State private var viewModel: StatusRowViewModel
@State private var showSelectableText: Bool = false @State private var showSelectableText: Bool = false
public init(viewModel: StatusRowViewModel) { public enum Context { case timeline, detail }
_viewModel = .init(initialValue: viewModel) private let context: Context
public init(viewModel: StatusRowViewModel, context: Context = .timeline) {
self._viewModel = .init(initialValue: viewModel)
self.context = context
} }
var contextMenu: some View { var contextMenu: some View {
@ -56,7 +60,7 @@ public struct StatusRowView: View {
EmptyView() EmptyView()
} }
} else { } else {
if !isCompact { if !isCompact && context != .detail {
Group { Group {
StatusRowTagView(viewModel: viewModel) StatusRowTagView(viewModel: viewModel)
StatusRowReblogView(viewModel: viewModel) StatusRowReblogView(viewModel: viewModel)