Repository navigation
fix(web): keep the map bar on one row between 641 and 767 px - #732
Conversation
|
Review before merge: one point to check, places that still say 640, one suggestion. Point 1 is worked out from the CSS, not measured in a browser. 1. In the new 641-767 px band a full-height ticker can run under the button rail (please check) 2. Places that still say 640
3. Suggestion |
Between 641 and 729 px the wide bar did not fit: 90 px for a guest and 76 px for a member, on a phone held sideways or in a narrow window. The narrow layout now applies up to 767 px, from one constant the bar, the ticker and the notices share. The one-row test measures 660 and 720 px as well, for both roles. Closes efiten#727 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
747841a to
29623c7
Compare
|
Pushed 29623c7 for the review, rebased on master. Per point:
Web: 764 tests, eslint, Playwright 305 passed. App: 1628 tests, eslint, build. |
Resolves the overlap with efiten#732 (narrow line 640 -> 767) and efiten#734 (hexgrid sizes, zoomfade parity): - barnarrow.js keeps efiten#725's per-control breakpoint (Export leaves below 900px) with NARROW_PX = 767; NARROW_MEDIA is built from it. - barnarrow.test.js: the stylesheet-width test accepts NARROW_MEDIA's width or a width a control leaves earlier at (Export's 900). - parity.test.js lists both zoomfade.js and hexgrid.js; web/hexgrid.js is recopied from app/src/hexgrid.js after efiten#734. - style.css and export.spec.js comments say 768 instead of 640.
🤖 I have created a release *beep* *boop* --- <details><summary>app: 1.30.0</summary> ## [1.30.0](app-v1.29.1...app-v1.30.0) (2026-09-30) ### Features * **app,web:** ease what the map shows by zoom, on one hex system ([#734](#734)) ([4c2a57b](4c2a57b)) * **app,web:** name a relay on the map the way the app does ([#733](#733)) ([a9aa01a](a9aa01a)) * **app:** send one broker to several collectors under one switch ([#722](#722)) ([8c6da30](8c6da30)) * **web:** export the repeaters heard in view as a 1200×1200 PNG ([#725](#725)) ([d6186bc](d6186bc)) ### Bug Fixes * **app,web:** hang a Discover-heard repeater's star from its own position ([#724](#724)) ([15a6ada](15a6ada)) * **app,web:** put the caret in the target picker's search when it opens ([#721](#721)) ([6bd899c](6bd899c)) * **app:** drop the float window's previous and next buttons ([#717](#717)) ([c957ff3](c957ff3)) * **app:** give the sound the playback buffer instead of the smallest ([#712](#712)) ([dee5484](dee5484)) * **app:** hide Chrome's pause on the fullscreen readout ([#715](#715)) ([836d91e](836d91e)) * **app:** keep a space under the HUD on Android ([#710](#710)) ([2754716](2754716)) * **app:** let the fullscreen readout turn with the phone ([#718](#718)) ([fae3749](fae3749)) * **app:** put the transmit pop under the receptions it sat over ([#738](#738)) ([2bfc5fa](2bfc5fa)) * **server:** keep the node registry in memory on a loop of its own ([#736](#736)) ([4f3e988](4f3e988)) * **web:** keep the map bar on one row between 641 and 767 px ([#732](#732)) ([c44dc1d](c44dc1d)) </details> <details><summary>server: 1.10.1</summary> ## [1.10.1](server-v1.10.0...server-v1.10.1) (2026-09-30) ### Bug Fixes * **server:** keep the node registry in memory on a loop of its own ([#736](#736)) ([4f3e988](4f3e988)) * **server:** read a refused frame again when the message-id decoder changes ([#737](#737)) ([8586c71](8586c71)) </details> <details><summary>web: 1.26.0</summary> ## [1.26.0](web-v1.25.1...web-v1.26.0) (2026-09-30) ### Features * **app,web:** ease what the map shows by zoom, on one hex system ([#734](#734)) ([4c2a57b](4c2a57b)) * **app,web:** name a relay on the map the way the app does ([#733](#733)) ([a9aa01a](a9aa01a)) * **app:** send one broker to several collectors under one switch ([#722](#722)) ([8c6da30](8c6da30)) * **web:** export the repeaters heard in view as a 1200×1200 PNG ([#725](#725)) ([d6186bc](d6186bc)) ### Bug Fixes * **app,web:** hang a Discover-heard repeater's star from its own position ([#724](#724)) ([15a6ada](15a6ada)) * **app,web:** put the caret in the target picker's search when it opens ([#721](#721)) ([6bd899c](6bd899c)) * **app:** drop the float window's previous and next buttons ([#717](#717)) ([c957ff3](c957ff3)) * **app:** give the sound the playback buffer instead of the smallest ([#712](#712)) ([dee5484](dee5484)) * **app:** hide Chrome's pause on the fullscreen readout ([#715](#715)) ([836d91e](836d91e)) * **app:** keep a space under the HUD on Android ([#710](#710)) ([2754716](2754716)) * **app:** let the fullscreen readout turn with the phone ([#718](#718)) ([fae3749](fae3749)) * **app:** put the transmit pop under the receptions it sat over ([#738](#738)) ([2bfc5fa](2bfc5fa)) * **server:** keep the node registry in memory on a loop of its own ([#736](#736)) ([4f3e988](4f3e988)) * **web:** keep the map bar on one row between 641 and 767 px ([#732](#732)) ([c44dc1d](c44dc1d)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Between 641 and 767 px the map now uses the phone layout, so the bar is one row of 48 px there. On master it was 90 px for a guest and 76 px for a member in that band.
Cause
The narrow bar (#561) stopped at 640 px. The wide bar only fits from 680 px with the macOS system font, and from 730 px with the wider font on the CI runner.
Change
NARROW_MEDIAinweb/barnarrow.js, whichmap.jsreads for itsmatchMedia. The four@mediarules inweb/style.cssrepeat the number.Measured
Height of
#barin px, with Verdana standing in for the CI font:Tests
e2e/barlayout.spec.js: the one-row test also measures 660 and 720 px, as a guest and as a member. Without the fix it fails at 660 px as a guest, with 90 px where 64 is the limit.e2e/ticker-place.spec.js: the clamp case moved from 720 to 800 px. At 720 px the ticker is pinned now, which has its own case.maprail.spec.jsandui.spec.js, run at 1280 px, and pass when those files run alone (83 of 83).Not in this PR
At 768 px the guest bar is still 64 px with the CI font, exactly the test's limit. That is unchanged from master.
Closes #727
🤖 Generated with Claude Code