From 7ff75f9a0071e9579bedc2fac58bcd49b98abcfa Mon Sep 17 00:00:00 2001 From: Jack Levy Date: Sun, 15 Mar 2026 21:09:23 -0400 Subject: [PATCH] =?UTF-8?q?fix:=20mobile=20layout=20=E2=80=94=20prevent=20?= =?UTF-8?q?horizontal=20overflow=20on=20notifications=20page?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - AuthGuard: switch outer shell from h-dvh to fixed inset-0 so the container always matches the visual viewport regardless of Android Chrome address-bar state; add min-w-0 to content column so flex children (e.g. long ntfy URL input) cannot force the column wider than the viewport - Notifications page: add overflow-x-auto + shrink-0 to both tab bars so button overflow scrolls within the bar instead of escaping to the page; add min-w-0 to all inline label/hint div pairs in ModeFilterSection and Discovery so they shrink correctly in flex layout; add break-all to bill title line-clamp paragraph Authored by: Jack Levy --- frontend/app/notifications/page.tsx | 24 ++++++++++++------------ frontend/components/shared/AuthGuard.tsx | 4 ++-- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/frontend/app/notifications/page.tsx b/frontend/app/notifications/page.tsx index 259b5ba..4671fa9 100644 --- a/frontend/app/notifications/page.tsx +++ b/frontend/app/notifications/page.tsx @@ -126,21 +126,21 @@ function ModeFilterSection({ onChange({ ...filters, new_document: e.target.checked })} className="mt-0.5 rounded" /> -
New bill textThe full text of the bill is published
+
New bill textThe full text of the bill is published
{(["vote", "presidential", "committee_report", "calendar", "procedural"] as const).map((k) => { @@ -150,7 +150,7 @@ function ModeFilterSection({ onChange({ ...filters, [k]: e.target.checked })} className="mt-0.5 rounded" /> -
{row.label}{row.hint}
+
{row.label}{row.hint}
); })} @@ -484,7 +484,7 @@ export default function NotificationsPage() {
{/* Channel tab bar */} -
+
{([ { key: "ntfy", label: "ntfy", icon: Bell, active: settings?.ntfy_enabled }, { key: "email", label: "Email", icon: Mail, active: settings?.email_enabled }, @@ -494,7 +494,7 @@ export default function NotificationsPage() {
{/* Tab bar */} -
+
{MODES.map((mode) => (