Skip to content

Slide the phone bottom bar away while reading down a page - #307

Merged
SmirnovaOyama merged 1 commit into
mainfrom
claude/project-thread-vfltu5
Nov 11, 2026
Merged

SmirnovaOyama merged 1 commit into
mainfrom
claude/project-thread-vfltu5

Conversation

@SmirnovaOyama

@SmirnovaOyama SmirnovaOyama commented Nov 11, 2026 •

Copy link
Copy Markdown
Collaborator

Requested by Аня · project thread

What changes

On a phone the bottom bar sat over long pages such as the calibration guide. Now it slides down out of view when you scroll down, and comes back when:

  • you scroll up a little (24px of travel, so a resting finger does not make it flicker)
  • you are near the top of the page or reach its end
  • you open another page
  • keyboard focus is inside it

Any scroller counts, the page area or one inside it, since scroll events are caught in the capture phase. Icons (#196) are unchanged.

Motion uses the existing tokens (--duration-slow, --ease-out), no bounce. With reduced motion it fades instead of sliding.

Files

  • src/components/BottomNav.tsx: useScrollAway(pageKey) and a data-hidden attribute
  • src/styles/motion.css: the slide and the reduced motion fallback
  • src/App.tsx: passes currentView as pageKey

Checks

tsc, ESLint, Prettier and vitest (900 passed) run locally. Checked in Chromium at iPhone 13 size on 模型说明: hidden after scrolling down, back after a short scroll up and at the end of the page.


Generated with Claude Code

https://claude.ai/code/session_01PYdxvWr2QJdEqqD6VDcxfT

It comes back after a short scroll up, at the top or end of a page, on
every new page, and while it holds keyboard focus. Reduced motion fades
it instead of sliding.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PYdxvWr2QJdEqqD6VDcxfT
Copilot AI balanced review requested due to automatic review settings November 11, 2026 14:50

Copilot AI 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.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

@SmirnovaOyama SmirnovaOyama self-assigned this Nov 11, 2026
@cloudflare-workers-and-pages

Copy link
Copy Markdown

🚀 Deploying Preview to Cloudflare 🚀

Preview URL: https://claude-project-thread-vfltu5-hrt-tracker.oyamasmirnona.workers.dev (commit 2b9d87b)

This URL reflects your latest Preview deployment

Preview Deployments by commit

Status Deployment URL Commit Updated (UTC) See this deployment's details
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://17c188ce-hrt-tracker.oyamasmirnona.workers.dev 2b9d87b 2026-11-11T14:52:55.981Z Visit the dashboard ↗

Copy link
Copy Markdown
Collaborator Author

Browser E2E failed before any test ran: installing Playwright's browser fonts with apt hit Temporary failure resolving 'azure.archive.ubuntu.com' on the runner, so this is not from this PR's change. I re-ran the failed job once.


Generated by Claude Code

Copy link
Copy Markdown
Collaborator Author

The re-run of Browser E2E failed the same way, before any test ran (apt could not resolve azure.archive.ubuntu.com while installing Playwright's fonts). I ran the full Playwright suite locally on this head instead: 26 passed. The suite uses a 1280px desktop viewport, where the bottom bar is hidden by md:hidden, so this change cannot affect it.


Generated by Claude Code

@SmirnovaOyama
SmirnovaOyama merged commit c748b53 into main Nov 11, 2026
7 of 9 checks passed
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.

3 participants