From ee4e06f948f091312db11ae4063a0bd8824f7bc2 Mon Sep 17 00:00:00 2001 From: Jonathan Kingston Date: Sun, 29 Mar 2026 19:52:44 +0100 Subject: [PATCH] fix: improve mobile review card scrolling and swipe gestures Keep the review page locked to the viewport, move long-form content scrolling into the card body, and make mobile swipe gestures hold onto horizontal intent even when a thumb path drifts vertically. Made-with: Cursor --- team-ui/src/components/Layout.tsx | 17 +- team-ui/src/components/ReviewCard.tsx | 33 +-- team-ui/src/hooks/useCardDrag.ts | 278 +++++++++++++++++++++++--- team-ui/src/pages/ReviewPage.tsx | 24 ++- 4 files changed, 294 insertions(+), 58 deletions(-) diff --git a/team-ui/src/components/Layout.tsx b/team-ui/src/components/Layout.tsx index 9fa076a..e952a66 100644 --- a/team-ui/src/components/Layout.tsx +++ b/team-ui/src/components/Layout.tsx @@ -8,6 +8,7 @@ export function Layout() { const location = useLocation(); const [pendingCount, setPendingCount] = useState(0); const onDashboard = location.pathname === "/dashboard"; + const onReview = location.pathname === "/review"; useEffect(() => { if (onDashboard) return; @@ -41,8 +42,12 @@ export function Layout() { } return ( -
-