Over the years, Apple has implemented inadequate window management in MacOS in a number of ways, empowering the user by giving them the choice of which method to be frustrated by.
For example, the CMD+Tab task switcher seems natural, but it has an issue where you can select an app and it does absolutely nothing, which is both infuriating and incomprehensible. Is it ignoring me because the app is minimized? Did it send it to another desktop? I have no idea! It must be deterministic, but I'll be damned if I can figure it out. I am sure "real mac users" get it, and I'm happy for them, but poor benighted souls like me just wonder why their $2500 computer isn't doing what they're telling it to. And whatever that perfectly good reason is, there is an even more perfectly good reason to make it work the way users expect.
The Dock has the same issue with letting you click on an app, and then not bringing that app on screen, or telling me why it's ignoring my command. Both of the above patterns work better in Windows, and have worked better for decades, and Apple designers should be a little ashamed of that.
Mission Control is probably the most useful method, because it actually brings selected applications on screen (the minimum functionality you would expect). However, it does not support keyboard shortcuts for navigating and selecting an application! How is this possible? It feels like a couple story point ticket to me, yet it remains a problem after a decade. Maybe Apple stubbornly assumes everyone will use a touchpad for everything, despite them selling products without touchpads in them. For money.
The other problem with Mission Control is that it should not require your entire screen to switch apps. It feels too form-over-function to me.
I tried the newest entry, Stage Manager, for several months. It's like a cross between Mission Control and the Dock. It works well (that is, it does what it's supposed to), except it's missing the ability to change the size of the window thumbnails. It takes up quite a lot of the screen for the value it gives you. Not that being able to select a window and switch to it isn't valuable, just that that's how the Dock should already work, and Dock doesn't take up 10-15% of the screen.
Whenever I see tools like this for Mac I can't help but wonder if I am seriously missing something.
Unlike when I use Windows, I just don't use command (alt) tab on Mac. I rely almost entirely on gestures on my trackpad (three fingers swipe up to see all my windows that are not minimized).
With the added benefit of that allowing me to drag those windows to other screens/desktops right from that UI.
Is there some power user advantage I am missing out on here or is this sort of making Mac work more like Windows? On Windows I use alt tab all the time just because... I find its windows management sucks compared to Mac.
No, the joke is on us MacOS users who insist on its terrible Alt-Tab behavior instead of leaning into the gesture support.
But I do believe the gesture support has fundamental limitations:
1) you have to take your keys off the home row to render gestures. Not good!
2) gesture window switching / Exposé breaks down when you have too many windows open: the thumbnails become unrecognizably small.
3) to solve the above problem, perhaps you suggest using spaces. Well, MacOS's spaces support is also frustrating. It's impossible to turn off the animation and time lag switching between spaces! Sure, it's only a half-second, but a half-second repeated hundreds of times adds up. And spaces's interaction with alt-tab is totally broken: if you're using a given app (say Chrome), switch to another space where Chrome is also open, and then try to alt-tab back, it doesn't take you back to the last window you had open. Sad!
> I rely almost entirely on gestures on my trackpad (three fingers swipe up to see all my windows that are not minimized).
Swiping alone is unnecessarily slow so I don't do it unless I need visual assistance. I do them all though, in this order of frequency:
- Cmd+Tab for switching apps (most frequent action)
- Option+Tab (remapped) for switching windows of active app
- Three-fingers down to see all windows of current app
- Three-fingers up to see all windows (rarely used because I have too many windows open for this to be useful)
In addition I use Ctrl+{1,4} to move between different workspaces (although I sometimes use three-finger swipe left/right for this but too often I want to skip one (like going from 1 to 3) in which case swiping is annoying.
Moving windows to a different desktop/workspace I do by clicking titlebar and pressing Ctrl+{1,4}.
Relying on the "overview" (or whatever it's called) sounds convenient, but slower than what I do.
There are Mac users like myself that don't have a trackpad or touchpad. After trying the Magic Mouse when I got my Mini I reverted back to my 20 year old Microsoft optical mouse. I long for the Windows style of app switching where you can go through each window instead of the Mac style where you go through each app.
While I agree, there's some few cases where I find Alt+Tab to be superior. A small example, you are writing a PR and want to peek at the code, you can cmd+tab, look, cmd+tab again and keep typing without moving your hands from the position. So for that "peeking" it's very useful while keeping focus. I find grander gestures like three fingers up to be a lot better when I want to "context switch" though.
Now the only/big annoyance in macOS is that "closed" windows don't close the app, so you are back from a zoom meeting trying to get into the zone and you cmd+tab from code to terminal and back expecting that to work and suddenly you are greeted tabbing into Zoom, but it is closed, but it still gets in the way.
I’ve never quite gotten the appeal of Winlike alt-tab myself. Its usability rapidly degrades with the number of windows open, with the downward slope beginning at ~5 windows and curving down exponentially from there. Being that I’ve always got 10+ windows open at any given time it’s almost useless for me.
I could see some utility in a keystroke that only toggles between the two last used windows, but full-on alt-tab just doesn’t work for me.
Same for me. Trackpad is my best friend for productivity. 4-fingers up (and also bottom-left hot corner) for Mission Control, top-left hot corner for desktop, 4-finger swipe left/right between spaces.
I don't need anything more than that, and any app that offers more just becomes noise.
> Unlike when I use Windows, I just don't use command (alt) tab on Mac. I rely almost entirely on gestures on my trackpad (three fingers swipe up to see all my windows that are not minimized).
First, ⌘+Tab & Alt+Tab do different things; the latter is far superior in doing The Right Thing.
But me too, but I use the gestures because I lack Alt+Tab, not because they're better.
I do like the gesture feature, and I think, even if I had Alt+Tab, gestures would have its own place.
I also wish the catchment for resize wasn't a single pixel in macOS. In Linux, with the shortcuts, it's 1/8th the entire window. Resizing in Linux is the entire window, which is nice now that applications feel the need to invade the title bar. (I'm looking at you, browsers.)
personally I don't use the magic mouse or the touch pad (only if I work remotely and i have the macbook with me) but the magic mouse is terrible compared to normal mouse. I use a gaming mouse with a ton of macro keys. These keys do various things, most important keys are keys for switching desktops.
I use CMD+TAB prodigiously, but only to switch to the previously open thing or the second-previously open thing. If I'm looking for a certain window I use the three-finger-swipe-up, or, if using the mouse, it has a few extra programmable buttons and one of them is programmed to do that.
It feels like CMD+TAB was designed to be used for this purpose and not for the more general ersatz 'open an application I know is currently running' mode.
But, hey, if you _do_ use it for that, this Witch window switcher seems like a great idea. More power to you!
The nice thing about macOS is that there are several equally effective paradigms for window management. For example, you use trackpad gestures for Mission Control as your primary switcher, whereas I use Command+Tab and only use Mission Control sparingly with mouse5 (no trackpad). Likewise, some people use a visible Dock, but I've never seen the point of it.
The problem is MacOs’ window switching behavior when using alt-tab and alt-`. The one switches to the most recently used other software, the other cycles through the windows of the same software.
Now imagine u have 10 terminal windows and 3 chrome windows open. And you switch back and forth between two or three of these windows. In Mac Os you cant really do that, because u have to cycle through all the windows of the same software to get back to the other terminal window youre working on.
And thats why people use non keyboard methods for switching windows, which sux,
I hate Windows, but I also hate Mac Os for its dumb opiniated design choices that after 20 years theres still no option for fixing, so u need to pay 20$ for some tools that give you sane usability (also the the need for better touch tool to get proper tap to drag without a release delay).
And the worst is the fanboys that act like Mac Os’ wonky choices are a necessity because I’m holding wrong and they never had a problem with it.
> I rely almost entirely on gestures on my trackpad (three fingers swipe up to see all my windows that are not minimized).
Is a docked setup just not a thing for most Mac users?
I almost never want to use my laptop as a laptop—the keyboard is too small, looking down at the screen is bad for my neck, and multiple monitors is addictive. But as soon as I set the laptop aside and break out the external keyboard and mouse, Mac's window manager becomes completely unusable. I'm finding that the magic mouse doesn't help much because it's crippled compared to the trackpad and is horribly unergonomic. Hence the external tools to make the keyboard actually useful.
I'm usually docked and using a model-m style keyboard and a standard two button + scroll-wheel mouse. So such gestures aren't really convenient for me. Switching apps is really painful, as I tend to have a few browser windows with different profiles, as well as a couple projects on VS Code open. It's kind of ugly imo.
I wouldn't mind if I could trigger the same gesture (as three finger swipe) with cmd or cmd+ctrl with the scroll wheel.
What exactly am I missing with gestures on Windows vs macOS for this purpose? 3 finger gesture brings up my windows and allows me to drag windows to different workspaces. 4 finger swipes left and right allows me to switch workspaces.
Raycast, a drop in replacement for spotlight with support for plugins, also has support for searching windows by title. I rarely even use command tab anymore.
Contexts is amazing, being able to search window titles is how I do almost all my navigation between apps now days, especially when I have code editors open to multiple (4+) different projects.
I have an equivalent installed on Windows (I forget its name) and it is likewise just as amazingly useful.
I switched from KDE to Mac some months back and I'm shocked how many window management features are missing. I'm especially disappointed about the dock. I would love being able to see native window previews when hovering over an application icon. Also I would like to split the dock into the different spaces (virtual desktops). Currently the dock seems not to be considering the fact tha Mac OS supports spaces.
I still want macOS to "borrow" (Read: steal) window snapping from Windows. The mere existence of MultiView on Apple TV gives me hope that someone is at least thinking about how to implement such a system.
I've found rcmd quite useful for window switching. It lets you use the right command key plus another key to switch applications; e.g., right ⌘+s for Safari. It can also display a switcher that shows the letter associations.
It's an interesting take, but I'm not sure how this deals with multiple windows if all the demos show a primary, active window and everything else "offstage."
I don't need to just see those other windows and their contents, I want to interact with them as well, which SM doesn't seem to do.
I like Stage Manager, but I can't get it to play nicely with multiple screens and Rectangle.app. Its behavior is too unpredictable, and I'm not sure how to make it work. Do you have any tips?
I purchased witch several years ago, and my main complaint is that it takes a long time to show all my windows if there's a lot of applications windows, and this did not use to be the case. It's fine if I'm switching between windows in one application, but if I say, want to show all the windows open on my computer, it takes 3+ seconds to display the interface.
I discussed it with the Many tricks support, and apparently it's a problem with MacOS
Kind of off topic, but has tiling managers for macOS improved in the last few years? I remember I tried one solution (I can’t remember the name now) which worked OK but it was a little buggy some times. Ever since I just use the standard window manager and try to manage with cmd + tab, cmd + `, and gestures to change spaces.
The trial expires after triggering Witch 50 times, and I was only beginning to configure it. Trial should be a a day or two for me to choose if I like it or not.
I’m a big fan of the functionality of witch and have had it installed for years. But honestly I’ve just about given up on it. It keeps breaking. Mac OS of course keeps updating itself and very often those updates cause Witch to stop working. It seems like I used to be able to fix it just by re enabling a permission setting. (Which is fairly obnoxious that I have to do this over and over again - how many times do I have to authorize the same app?) But recently it still doesn’t work after authorizing. And now whenever I hit the magic key combo the security dialog comes up and I can’t fix it. At this point it just doesn’t seem worth the hassle.
I'll just quickly plug Kanel ([link redacted]) which I use to generate Typescript types from a Postgres database. I agree with the author to think migrations-first, though I prefer to write them in SQL to ensure I can utilize all the powerful features that Postgres has to offer.
With it, I only get types for the tables and views etc., so any join will be untyped if done client-side. This is still a big win in my opinion, and I much prefer it to normal ORM's.
Myself; I’ve been using the “Windows” feature in Raycast; I highly recommend it. Extremely intuitive. I assign it to a shortcut and then use it to automatically list all the open windows I have and I just search through them to open the one I want
Witch looks awesome, and I think has a killer feature I've been looking for for a while on linux (slightly off topic).
I use rofi on linux to surface a dialog that allows me to execute programs, surface an X window, or change to a different tmux session. Rofi natively supports the first two, the tmux pane/session switcher being a little 10 line extension I wrote in bash.
I love rofi and the ability to do this, but there is a 'white whale' in this workflow setup that I have not been able to crack: A rofi dialog that displays and surfaces browser tabs. I have fought with chromium dev mode/flags/options on several occasions trying to plumb together something like this, but cannot for the life of me figure it out; apparently chromium does not really want you to get a list of tabs from outside the browser.
Has anyone with a similar workflow found a solution for this? I'd be willing to switch browsers, or try anything really.
[+] [-] karaterobot|2 years ago|reply
For example, the CMD+Tab task switcher seems natural, but it has an issue where you can select an app and it does absolutely nothing, which is both infuriating and incomprehensible. Is it ignoring me because the app is minimized? Did it send it to another desktop? I have no idea! It must be deterministic, but I'll be damned if I can figure it out. I am sure "real mac users" get it, and I'm happy for them, but poor benighted souls like me just wonder why their $2500 computer isn't doing what they're telling it to. And whatever that perfectly good reason is, there is an even more perfectly good reason to make it work the way users expect.
The Dock has the same issue with letting you click on an app, and then not bringing that app on screen, or telling me why it's ignoring my command. Both of the above patterns work better in Windows, and have worked better for decades, and Apple designers should be a little ashamed of that.
Mission Control is probably the most useful method, because it actually brings selected applications on screen (the minimum functionality you would expect). However, it does not support keyboard shortcuts for navigating and selecting an application! How is this possible? It feels like a couple story point ticket to me, yet it remains a problem after a decade. Maybe Apple stubbornly assumes everyone will use a touchpad for everything, despite them selling products without touchpads in them. For money.
The other problem with Mission Control is that it should not require your entire screen to switch apps. It feels too form-over-function to me.
I tried the newest entry, Stage Manager, for several months. It's like a cross between Mission Control and the Dock. It works well (that is, it does what it's supposed to), except it's missing the ability to change the size of the window thumbnails. It takes up quite a lot of the screen for the value it gives you. Not that being able to select a window and switch to it isn't valuable, just that that's how the Dock should already work, and Dock doesn't take up 10-15% of the screen.
[+] [-] nerdjon|2 years ago|reply
Unlike when I use Windows, I just don't use command (alt) tab on Mac. I rely almost entirely on gestures on my trackpad (three fingers swipe up to see all my windows that are not minimized).
With the added benefit of that allowing me to drag those windows to other screens/desktops right from that UI.
Is there some power user advantage I am missing out on here or is this sort of making Mac work more like Windows? On Windows I use alt tab all the time just because... I find its windows management sucks compared to Mac.
[+] [-] mrbabbage|2 years ago|reply
But I do believe the gesture support has fundamental limitations:
1) you have to take your keys off the home row to render gestures. Not good!
2) gesture window switching / Exposé breaks down when you have too many windows open: the thumbnails become unrecognizably small.
3) to solve the above problem, perhaps you suggest using spaces. Well, MacOS's spaces support is also frustrating. It's impossible to turn off the animation and time lag switching between spaces! Sure, it's only a half-second, but a half-second repeated hundreds of times adds up. And spaces's interaction with alt-tab is totally broken: if you're using a given app (say Chrome), switch to another space where Chrome is also open, and then try to alt-tab back, it doesn't take you back to the last window you had open. Sad!
[+] [-] dieulot|2 years ago|reply
[+] [-] spurgu|2 years ago|reply
Swiping alone is unnecessarily slow so I don't do it unless I need visual assistance. I do them all though, in this order of frequency:
- Cmd+Tab for switching apps (most frequent action)
- Option+Tab (remapped) for switching windows of active app
- Three-fingers down to see all windows of current app
- Three-fingers up to see all windows (rarely used because I have too many windows open for this to be useful)
In addition I use Ctrl+{1,4} to move between different workspaces (although I sometimes use three-finger swipe left/right for this but too often I want to skip one (like going from 1 to 3) in which case swiping is annoying.
Moving windows to a different desktop/workspace I do by clicking titlebar and pressing Ctrl+{1,4}.
Relying on the "overview" (or whatever it's called) sounds convenient, but slower than what I do.
[+] [-] yakk0|2 years ago|reply
[+] [-] forgotmypw17|2 years ago|reply
[+] [-] franciscop|2 years ago|reply
Now the only/big annoyance in macOS is that "closed" windows don't close the app, so you are back from a zoom meeting trying to get into the zone and you cmd+tab from code to terminal and back expecting that to work and suddenly you are greeted tabbing into Zoom, but it is closed, but it still gets in the way.
[+] [-] kitsunesoba|2 years ago|reply
I could see some utility in a keystroke that only toggles between the two last used windows, but full-on alt-tab just doesn’t work for me.
[+] [-] nbar1|2 years ago|reply
I don't need anything more than that, and any app that offers more just becomes noise.
[+] [-] deathanatos|2 years ago|reply
First, ⌘+Tab & Alt+Tab do different things; the latter is far superior in doing The Right Thing.
But me too, but I use the gestures because I lack Alt+Tab, not because they're better.
I do like the gesture feature, and I think, even if I had Alt+Tab, gestures would have its own place.
I also wish the catchment for resize wasn't a single pixel in macOS. In Linux, with the shortcuts, it's 1/8th the entire window. Resizing in Linux is the entire window, which is nice now that applications feel the need to invade the title bar. (I'm looking at you, browsers.)
[+] [-] qxxx|2 years ago|reply
[+] [-] rzwitserloot|2 years ago|reply
It feels like CMD+TAB was designed to be used for this purpose and not for the more general ersatz 'open an application I know is currently running' mode.
But, hey, if you _do_ use it for that, this Witch window switcher seems like a great idea. More power to you!
[+] [-] vehemenz|2 years ago|reply
[+] [-] ant6n|2 years ago|reply
Now imagine u have 10 terminal windows and 3 chrome windows open. And you switch back and forth between two or three of these windows. In Mac Os you cant really do that, because u have to cycle through all the windows of the same software to get back to the other terminal window youre working on.
And thats why people use non keyboard methods for switching windows, which sux,
I hate Windows, but I also hate Mac Os for its dumb opiniated design choices that after 20 years theres still no option for fixing, so u need to pay 20$ for some tools that give you sane usability (also the the need for better touch tool to get proper tap to drag without a release delay).
And the worst is the fanboys that act like Mac Os’ wonky choices are a necessity because I’m holding wrong and they never had a problem with it.
[+] [-] lolinder|2 years ago|reply
Is a docked setup just not a thing for most Mac users?
I almost never want to use my laptop as a laptop—the keyboard is too small, looking down at the screen is bad for my neck, and multiple monitors is addictive. But as soon as I set the laptop aside and break out the external keyboard and mouse, Mac's window manager becomes completely unusable. I'm finding that the magic mouse doesn't help much because it's crippled compared to the trackpad and is horribly unergonomic. Hence the external tools to make the keyboard actually useful.
[+] [-] dantehemerson|2 years ago|reply
[+] [-] tracker1|2 years ago|reply
I wouldn't mind if I could trigger the same gesture (as three finger swipe) with cmd or cmd+ctrl with the scroll wheel.
[+] [-] pleb_nz|2 years ago|reply
[+] [-] tssva|2 years ago|reply
[+] [-] adamredwoods|2 years ago|reply
[+] [-] notatoad|2 years ago|reply
[+] [-] gregorias|2 years ago|reply
[+] [-] throwaway675309|2 years ago|reply
https://www.raycast.com/
[+] [-] SamuelAdams|2 years ago|reply
Window management - Rectangle
https://rectangleapp.com/
Alt-Tab improvements: AltTab app
https://alt-tab-macos.netlify.app/
Searching - Alfred
https://www.alfredapp.com/
Between these three, is there anything that Contexts or Witch can do that is worth paying for?
[+] [-] devbent|2 years ago|reply
I have an equivalent installed on Windows (I forget its name) and it is likewise just as amazingly useful.
[+] [-] keybits|2 years ago|reply
I configure it to be a minimal cmd-tab switcher that shows all windows for each app. I disable the sidebar and other unnecessary stuff.
[+] [-] ilikepi|2 years ago|reply
[+] [-] DavideNL|2 years ago|reply
[+] [-] I_am_tiberius|2 years ago|reply
[+] [-] chrisfinazzo|2 years ago|reply
https://www.youtube.com/watch?v=Orl5SlmIceA
[+] [-] alin23|2 years ago|reply
It’s definitely not as powerful as Witch for windows/tabs but rcmd’s one-key approach is instant for app switching.
Witch has some ingenious features indeed: searching browser/editor/terminal tabs, lingering on an app to show its windows etc.
I wish Apple would allow this kind of functionality in App Store apps.
[+] [-] speedgoose|2 years ago|reply
[+] [-] Veen|2 years ago|reply
https://lowtechguys.com/rcmd/
[+] [-] anileated|2 years ago|reply
[+] [-] chrisfinazzo|2 years ago|reply
I don't need to just see those other windows and their contents, I want to interact with them as well, which SM doesn't seem to do.
[+] [-] vehemenz|2 years ago|reply
[+] [-] Veen|2 years ago|reply
[+] [-] navait|2 years ago|reply
I discussed it with the Many tricks support, and apparently it's a problem with MacOS
[+] [-] barefeg|2 years ago|reply
[+] [-] jaimehrubiks|2 years ago|reply
[+] [-] blntechie|2 years ago|reply
[+] [-] drcongo|2 years ago|reply
[+] [-] oofbey|2 years ago|reply
[+] [-] Destiner|2 years ago|reply
[+] [-] kristiandupont|2 years ago|reply
With it, I only get types for the tables and views etc., so any join will be untyped if done client-side. This is still a big win in my opinion, and I much prefer it to normal ORM's.
[+] [-] princevegeta89|2 years ago|reply
[+] [-] absoluteunit1|2 years ago|reply
Myself; I’ve been using the “Windows” feature in Raycast; I highly recommend it. Extremely intuitive. I assign it to a shortcut and then use it to automatically list all the open windows I have and I just search through them to open the one I want
[+] [-] spsesk117|2 years ago|reply
I use rofi on linux to surface a dialog that allows me to execute programs, surface an X window, or change to a different tmux session. Rofi natively supports the first two, the tmux pane/session switcher being a little 10 line extension I wrote in bash.
I love rofi and the ability to do this, but there is a 'white whale' in this workflow setup that I have not been able to crack: A rofi dialog that displays and surfaces browser tabs. I have fought with chromium dev mode/flags/options on several occasions trying to plumb together something like this, but cannot for the life of me figure it out; apparently chromium does not really want you to get a list of tabs from outside the browser.
Has anyone with a similar workflow found a solution for this? I'd be willing to switch browsers, or try anything really.
[+] [-] slimebot80|2 years ago|reply
That way I can have many apps open, but only care about a few at a time. And keep my focus.
Annoying that I have to install ae wizzbang addition to achieve such a simple thing.