TS: Six feature requests

I just purchased TotalSpaces after trying it a few days, and really love it. I have five monitors with 18 Spaces/Desktops configured across them, and I love many of the new abilities that TS adds. Being able to remove the animation is improving the fluidity of the UI, and I really love the All-Desktops Expose so I can see every window I have open. Single Desktop Expose is also great, being faster and simpler than Mission Control.

I have a few feature requests for things that would make TotalSpaces even more awesome. I don’t know if you’d prefer each in their own thread, but I thought I’d start putting them all in one to avoid spamming the forum. There’s quite a few, but only because TS is so unique and awesome in what it does already that I can’t help but want to try and get even more out of it! :slight_smile:

I hope that most would be quite simple to implement, mostly being UI work and simple modifications of current behaviour rather than major changes.

A. Apps with assigned desktops: Add a checkbox, "Only apply on App launch"

I like the idea of this feature, but I don’t like that it constantly moves any window for the app at all times. It means I can’t change my mind and decide to move an app to a different Desktop. It also means that apps with multiple windows must have all windows on the same Desktop.

With my request, TS would only move the app to the listed Desktop when the app first launches. Once it is running, TS leaves it alone and does not move its windows. This would be much more useful for me.

B. Apps with assigned desktops: allow per-window-name filtering

Even better would be the ability to apply more advanced filters than just App Name. It would allow me to enter both an App Name, and a Window Name with glob and/or regex accepted.

For example, I could configure this:
App = iTerm 2 ; Window Name = *Monitoring* ; Desktop = 12 ; On Window Creation = Yes
to ensure iTerm 2 windows that use the profile called ‘Monitoring’ are always on Desktop 12, unless I move them after they are first created.

As you see I’ve also specified another checkbox, “On Window Creation”. I’d again want to be able to specify that windows are only moved when they’re created, not continously, and “On App Launch” wouldn’t work for this case because the window(s) may well be created after the app launches.

C. Shortcuts to move current window to specific Desktop.

TS already has the ability to move a window to the Desktop left/right/up/down. It’d be awesome if there was also a way to send a window to a specific Desktop.

This could be quite easily added on the Layout screen - there’s already a shortcut there for switching to a specific Desktop. Below that could be added another shortcut box for “Move current window to this Desktop”, allowing any number of these actions to be configured to any specific Desktop.

D. Locked-together Desktops: configure a list of connected Desktops.

When two Desktops are locked/connected together, TotalSpaces ensures that whenever one of them is visible, so is the other.

Example: When I run Photoshop I have it on Desktop 3 on monitor 1. At the same time I usually also have a browser window open on Desktop 7, which is on monitor 3. Therefore I would like to configure that Desktop 3 and Desktop 7 are “locked” or “connected”. Whenever I switch to Desktop 3 (by any means), Desktop 7 is also switched to, if it is not already visible.

Ideally this would allow chains of connections, ie Desktop 3 to Desktop 7; Desktop 7 to Desktop 14; etc. Or it could be implemented with “Sets”, ie create a set in which any number of Desktops are specified, and TS ensures that all are always visible at the same time.

Ideally there would also be an easy way to enable/disable the connection/sets via Menu Bar - in the above example I might only want Desktops 3 and 7 connected when I am using Photoshop. When I close PS, I would want to disable that Connection/Set until I next use it.

This would obviously only be useful in “Displays have separate spaces” mode.

E. Desktop/Space Task Switcher overlay

A new UI overlay which functions like an App or Window switcher, except it’s for Desktops.

Configurable to either show only Desktops on the current monitor, or all Desktops (ideally two separate shortcuts allowed, one for each mode)

When activated, a list containing a small picture of each Desktop is displayed in the middle of the current screen, allowing cycling through and selecting one to switch to.

Basically this is a much smaller version of the Overview Grid, but overlayed over the middle of the current monitor and allowing cycling through like in an App/Window switcher.

I would assign this a shortcut like Command-Option-Tab, and ideally it would allow me to hold Command-Option while repeatedly pressing Tab to move through the list, then releasing the keys (or hitting enter) would switch to the highlighted Desktop.

It’d be especially great if it had an option for “show Desktops in most-recent-used-order”, again like a window switcher. This would then be a supercharged version of the “switch to last Desktop” feature that TS already has.

Here’s a mockup showing what it might look like.

I would use this in preference to the Overlay Grid/Expose because in cases where I know which space I want to switch to, it would be faster to use - allowing easy keyboard selection of any space (not just those on current monitor), and only creating an overlay rather than animating the whole screen. Again, exactly the same use case as an app/window switcher but without needing to always know which window is associated with a particular desktop (or finding said window in a potentially long list.)

F. Show window on multiple Desktops .

I’m putting this last as I don’t know how much work it is, or if it’s even feasible.

Windows 10 allows any window to be configured as visible on all Desktops on that monitor. It would be really nice to have a similar feature in macOS.

Specifically, it would be very useful to be able to configure a given window as either being visible on all Desktops on one monitor (as per Windows 10), and/or visible on a list of specific Desktops.

I have a few monitoring windows that it would be helpful to be able to see at all times, without having to dedicate an entire monitor to them. I’d like to be able to put them in a corner of a screen and have them stay visible as I switch Desktops on that screen.

Ideally it would be possible to choose any window at runtime in the TotalSpaces Preferences UI, rather than setting up rules ahead of time. It wouldn’t be useful for me if it had to be on a per-app basis, I’d want to be able to choose a specific window from a list ofopen windows and have only that one be visible across multiple Desktops, until it closes (based on its WindowID or whatever unique identifier it has).

Thanks again for this great app. Hope that’s not too many requests to give in one go. I realise you’re not going to get to them all at once, if at all! As I say, the volume of requests is purely because TS is already so awesome that I can think of a bunch more things it could do that would be very useful.

I don’t know how you handle update pricing, but if you implemented all or most of the above and called it version 3 I’d gladly buy another license/pay an upgrade fee, because it would extend the capabilities of the app significantly.