BinaryAge

App Mapping to Multiple Spaces

feature-request

#1

I would like the opportunity to map an App to more than one Space instance. I want my IDE to be started in my 3 designated Spaces at the same time at startup, or in any of the empty designated Spaces when I start the IDE during my work, after startup.


#2

I don’t know of any way to do that at the moment - it might be possible to write something that monitors all the windows in the system and make sure they go on the right set of spaces, but macOS does not support it natively.


#3

You must be maintaining a mapping table of App Name to Desktop Name, that we set up in Preferences, Apps tab. In the current situation, if I add “Visual Studio Code.app” to the Desktop (which I have been calling Spaces) PayLive Device, all is fine. But if I click on the + and add another “Visual Studio Code.app” to a new Desktop/Space called “PayLive Server”, it replaces the first one I had to “PayLive Device”.

I would like the second instance of the app to be added too.

Now that I think about it, if you are using a JSON table and the App Name is a Key and the Desktop Name is its Value, it might not be possible to do this. Unless you made a change- create a unique string value as the Key and use [App Name, Desktop Name] as the Key Value. Just a thought.


#4

You could see the table yourself, it’s in ~/Library/Preferences/com.apple.spaces.plist - it’s a mapping from the bundle id to the desktop uuid.
You could view this file in Xcode.
Because the app bindings are a dictionary, you can’t have a single bundle id mapping to more than one space.
This file is part of Apple’s spaces implementation, I don’t have any simple way to modify it to allow multiple desktops for a single app unfortunately.