mirror of
https://github.com/storytold/lightcraft.git
synced 2026-10-28 03:57:57 -06:00
MENU-BAR: a scrolled menu draws no scrollbar over its rows (#691)
A menu taller than the room under the menu bar scrolls inside an egui ScrollArea whose floating scrollbar is drawn over the rows' right edge, where the shortcut text ends. At 1.0x the 2-point handle grazes the last glyph; at 1.75x the bar is in its wide hovered state with a semi-opaque background and hides the last character of every shortcut, which reads as clipping. The scroll content, its clip and the rows are the level's width in both modes (instrumented), so nothing else needs to move: the scroll area hides its bar. The up/down strips, the wheel and dragging were already the designed ways to scroll a menu, like native menus; the native macOS menu bar does not go through this code. Test: tests_menubar::a_scrolled_menu_draws_no_scrollbar_over_its_shortcuts (a 700 pt and a 1400 pt window: no tall narrow rectangle along the level's right edge, equal widths), via a new HeadlessView::painted_shapes; fails on main with the bar's track [512, 59]-[514, 660] and handle.
This commit is contained in:
+1
-1
@@ -544,7 +544,7 @@ visible menu bar yet: the menu model is only exposed through the control channel
|
||||
|
||||
| Id | Feature | Tier | Status | Evidence | Missing / notes |
|
||||
|---|---|---|---|---|---|
|
||||
| MENU-BAR | Menu bar rendering | P1 | ✅ | `crates/ui-egui/src/menubar.rs`, `apps/lightcraft/src/native_menu.rs` | native macOS menu bar (muda) with live labels/enabled/checked; in-window menus on web/Windows/Linux (with one menu open, the pointer on another title switches to it, as in native menu bars); ⌫ and X stay egui-handled (contextual), so they show no key in the native menu |
|
||||
| MENU-BAR | Menu bar rendering | P1 | ✅ | `crates/ui-egui/src/menubar.rs`, `apps/lightcraft/src/native_menu.rs` | native macOS menu bar (muda) with live labels/enabled/checked; in-window menus on web/Windows/Linux (with one menu open, the pointer on another title switches to it, as in native menu bars); ⌫ and X stay egui-handled (contextual), so they show no key in the native menu; a scrolled menu draws no scrollbar over its rows: the ▲ / ▼ strips, the wheel and dragging scroll it (issue #691: egui's floating bar hid the shortcut text's last character; `crates/ui-egui/src/tests_menubar.rs`) |
|
||||
| MENU-APP-ABOUT | About | P2 | ✅ | `cmd:app.about` | |
|
||||
| MENU-APP-SETTINGS | Settings… | P0 | ✅ | `cmd:app.settings` | app menu on macOS, Edit menu elsewhere |
|
||||
| MENU-APP-UPDATES | Check for updates | P2 | ⬜ | | |
|
||||
|
||||
Reference in New Issue
Block a user