Make the background FX drain visible: a busy cursor over the panel and a footer readout that names its direction, driven off fxReclaimActivity
This commit is contained in:
@@ -62,6 +62,18 @@ live in `shell/bank_ops`, a sibling directory, not here.
|
||||
|
||||
- **No external UI framework.** iPlug2 / JUCE / VSTGUI are rejected (DS-1). LICE +
|
||||
reused WDL pieces are the toolkit; reject any path that pulls in a new framework.
|
||||
- **The FX-drain indicator asks `fxReclaimActivity()` and decides nothing itself.**
|
||||
`panel_input` polls it once per tick into `g_panel.fxDrain`; the footer readout and the
|
||||
`WM_SETCURSOR` busy cursor both read that cached state, so paint and cursor cannot
|
||||
disagree within a tick. The transport gate, the park debounce and the open-undo-block
|
||||
stand-off are all already folded into that answer, against the reclaim queue's own pinned
|
||||
project — do not re-evaluate any of them here, and never drive this off `fxReclaimPending`
|
||||
(true throughout the debounce, when only the opposite direction is eligible).
|
||||
The indicator reaches only our own window: over REAPER's arrange or mixer the cursor is
|
||||
REAPER's, and the SDK exposes nothing host-wide. A global `SetSystemCursor` or a message
|
||||
hook would reach further and is rejected — do not reintroduce either. `IDC_APPSTARTING`
|
||||
is Windows-only (SWELL ships no equivalent), so on mac/Linux the readout is the whole
|
||||
indicator.
|
||||
- **No hit-test geometry in untestable shell code.** Even when reusing a WDL piece
|
||||
(e.g. a `vwnd` control for a long scroll list), layout/hit-test math stays in pure
|
||||
CTest-covered modules — do not import a WDL control's retained-mode object model
|
||||
|
||||
Reference in New Issue
Block a user