Skip to content

Fix mobile drawer backdrop blocking taps when closed - #82

Merged
mk7luke merged 1 commit into
mainfrom
claude/mobile-portrait-dashboard-click-w7z3yb
Jul 26, 2026
Merged

Fix mobile drawer backdrop blocking taps when closed#82
mk7luke merged 1 commit into
mainfrom
claude/mobile-portrait-dashboard-click-w7z3yb

Conversation

@mk7luke

@mk7luke mk7luke commented Jul 25, 2026

Copy link
Copy Markdown
Owner

On the mobile-portrait layout the nav backdrop was rendered with an
author display: block rule inside the (max-width: 820px) media query.
That rule beats the user-agent [hidden] { display: none } rule, so the
hidden attribute the Shell sets when the drawer is closed had no effect:
the backdrop stayed pinned over the page as a fixed z-index:50 overlay,
greying the dashboard out and swallowing every tap while still letting
the page scroll.

Scope the display rule to .nav-backdrop:not([hidden]) so the closed
state honours the hidden attribute and the backdrop only covers the
page while the drawer is actually open.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_013BYQKtb2HVzLa36JDoytki


Summary

Fixed the mobile drawer backdrop remaining visible and intercepting taps when closed by scoping the display rule to .nav-backdrop:not([hidden]).

Changes

File Changes
web/src/styles/base.css Scoped the mobile nav-backdrop display:block rule to :not([hidden]) so the closed drawer state honors the hidden attribute and no longer overlays the page.

On the mobile-portrait layout the nav backdrop was rendered with an
author `display: block` rule inside the (max-width: 820px) media query.
That rule beats the user-agent `[hidden] { display: none }` rule, so the
`hidden` attribute the Shell sets when the drawer is closed had no effect:
the backdrop stayed pinned over the page as a fixed z-index:50 overlay,
greying the dashboard out and swallowing every tap while still letting
the page scroll.

Scope the display rule to `.nav-backdrop:not([hidden])` so the closed
state honours the `hidden` attribute and the backdrop only covers the
page while the drawer is actually open.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013BYQKtb2HVzLa36JDoytki
@diffsentry

diffsentry Bot commented Jul 25, 2026

Copy link
Copy Markdown

DiffSentry has completed the review — Looks good!

@diffsentry

diffsentry Bot commented Jul 25, 2026

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

Fixed the mobile drawer backdrop remaining visible and intercepting taps when closed by scoping the display rule to .nav-backdrop:not([hidden]).

Changes

Cohort / File(s) Summary
Mobile Drawer Backdrop
web/src/styles/base.css
Scoped the backdrop display rule so it only applies when the drawer is open, fixing blocked taps and grey overlay on mobile portrait.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Suggested Labels

bug

Risk Assessment

Score: 0/100 — 🟢 Low

No elevated risk signals detected.

🚥 Pre-merge checks | ✅ 5 | ❌ 0
✅ Passed checks (5 passed)
Check name Status Explanation
PR Title ✅ Passed Title meets all requirements: imperative verb (Fix), 52 chars (under 72), no trailing period, no Conventional Commits prefix.
PR Description ✅ Passed Description explains WHAT (scope display rule to .nav-backdrop:not([hidden])) and WHY (author display:block was overriding UA [hidden] { display: none }, leaving a tap-blocking overlay when the drawer is closed). No related issue/PR link appears applicable.
Schema bump ✅ Passed src/storage/db.ts was not changed in this PR; only web/src/styles/base.css was modified.
Provider parity ✅ Passed src/ai/anthropic.ts was not modified in this PR; only web/src/styles/base.css changed (CSS fix for .nav-backdrop:not([hidden])). No request/response contract updates required.
Pattern test coverage ✅ Passed No changes to src/safety-scanner.ts or src/pattern-checks.ts; only web/src/styles/base.css was modified.

✏️ Tip: You can configure your own custom pre-merge checks in your .diffsentry.yaml.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Generate docstrings (beta)
  • Push docstring commit to this branch
🧹 Simplify (beta)
  • Push simplification commit to this branch
🪄 Autofix unresolved comments (beta)
  • Push autofix commit to this branch

Comment @diffsentry help to get the list of available commands and usage tips.

@diffsentry diffsentry Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Correct, minimal CSS fix for the mobile drawer backdrop. Scoping display: block (and the rest of the overlay rules) to .nav-backdrop:not([hidden]) restores the UA [hidden] { display: none } behavior so the closed drawer no longer traps taps. The accompanying comment documents the specificity trap clearly.


ℹ️ Review info
⚙️ Run configuration

Configuration used: .diffsentry.yaml

Review profile: ASSERTIVE

Run ID: d877083f-f9f0-42ab-9ff2-eb132f49be45

📥 Commits

Reviewing files at 0876a7a (base SHA unavailable).

📒 Files selected for processing (1)
  • web/src/styles/base.css

@diffsentry

diffsentry Bot commented Jul 25, 2026

Copy link
Copy Markdown

📌 Status — last updated 0876a7a

🟢 Approved

Risk score 0/100 (Low) ▁
Unresolved threads 0
Failing checks 0
Pending checks 1
Files reviewed 1
Updated 2026-07-25 03:36Z

Live-updated by DiffSentry on every push. Use @diffsentry ship for a verdict, @diffsentry timeline for full history.

@mk7luke
mk7luke merged commit 011a6f1 into main Jul 26, 2026
4 checks passed
@mk7luke
mk7luke deleted the claude/mobile-portrait-dashboard-click-w7z3yb branch July 26, 2026 22:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants