Skip to content

fix: restore PageLayout header visibility and add mobile actions slot#141

Merged
AdamJ merged 2 commits into
mainfrom
claude/mobile-sheet-action-bug-FwgwX
May 26, 2026
Merged

fix: restore PageLayout header visibility and add mobile actions slot#141
AdamJ merged 2 commits into
mainfrom
claude/mobile-sheet-action-bug-FwgwX

Conversation

@AdamJ
Copy link
Copy Markdown
Owner

@AdamJ AdamJ commented May 26, 2026

Summary

Restores the page header section (title, icon, actions) that was accidentally hidden at all breakpoints, and adds a mobile-specific actions bar so page-level action buttons are accessible on narrow viewports.

Type of Change

  • New feature
  • Update to existing feature
  • Bug fix
  • Documentation update
  • Other (describe below)

Related Issue

Closes #

Changes Made

  • src/components/PageLayout.tsx — Added md:block to the desktop header div class so it renders on ≥768 px viewports (was permanently display:none due to bare hidden class)
  • src/components/PageLayout.tsx — Added a md:hidden actions bar that renders the actions prop below the nav on mobile, giving narrow viewports access to page-level action buttons (e.g. Add Category, Reset to Defaults) that previously never rendered

Root Cause

Commit 0130933 removed the iOS/Capacitor build and resolved a merge conflict by applying hidden to the header div without the matching md:block override. The intended class was hidden md:block — hide on mobile, show on desktop — but the md:block part was dropped. As a result the entire header section, including the actions slot, was display:none at every breakpoint, silently preventing any action button (and any sheet it triggers) from rendering on mobile.

Checklist

Documentation

  • Any notable changes added to the README.md
  • CHANGELOG.md updated accordingly
  • N/A — no README changes

General

  • Branch is up to date with main
  • No unrelated files included in this PR
  • Tested locally by invoking the npm run test, npm run lint, and npm run build

Notes for Reviewers

The mobile actions bar (md:hidden strip) only renders when the actions prop is provided and the page has a title, so pages without actions are unaffected. The strip uses border-b border-border to visually anchor it below the nav, matching the existing desktop header style.


Generated by Claude Code

The title/actions header div had `hidden` with no `md:block` override,
making it permanently invisible at all breakpoints. This caused action
buttons (e.g. Add Category, Reset to Defaults) to never render, silently
breaking any mobile sheet triggers tied to those actions.

- Add `md:block` to restore desktop header visibility
- Add a `md:hidden` actions bar below the nav for mobile so page-level
  actions are accessible on narrow viewports

https://claude.ai/code/session_01CQMMD3NwoJywWphB2woG6M
@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented May 26, 2026

Deploying timetrackerpro with  Cloudflare Pages  Cloudflare Pages

Latest commit: 4f72d23
Status: ✅  Deploy successful!
Preview URL: https://a9b20b17.timetrackerpro.pages.dev
Branch Preview URL: https://claude-mobile-sheet-action-b.timetrackerpro.pages.dev

View logs

Actions now render in both the desktop header and the mobile strip, so
getByRole throws on multiple matches. Switch to getAllByRole and assert
at least one button is present.

https://claude.ai/code/session_01CQMMD3NwoJywWphB2woG6M
@AdamJ AdamJ merged commit 6a7f367 into main May 26, 2026
3 checks passed
@AdamJ AdamJ deleted the claude/mobile-sheet-action-bug-FwgwX branch May 26, 2026 01:36
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