Improve "show/hide specific application" to work with multiple desktops -- either add "Move to current desktop before show" option --OR-- allow adding "before/after hide" / "before/after show" action(s) to this action

Hi Andreas,

// Small EXAMPLE of what I mean:

  • Setup in BetterTouch the Keyboard shortcut LEFT-OPTION + S (s like Shell) and assign it to the action "Show/Hide specific app" and chose Terminal
  • Imagine multiple desktops.
  • Imagine Terminal options - "assign to" is set to "none" (the default).
  • You trigger the "show/hide" action and the terminal get's (started and) shown on desktop A.
  • Then you switch to desktop B.
  • If you now trigger the "show/hide" action again Mission Control will switch to the desktop A to show the Terminal there. But This to me is an unwanted side-effect. As I chose the action "show/hide app" this should not implicate a desktop switch.

// The same EXAMPLE -- but with "assign to All desktops"

As a workaround you can set the option on the icon to "Assign to ALL DESKOPS" ... but then again this is not what I want actually, because it means:

  • I am on Desktop A, trigger the show/hide action and the Terminal appears.
  • Now if I switch to Desktop B I don't want to see the Terminal there.
  • And the Show on all Desktops causes actually an ugly flickering when you switch to Desktop B.
  • And also when you switch to Desktop B and there is another app then the Terminal actually does not show up on-top there...

So there is really no point in the "assign to ALL DESKOPS" option of the MacOSX DOCK.

// As a solution I thought about two things:

  • A straight forward explicit option "move window to current desktop before show" for the action "show/hide specific application" could be a solution that also does the trick.

  • Or alternatively something more universal which would allow a lot more magic down the road: The ability to add to the "Show/Hide specific app" action a (list of) "before show" and/or "before hide" actions.

// Some more info on my usecase:

I work with multiple desktops and on all of them from time to time need to quickly do something in shell. Hence I would like to show/hide the Terminal app with a keyboard shortcut.

If you work with multiple desktops then usually you want the mission-control option "when switching to an application, switch to a space with open windows for the application" ... because otherwise the macosx task switcher (CMD + TAB) won't work as expected anymore.

But if you have this option then unfortunately the current BBT's implementation of the action "show/hide specific application" switches also desktops ... which is a (likely in most cases) unwanted side-effect... as the action does not talk about changing desktops... and there are other actions for that.

Hence my idea to allow "sub-actions" for this action: "pre-show" and "pre-hide" <<< this would be the most flexible solution that I see.

Or is there an even better solution maybe already possible that I oversaw? (possible ! :))

Thanks a lot for any hint!


@Andreas_Hegenberg: Would be really nice to have your feedback on this one. This is still very annoying for me. Do you have any solution to show/hide with multiple desktops ? Maybe I missed something? Thanks a lot in advance for any hint.