Skip to content

fix(ui): align filter-bar heights and compact MESH LIVE panel#1182

Open
efiten wants to merge 2 commits into
Kpa-clawbot:masterfrom
efiten:fix/ui-filterbar-live-panel
Open

fix(ui): align filter-bar heights and compact MESH LIVE panel#1182
efiten wants to merge 2 commits into
Kpa-clawbot:masterfrom
efiten:fix/ui-filterbar-live-panel

Conversation

@efiten
Copy link
Copy Markdown
Contributor

@efiten efiten commented May 9, 2026

Summary

  • Filter bar heights: .btn and .col-toggle-btn carried min-height:48px from the WCAG touch-target rule, making buttons like Group by Hash, ★ My Nodes, Columns ▾, and text inputs visibly taller than the multi-select-trigger / region-dropdown-trigger controls (which don't carry .btn and were already correct at 34px). Fix adds min-height:34px overrides to .filter-bar .btn, .filter-group .btn, .filter-bar .col-toggle-btn, and .filter-bar input, .filter-bar select so the entire filter bar renders at a uniform 34px on desktop.

  • MESH LIVE panel: .live-overlay sets flex-direction:column on all overlay panels; .live-header did not override this. With #liveAreaFilter populated (when areas are configured), the panel stacked 4 rows — title, stats, toggles, area filter — consuming ~⅓ of viewport height. Switch .live-header to flex-direction:row; flex-wrap:wrap, give .live-toggles flex:0 0 100% to force it to its own line, and move #liveAreaFilter inside .live-toggles so the area dropdown is inline with the other controls. Panel shrinks from 4 rows to 2 rows.

Test plan

  • Packets page filter bar: Filters ▾, text inputs, All Observers, All Types, Group by Hash, ★ My Nodes, Columns ▾, Hex Paths all render at uniform ~34px height on desktop
  • Mobile (≤767px): filter bar touch targets unaffected (mobile media query still authoritative)
  • Live page: MESH LIVE panel occupies 2 rows (title+stats / toggles) instead of 4
  • Live page: Area: All ▾ appears inline in the toggles row when areas are configured; panel hides the area control entirely when no areas are configured (existing behavior)
  • Audio controls still appear correctly when the Audio toggle is checked

🤖 Generated with Claude Code

efiten and others added 2 commits May 9, 2026 18:00
.btn and .col-toggle-btn carry min-height:48px from the WCAG touch-target
rule, overriding the explicit height:34px on .filter-bar .btn. This made
buttons like 'Group by Hash', '★ My Nodes', and 'Columns ▾' visibly taller
than the multi-select-trigger buttons ('All Observers', 'All Regions') which
don't carry the .btn class and were already correct at 34px.

Add min-height:34px to .filter-bar .btn, .filter-group .btn, and
.filter-bar .col-toggle-btn. Touch targets unchanged on mobile (≤767px
media query remains authoritative there).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
.live-overlay sets flex-direction:column on all overlay panels, but
.live-header did not override it. With the new #liveAreaFilter child
visible (populated once areas are configured), the panel stacked 4 rows:
title, stats, toggles, area filter — taking ~1/3 of viewport height.

Switch .live-header to flex-direction:row with flex-wrap:wrap so title
and stats share the first line. Give .live-toggles flex:0 0 100% to
force it to a second line. Move #liveAreaFilter inside .live-toggles
so the area dropdown is inline with the other controls, eliminating the
standalone fourth row. Audio controls get flex:0 0 100% so they still
span a full row when shown.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.

1 participant