Fix StatusRowContentView invade SwipeActions area (#2007)

* Fix StatusRowContentView invade SwipeActions area

* ./ add padding inside StatusRowMediaPreviewView
This commit is contained in:
tkgka 2024-04-18 02:54:46 +09:00 committed by GitHub
parent 7d47834903
commit 3782300b27
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 26 additions and 24 deletions

View file

@ -83,33 +83,33 @@ public struct StatusRowView: View {
viewModel.navigateToAccountDetail(account: viewModel.finalStatus.account)
}
}
VStack(alignment: .leading, spacing: .statusComponentSpacing) {
if !isCompact {
StatusRowHeaderView(viewModel: viewModel)
if !isCompact {
StatusRowHeaderView(viewModel: viewModel)
}
}
VStack(alignment: .leading, spacing: .statusComponentSpacing) {
StatusRowContentView(viewModel: viewModel)
.contentShape(Rectangle())
.onTapGesture {
guard !isFocused else { return }
viewModel.navigateToDetail()
}
StatusRowContentView(viewModel: viewModel)
.contentShape(Rectangle())
.onTapGesture {
guard !isFocused else { return }
viewModel.navigateToDetail()
.accessibilityActions {
if isFocused, viewModel.showActions {
accessibilityActions
}
.accessibilityActions {
if isFocused, viewModel.showActions {
accessibilityActions
}
}
if !reasons.contains(.placeholder),
viewModel.showActions, isFocused || theme.statusActionsDisplay != .none,
!isInCaptureMode
{
StatusRowActionsView(isBlockConfirmationPresented: $isBlockConfirmationPresented,
viewModel: viewModel)
.tint(isFocused ? theme.tintColor : .gray)
}
if !reasons.contains(.placeholder),
viewModel.showActions, isFocused || theme.statusActionsDisplay != .none,
!isInCaptureMode
{
StatusRowActionsView(isBlockConfirmationPresented: $isBlockConfirmationPresented,
viewModel: viewModel)
.tint(isFocused ? theme.tintColor : .gray)
}
if isFocused, !isCompact {
StatusRowDetailView(viewModel: viewModel)
}
if isFocused, !isCompact {
StatusRowDetailView(viewModel: viewModel)
}
}
}

View file

@ -54,6 +54,7 @@ public struct StatusRowMediaPreviewView: View {
: CGSize(width: imageMaxHeight, height: imageMaxHeight),
sensitive: sensitive
)
.padding(.horizontal, .layoutPadding)
.accessibilityElement(children: .ignore)
.accessibilityLabel(Self.accessibilityLabel(for: attachments[0]))
.accessibilityAddTraits([.isButton, .isImage])
@ -66,10 +67,11 @@ public struct StatusRowMediaPreviewView: View {
}
}
.padding(.bottom, scrollBottomPadding)
.padding(.horizontal, .layoutPadding)
}
.scrollClipDisabled()
}
}
.padding(.horizontal, -1 * .layoutPadding)
}
@ViewBuilder