From 1ff3e62852b8bb11da90685672f14edd5bf919f6 Mon Sep 17 00:00:00 2001 From: Arkadiusz Fal Date: Tue, 22 Sep 2026 22:30:50 +0200 Subject: [PATCH] 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. --- Yattee/Views/Player/PortraitDetailsPanel.swift | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Yattee/Views/Player/PortraitDetailsPanel.swift b/Yattee/Views/Player/PortraitDetailsPanel.swift index f587f4dc..cf7e80d5 100644 --- a/Yattee/Views/Player/PortraitDetailsPanel.swift +++ b/Yattee/Views/Player/PortraitDetailsPanel.swift @@ -170,12 +170,13 @@ struct PortraitDetailsPanel: View { 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) { dragHandle - Spacer() + Spacer(minLength: 0) } - .frame(height: 50) + .frame(height: 14) .frame(maxWidth: .infinity) .background(alignment: .top) { LinearGradient( @@ -184,6 +185,7 @@ struct PortraitDetailsPanel: View { endPoint: .bottom ) .frame(height: 25) + .allowsHitTesting(false) } .contentShape(Rectangle()) .highPriorityGesture(