Fix portrait panel page tabs blocked by drag handle hit area

The invisible 50pt drag-grabber overlay covered the page bar and
swallowed taps on the info/comments/related/queue tabs. Limit the
grabber hit area to the 14pt strip above the page bar and exclude
the gradient from hit testing.
This commit is contained in:
Arkadiusz Fal
2026-09-22 22:30:50 +02:00
parent c289e7576e
commit 1ff3e62852

View File

@@ -170,12 +170,13 @@ struct PortraitDetailsPanel: View {
bottomFadeOverlay bottomFadeOverlay
} }
// Extended drag hit area overlay - visual handle at top, hit area extends down // Drag handle overlay - hit area limited to the strip above the
// page bar so taps on the page tabs reach the buttons underneath
VStack(spacing: 0) { VStack(spacing: 0) {
dragHandle dragHandle
Spacer() Spacer(minLength: 0)
} }
.frame(height: 50) .frame(height: 14)
.frame(maxWidth: .infinity) .frame(maxWidth: .infinity)
.background(alignment: .top) { .background(alignment: .top) {
LinearGradient( LinearGradient(
@@ -184,6 +185,7 @@ struct PortraitDetailsPanel: View {
endPoint: .bottom endPoint: .bottom
) )
.frame(height: 25) .frame(height: 25)
.allowsHitTesting(false)
} }
.contentShape(Rectangle()) .contentShape(Rectangle())
.highPriorityGesture( .highPriorityGesture(