Fix mouse-wheel scrolling in the main app and the dashboard sun arc
Publish Container / publish (push) Successful in 2m55s

- overscroll-behavior moved from <body> to <html>: with html+body both overflow-x:hidden,
  body is a scroll container and the rule blocked wheel scrolling from reaching the page
- sunTimes returned the neighbouring day's sunrise/sunset (julian-day rounding), so midday
  looked like night; align results to the requested local day

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Nate EmmertandClaude Sonnet 5.5 committed 2026-10-15 13:12:41 -04:00
1 parent a9fc20cef4
commit 74198330d9
3 files changed
+7 -3

No files matched your search

+2 -1
View File
@@ -5,7 +5,8 @@
--topbar-h: 58px;
}
html { -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
body { overscroll-behavior-y: none; }
/* on <html> (the viewport): putting this on <body> can block wheel scrolling when body is a scroll container */
html { overscroll-behavior-y: none; }
button, a, summary { touch-action: manipulation; }
/* ── Layout ── */
+3 -1
View File
@@ -106,7 +106,9 @@ function sunTimes(noonMs, lat, lon) {
if (cosW > 1 || cosW < -1) return null; // polar day/night
const w = Math.acos(cosW) / RAD;
const toMs = (j) => (j - 2440587.5) * MS_DAY;
return { rise: toMs(Jt - w / 360), set: toMs(Jt + w / 360), noon: toMs(Jt) };
// The julian-day rounding above can land on the neighbouring day; align to the requested day
const shift = Math.round((noonMs - toMs(Jt)) / MS_DAY) * MS_DAY;
return { rise: toMs(Jt - w / 360) + shift, set: toMs(Jt + w / 360) + shift, noon: toMs(Jt) + shift };
}
const SYNODIC = 29.530588853;
const NEW_MOON = Date.UTC(2000, 0, 6, 18, 14);
+2 -1
View File
@@ -335,7 +335,8 @@ canvas.sparkline { display: block; width: 100%; height: 22px; margin-top: 0.4rem
/* ── iPhone / touch ── */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
body { overscroll-behavior-y: none; min-height: 100vh; min-height: 100dvh; }
html { overscroll-behavior-y: none; }
body { min-height: 100vh; min-height: 100dvh; }
.header { padding-top: calc(1rem + env(safe-area-inset-top)); padding-left: calc(1.5rem + env(safe-area-inset-left)); padding-right: calc(1.5rem + env(safe-area-inset-right)); }
.page { padding-left: calc(1rem + env(safe-area-inset-left)); padding-right: calc(1rem + env(safe-area-inset-right)); padding-bottom: calc(4rem + env(safe-area-inset-bottom)); }
/* Let the page scroll when a finger starts on a chart; taps/long-press still show tooltips */