From 1d5fea3af6a25486eeff35bea3c81a0164ef3e4f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 6 Mar 2026 05:48:12 +0000 Subject: [PATCH 1/2] Initial plan From ce2714dcb8d96410fb4f4b39c26ab1a5ecc40954 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 6 Mar 2026 05:50:24 +0000 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20apply=20review=20feedback=20?= =?UTF-8?q?=E2=80=94=20any-pointer=20guard,=20hybrid=20CSS=20fix,=20pin=20?= =?UTF-8?q?Node=2020.19.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: devakesu <61821107+devakesu@users.noreply.github.com> --- .github/workflows/deploy.yml | 2 +- app/globals.css | 4 ++-- public/js/reactive-glow.js | 9 +++++++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 72f8ea4..04f85ec 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -66,7 +66,7 @@ jobs: - name: Set up Node.js uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 with: - node-version: '20' + node-version: '20.19.0' - name: Install dependencies run: npm ci diff --git a/app/globals.css b/app/globals.css index 94382b2..b43b852 100644 --- a/app/globals.css +++ b/app/globals.css @@ -8,8 +8,8 @@ html { text-rendering: optimizeLegibility; } -/* Desktop-only scroll behavior — avoids killing iOS momentum / rubber-band scrolling */ -@media (pointer: fine) { +/* Desktop-only scroll behavior — avoids killing iOS momentum / rubber-band scrolling on touch/hybrid devices */ +@media (pointer: fine) and (not (any-pointer: coarse)) { html { scroll-behavior: smooth; /* Improve mouse wheel scrolling smoothness */ diff --git a/public/js/reactive-glow.js b/public/js/reactive-glow.js index 6265f20..b0e2000 100644 --- a/public/js/reactive-glow.js +++ b/public/js/reactive-glow.js @@ -48,9 +48,14 @@ ); // Skip scroll pulse effect on touch devices (causes jank during mobile scroll) - const isTouchDevice = + const hasAnyCoarsePointer = typeof window.matchMedia === 'function' && - window.matchMedia('(pointer: coarse)').matches; + window.matchMedia('(any-pointer: coarse)').matches; + const hasTouchPoints = + typeof navigator !== 'undefined' && + typeof navigator.maxTouchPoints === 'number' && + navigator.maxTouchPoints > 0; + const isTouchDevice = hasAnyCoarsePointer || hasTouchPoints; // Scroll velocity → pulse strength (throttled with rAF) if (!isTouchDevice) {