I'm trying to build a macro that temporarily moves every Cubase window out of the way except whichever one is currently full-screen, then puts everything back afterward — basically a "declutter" toggle so I can do a quick visual scan of my screen without floating panels in the way, then restore everything exactly as it was.
The obstacle: Cubase's VST/instrument plugin editor windows (and a few of its own panels — Edit Instrument, Automation Panel, Quantize Panel) don't behave like normal windows as far as KM is concerned:
-
%WindowName%All% and %WindowName%Front% never list them, even with one open and focused. Ordinary windows (Project window, Drum Editor, even a plain dialog like Metronome Setup) show up fine.
-
WINDOWCOUNT() and "the window with window index N" in the Manipulate a Window action never reach them either. With a plugin editor window open and focused alongside the Project window and Drum Editor, WINDOWCOUNT() reports only 2, and asking for index 3 or 4 fails outright with "failed to find window with index N."
-
Cubase's own Window ▸ Minimize All / Restore All commands don't touch them.
-
Cubase has a dedicated key command (D) that toggles plugin window visibility, and that does work, but it's a blind toggle with no way to query current state from outside KM — not something I can drive reliably from a macro without also intercepting and tracking every press of it myself, which seems fragile.
Here's the part I can't figure out: a Screen/Image condition scoped to "in the front window" correctly detects the plugin window when it's focused, and a Manipulate a Window "Move to" action targeting "the front window" successfully moves it. I confirmed this isn't a fluke — when I switch focus to the Project window instead, the same condition correctly stops matching, so it's genuinely tracking whichever window is actually frontmost, plugin editor included.
So "the front window" clearly has access to some lower-level sense of "what window is on top right now" that doesn't depend on whatever mechanism backs window naming or window indexing/counting — it can see and act on a window that's otherwise completely invisible to KM through every other addressing method I've tried. I just can't find any way to point that same mechanism at a window that isn't currently frontmost.
What I'm hoping someone can tell me: is there any KM token, function, or action that exposes that lower-level window list — something closer to what I'd expect macOS's WindowServer to report, rather than whatever higher-level list window index/count/name are apparently built on? Or any other way to select a specific non-frontmost window of an app when it doesn't register properly with Accessibility?
Happy to share the macro/screenshots if useful.