Skip to content

feat: segmented section tracks in the menu bar and collapsible sidebar groups - #351

Merged
timdegroot1996 merged 2 commits into
mainfrom
feat/nav-segmented-track-and-collapsible-sidebar
Sep 25, 2026
Merged

timdegroot1996 merged 2 commits into
mainfrom
feat/nav-segmented-track-and-collapsible-sidebar

Conversation

@timdegroot1996

Copy link
Copy Markdown
Collaborator

What

The section sub-items of a page no longer sit in the menu bar as italic siblings of the pages themselves. Each page that owns sections now carries them in a rounded track placed directly after it, with the section in view marked by a filled pill, so it is clear at a glance which page a section belongs to.

Three pages have a track:

  • Overview — one item per project bar, at most three at a time (the section in view plus its neighbours), following the project bar settings.
  • Dashboard — Runs, Suites, Tests, Keywords. Sections you hide leave the track; in Unified Mode the whole track disappears.
  • Tables — section navigation for the first time: one item per table that is shown, in the order the tables are laid out in, rebuilt when a table is hidden, shown or moved.

In the responsive sidebar the pages become collapsible groups: the page you are on is expanded, a chevron folds its sections away, and opening another page's group navigates there — section items only exist for the page that is open.

The tracks step aside while the layout is being edited, where the centred undo/redo buttons would otherwise overlap them.

Bug fixed along the way

The overview bar switches (projects by Name, projects by Tag, latest runs, total stats) changed which bars exist but never rebuilt the section buttons, so the sub-menu kept items for bars that had been switched off — those items scrolled nowhere — and missed the ones that appeared. The four handlers now rebuild the track, and the rebuild drops buttons whose section is gone.

Notes

  • No new CLI flag, setting, endpoint or stored state. Expand/collapse state in the sidebar is derived from the open page, so there is no new settings key.
  • The <i> wrappers around the sub-items are gone; the track carries that signal now. Every element id is unchanged.
  • Five new colour tokens (--color-on-highlight, --color-highlight-tint, --color-track-bg, --color-track-border, --color-menu-hover-bg). The last one also fixes a sidebar hover that was a white 6% wash, invisible in light mode.
  • .nav-track needs align-self: center — the navbar row stretches its flex items, which otherwise makes the track fill the bar top to bottom.

Tests

  • 8 new Robot tests and 8 new keywords across 02_overview, 03_dashboard, 05_tables and 08_layout, covering track contents per page, scroll-to-section with the active pill, the sidebar groups, the layout-edit behaviour, and a regression test for the bar-settings bug. All DOM-level, so no new reference screenshots.
  • Open Settings Tab / Apply Settings JSON now wait for Bootstrap's shown.bs.modal; they could read an empty JSON text area under load.
  • Full Robot suite 111/111 in Docker, JS 300/300, Python 403/403.

Docs

docs/customization.md section 7 documents the tracks and the sidebar groups.

🤖 Generated with Claude Code

timdegroot1996 and others added 2 commits September 25, 2026 00:48
…r groups

The section sub-items of a page no longer sit in the menu bar as italic
siblings of the pages themselves. Each page that owns sections now carries
them in a rounded track placed directly after it, with the section in view
marked by a filled pill, so it is clear at a glance which page a section
belongs to.

Three pages have a track: Overview (its project bars, at most three at a
time), Dashboard (Runs, Suites, Tests and Keywords) and Tables, which gets
section navigation for the first time - one item per table that is shown,
following the order the tables are laid out in. The tracks step aside while
the layout is being edited, where the centred undo/redo buttons would
otherwise overlap them.

In the responsive sidebar the pages become collapsible groups: the page you
are on is expanded, a chevron folds its sections away, and opening another
page's group navigates there, since section items only exist for the page
that is open.

Also fixes a pre-existing bug: the overview bar switches (projects by Name,
projects by Tag, latest runs, total stats) changed which bars exist but never
rebuilt the section buttons, so the sub-menu kept items for bars that had been
switched off and missed the ones that appeared.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…ebar

Open Settings Tab was fixed independently on both sides for the same flake.
Keeps main's wait, which also requires the opacity to be settled and the
Bootstrap transition to be finished, where this branch only waited for the
.show class that Bootstrap already adds when the transition starts.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@timdegroot1996
timdegroot1996 merged commit d909356 into main Sep 25, 2026
3 checks passed
@timdegroot1996 timdegroot1996 linked an issue Sep 25, 2026 that may be closed by this pull request
@timdegroot1996 timdegroot1996 mentioned this pull request Sep 26, 2026
@timdegroot1996
timdegroot1996 deleted the feat/nav-segmented-track-and-collapsible-sidebar branch September 26, 2026 15:58
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.

[Improvement] Redesign the menu

1 participant