cad-editor/src/ui
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Hakan Seven 56e48b8d0f feat(ribbon): collapse overflowing panels to flyout buttons, anchor dropdowns to their widget
Third stage of the adaptive tool area (shrink -> compact -> collapse).
When even the compact panels don't fit, DensitySwap picks a new
CollapsePanels widget that keeps a left prefix of panels inline and
collapses the rest to buttons; clicking a button opens the full panel as
an overlay flyout anchored below it (closes on outside press, mirroring
color_select's Floating).

A collapsed panel's button shows a live representative tool — the panel's
last-used tool (tracked per panel in Ribbon::note_panel_tool on every
tool click), defaulting to its first — rendered as a large icon. To
support this, render_small now also renders Large* items small and
render_large now renders plain Tool/Dropdown items large. Large dropdowns
render as icon + label + a bottom arrow strip via a shared
render_large_dropdown helper, used in both the full ribbon and collapsed
panels.

Ribbon dropdowns (tool dropdowns + undo/redo history) now anchor their
overlay directly below their widget at any size: a transparent PosReport
wrapper records each dropdown button's screen bounds into a thread-local
map on draw, and the overlays read it via Ribbon::dd_anchor instead of the
layout-estimating compute_*_left helpers.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 18:04:55 +03:00
..
popup fix(ui): anchor the OSNAP popup by its bottom-left corner 2026-07-05 15:09:28 +03:00
ribbon feat(ribbon): collapse overflowing panels to flyout buttons, anchor dropdowns to their widget 2026-07-05 18:04:55 +03:00
statusbar feat(ui): flex-wrap the ribbon top bar and status bar when narrow 2026-07-05 16:17:44 +03:00
style fix(textstyle): live-update style manager preview (#102) 2026-06-29 17:29:04 +03:00
window feat(layers): alphabetical default order + scroll to a new layer 2026-07-04 22:28:07 +03:00
color_select.rs chore: clear compiler warnings 2026-06-18 21:18:09 +03:00
command_line.rs feat(plugin): surface loaded plugin commands in command-line autocomplete 2026-07-04 23:01:53 +03:00
icons.rs feat(ui): replace app-menu logo with a quick-access file toolbar 2026-07-03 09:51:49 +03:00
mod.rs feat(ui): flex-wrap the ribbon top bar and status bar when narrow 2026-07-05 16:17:44 +03:00
modal.rs fix(web): render UI icons as SVG instead of font glyphs 2026-06-18 12:29:32 +03:00
overlay.rs feat(snap): mark the parallel reference line + toggle it off on re-hover 2026-07-05 14:50:33 +03:00
properties.rs feat(properties): make read-only values selectable text instead of click-copy 2026-07-03 08:14:37 +03:00
side_toolbar.rs feat(ui): right-edge side toolbar; drop the paper-space ribbon tab 2026-06-12 02:07:26 +03:00
text_util.rs feat(ui): elide overflowing text, tooltip full layer name 2026-06-09 19:04:18 +03:00
wrap_bar.rs feat(ribbon): collapse overflowing panels to flyout buttons, anchor dropdowns to their widget 2026-07-05 18:04:55 +03:00