Keyboard
The affordances power users navigate by. bms-cloud has 106 keybind sites, Enter-to-open grids and PREV/NEXT record walking; all three are invisible in a visual diff and impossible to apologise for once they are gone.
These must exist before a legacy screen is displaced
Release one of any displaced workflow spends its whole jarring allowance on the navigation shell. That leaves nothing for keyboard flow — so the replacement ships these first, not later.
Accelerators
.accel + data-hotkey
The accelerator is drawn on the control it fires — an underlined letter inside the label. Press the letter with nothing focused and the control is clicked. Try n, f or c now.
The key always resolves to clicking the visible control, never a separate handler — that is what keeps the shortcut and the button provably the same action. Disabled controls are skipped, and nothing fires while focus is in a field, so typing "n" in a search box stays a letter.
Underlines can be suppressed app-wide with .accels-hidden on
<html> — the shortcuts keep working. The affordance is a
preference; the binding is a contract.
Record pager
.record-pager
From any show page, walk the filtered result set without returning to the index. The legacy chrome does more than arrow — it names the next record, so you know whether to keep walking. That is why there is a slot for it.
Heinz Australia
It rides in page-heading rather than fixed chrome: the
legacy version lived in a fixed head pane, and the wide sidebar has no such pane, so the pager
travels with the title it belongs to.
Enter to open
.table-rows-linked + row-nav
Tab into the table, walk with ↑ ↓, open with Enter. Shown at the dense tier, which is what a work queue ships at.
| Invoice | Customer | Status | Amount |
|---|---|---|---|
| INV-88214 | Heinz Australia | Released | 12,480.00 |
| INV-88215 | Kellogg's ANZ | Pending | 3,905.50 |
| INV-88216 | Simplot Foods | Released | 27,110.25 |
| INV-88217 | Goodman Fielder | On hold | 880.00 |