Merge remote-tracking branch 'origin/glass-cockpit-refit'
This commit is contained in:
@@ -139,6 +139,36 @@ at exactly 777,333 after the re-snap fired). Save fires on `WM_EXITSIZEMOVE` (su
|
||||
since it writes as soon as a drag finishes) with a teardown write as backstop. This is the native
|
||||
analogue of TeslaRel410 `emulator/pod-launch`'s per-rig `--bridge-pos`/`--layout` placement args.
|
||||
|
||||
### `,noframe` — per-window chrome removal (2026-07-29) [T2 live]
|
||||
|
||||
Append it to a window's line and that window comes up with no title bar or border (`WS_POPUP`) —
|
||||
for a multi-monitor wall where the chrome is just noise:
|
||||
|
||||
```
|
||||
Heat MFD=1920,0,657,539,noframe
|
||||
```
|
||||
|
||||
**The workflow is deliberately two-stage, and this is the last step:** run with
|
||||
`BT_GLASS_LAYOUT=save` and drag the windows where you want them (they have title bars, so it is
|
||||
the normal sticky-layout flow) → quit → hand-edit the cfg and append `,noframe` to the ones you
|
||||
want bare. From then on those windows are frameless **and pinned** — with no caption there is
|
||||
nothing to drag them by, which is the point: the arrangement is finished. Delete the flag to get
|
||||
the frame back.
|
||||
|
||||
Options are comma-separated after the numbers and **unknown ones are ignored**, so an older build
|
||||
reading a newer file loses the option but never the line — the `bindings.txt` grammar rule
|
||||
applied here.
|
||||
|
||||
The one thing it must not do is eat itself: **`SaveLayout` rewrites the WHOLE file** (any later
|
||||
drag of a framed window triggers it), so it writes the flag back for every window carrying it.
|
||||
And the flag is read BEFORE frame sizing (a `LoadLayout(quiet)` pre-pass), because
|
||||
`AdjustWindowRect` — and therefore `ComputeLayout`'s ring placement — depends on whether a window
|
||||
carries chrome.
|
||||
|
||||
Verified live: two flagged windows came up caption-less while the other five kept theirs, a click
|
||||
still dispatched on the frameless radar (`CLICK 'Secondary / Radar' addr=0x18`), and a
|
||||
finished-drag save round-tripped both flags back into the file.
|
||||
|
||||
**Verified 2026-07-26 [T2]:** `BT_RIOBANK_LOG=1` dumps every bank's rects;
|
||||
`scratchpad/checkbank.py` reports the per-bank census and proves no address is SHADOWED (has a
|
||||
point no earlier button covers); `scratchpad/clickbank.py` then posts a real click at every
|
||||
|
||||
Reference in New Issue
Block a user