Hey everyone...I'm new to KM and need help.
I'm running MacOS 14.1 and trying to create keyboard shortcuts to bring different VMs running full screen in Parallels up as active window.
For example: I'm running three Win 11 VM's named Tinkywoo, Tinkyheal, and Tinkytoo. When each VM is running in full screen you can see their respective names. I want to jump to specific VM's by assigning a keyboard macro to each VM based on the name of the VM window.
I was able to get it to work with 1 but not the other two. Here's what it looked like:
Any suggestions how I can get this to work?
As a first test, what happens if the windows aren't full screen—does it work if each is in a normal window?
So if I do not have them full screen and I duplicate the working macro and change to the respective names it does indeed work using different keystrokes. Control+1 brings up Tinkywoo window, Control+2 brings up Tinkyheal window, and Control+3 brings up Tinkytoo window.
The moment I put each of them back into full screen mode, it no longer works. Only one of the macros will function. It appears to be the last window that was active before full screen & its respective hotkey will function but the other two will not.
I was afraid of that ... I don't think you'll be able to work around this. A window in full screen mode is, in many ways, not a window any more at all but a Space of its own. And that means normal window switching methods won't work on it.
Maybe someone can suggest a solution, but I know the only way we can do it in our app/window switching app Witch is by using the Accessibility API and a bunch of voodoo.
There still would have to be a way to identify the spaces differently, right? You can clearly see in the activity monitor they have different process names that correlate to the names of the windows, even if they aren't in "windowed mode".
There must be some way to toggle across different instances of parallels.....hmmmmm
The system can obviously identify the Spaces, but they don't provide that information in an easily usable form to developers or users. We have to get to it through a combination of two published APIs, and even then, it goes stale very rapidly and users have to switch to each space to update their list of open windows in Witch.
I assume there's a private API hiding out there somewhere that can work with Spaces directly, but we've never run into it if there is. (We couldn't use it in our app anyway, as we don't put stuff that Apple can break into paid-for software.) But even if you find such an API, it's not something that'll be usable at the Keyboard Maestro level, it's much lower than that.
I really hope I'm wrong, as I'd love to hear a solution to this, but we've not found one so far.