Witch – macOS window switcher replacement
manytricks.com
manytricks.com
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.
Normally my favourite method to switch apps is Spotlight, accessible with ctrl+space or cmd+space, I forget which. Anyway, Spotlight is a great app switcher, you can disable most everything else and just type a letter or two to switch. I use Powertoys on Windows to get a similar switcher there.
But again, Spotify breaks this, and switching using Spotlight does not recreate the Spotify window, if I remember correctly. Once again reaching for the dock…
This is the essence of 99% of my frustration with computers (smartphones especially) anymore. I find myself literally shouting I DIDN'T ASK YOU TO DO THAT at my devices. I grew up hearing the platitude that computers only do what we tell them to do. I wish that was true!
That platitude is from the command line age. With GUIs we will never have that as long as there are no realtime deadlines.
The most frustrating thing is when you tap something milliseconds after the GUI element changes underneath your fingers, triggering the wrong action.
The OSs are visually similar these days but there are fundamental conceptual differences, still. Window management on macOS, in particular, is a merger from two very different paradigms: classic Mac OS and NeXT. I was a huge fan of the former, though I don’t know if it would have scaled to the terabytes of today.
In any case, my advice is trying to understand whatever underling reason some behavior might have instead of trying to shoehorn a previous habit. I know a lot of my frustration with Windows was that it was not the Mac I’ve been using all of my life.
I recently switched jobs, and with the change switched from Ubuntu to Mac for my work computer. I've started to develop severe repetitive stress in my right hand from too much magic mouse usage because there are so many things that just don't have keyboard shortcuts.
So, for the benefit of all of us ex-PC users, what is the underlying reason for this extreme dearth of keyboard shortcuts? How am I meant to be using these Mac OS tools in a way that doesn't kill my hand?
I didn't directly address the original post issues because it's hard for me to even understand it, since it's nothing I've ever dealt with. For example:
“…an issue where you can select an app and it does absolutely nothing”
I _think_ the author is struggling with the fact that Mac apps can be open and have no windows. And that's not weird at all, just different. Or maybe it's a virtual desktop thing (Spaces), which I don't use.
Anyway, I use keyboard shortcuts extensively, command-tilde will switch between windows on the same app, for instance, if that's what you're looking for.
But keyboard shortcuts are much more discoverable in Windows than on the Mac. The letters are underlined in dialog boxes. It's uglier, but way more obvious. You can use the Mac with a keyboard only, but you may have to Google some shortcuts, unfortunately.
This is the thing that is most frustrating to me about MacOS—keyboard support is clearly a second class citizen.
It seems like you're supposed to use the trackpad for everything, but when I'm docked I want to use an external keyboard and mouse. The only mouse that supports the trackpad controls that Mac assumes are available is the magic mouse, which my company helpfully provided, but the ergonomics on that mouse are terrible. It's this tiny little flat slab that offers nothing in the way of support.
If I could figure out how to control everything with the keyboard I'd swap that mouse out for an ergonomic one, but virtual workspace management with pure keyboard seems to be impossible even with Rectangle installed.
It helps a little, such as being able to tab through dialog prompt buttons. Windows is still 10x better at being controlled by a keyboard but at least bridges the gap a tiny bit.
This has been true from the beginning of Mac OS X/OS X/macOS. Though the OS allows you to easily define keyboard shortcuts for any menu item in any application easily, there’s no way to use the system well if you don’t have a mouse (or even better, a trackpad).
And it gets even worse with Catalyst [1] apps, including Apple’s own apps like Reminders and others. It’s an exercise in futility to try to navigate those using the keyboard alone.
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.
I think people just like what they're used to, ultimately.
Other desktop environments put the window switcher in the center of the screen (so your eyes can unthinkingly jump straight to it), you can quickly tell "hit <tab> four times to get the window I want", and your workspace wasn't disturbed with other windows you aren't interested in.
It switches between all windows within one stage
I don't need anything more than that, and any app that offers more just becomes noise.
Even on my "desktop" Mac setup (which is really just my laptop in a dock) I have a full keyboard and the Magic Trackpad joined together with that tool from twelve south.
Thinking about it more I feel like I just use Windows and Mac differently. Most of the time I am in full screen mode (so any windows is just a quick swipe to the left or right) and when I am not I have multiple desktops or I have split full screen mode. Plus using 3 monitors I really just don't find myself switching all that often.
For me Windows feels like the worse management when I get used to what Mac has to offer.
- 4 finger swipe up is an overview for all desktops
- 4 finger swipe down is an overview for all windows
- 3 finger pinch does the MacOS-style desktop overview with your other desktops at the top
All of the gestures are 1:1 with the trackpad, and are functionally very useful. It feels a little cobbled together in current builds, but I'm hoping it gets extra attention with KDE6: https://youtu.be/aBEsxTVRsEo?t=100
There are of course keyboard shortcuts to access expose or spaces, but then what's the difference between alt-tab and that?
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!
1) That would also be true if you are switching to nearly any GUI based app that you need the mouse except for maybe if you are switching to a text editor but I doubt every time you switch apps you are immediately typing something, so not really sure I see the problem there.
2) True, maybe I just don't tend to have a ton of windows open at the same time.
3) I can't really speak on how it behaves with alt-tab however with the track pad it is as fast as you swipe and tied to that swipe. I can slow it down or speed it up.
On Windows, there is a nicely and predictably maintained Z-order, whereas MacOS insists that if I want to switch focus, surely I want all the windows that the other app has to offer, which feels like a big "mishmash" to me.
This had not been the case. Command tabbing would bring forward only the last active window. It was very handy to switch back and forth between text editor and browser that way. But then, they decided command tab should bring forward all windows, which ruined usability for me. Now I use BetterTouchTool [0] to directly switch to an app. Doing so brings forward only the last active window.
First, add a new keyboard shortcut trigger for “All Apps”. Choose a key combo that you prefer. I'm using a programmable keyboard that has a dedicated key corresponding to key combo CTRL+SHIFT+OPTION+CMD (a.k.a. super), which doesn't collide with system key combos. You are free to choose anything that suits you. For instance, to switch to Safari, I hit SUPER+S.
For corresponding action, choose “Launch Application / Open File / ...” and choose Safari from the box below. When Safari is already running, this action will switch focus to Safari's most recently focused window and will not bring other windows of it to foreground.
That's all. Set up other key combos for other applications as well. I have many set up. SUPER+T is for Terminal, SUPER+E is for Emacs. Switching between most recent windows of these apps should now be very easy and fast.
Simply drag a number of related windows together
EDIT: actually it seems possible to make it "autohide". But it won't let me have more than one window visible at once!
It’s kind of buggy at times though.
I have a stage with a few terminals, vscode, and a development browser
Any Apple devs (or anyone) here who can comment about why they removed the expose-animation-duration option?
This makes switching spaces and windows nearly instant with no animation. I don't notice whatever else lost animations...so I don't miss them. Worth a try!
Apple hard-codes “while lies” to make the experience smoother for those with slower devices, but they end up getting in the way if you want the UI to run fast.
It’s like having triple-buffering and vsync enabled all the time. Less chance of it looking broken, but not worth the tradeoff for those that feed on responsiveness.
Sorry will not open the horizontal list of apps.
It’s similar to the delay you have with double tap detection
(3) can also be solved. Go to system preferences -> accessibility, check the "Reduce motion" checkbox. Now the spaces can be switched almost instantly without the annoying animation by using keyboard shortcuts.
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.
it's still not prefect as it's not forced to consider only two windows (that would require a separate hack)
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!
I wouldn't mind if I could trigger the same gesture (as three finger swipe) with cmd or cmd+ctrl with the scroll wheel.
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.
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.
https://i.imgur.com/u9BRDU8.png (Big Sur, YMMV)
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.)
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.
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.
Can’t tell for others, but the trackpad is central on how I use my Mac. I can’t imagine using an external mouse/keyboard because it would completely break my workflow. Gestures are extremely convenient when you get used to them.
So yeah, no docking.
I also don’t agree that the keyboard is too small or that multiple monitors is addictive (it’s just convenient). The neck thing is true, which is why I try to keep my main windows on the second monitor, at eye level and bigger
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.
But indeed, i did notice AltTab is sluggish...
I have an equivalent installed on Windows (I forget its name) and it is likewise just as amazingly useful.
Window management - Rectangle
Alt-Tab improvements: AltTab app
https://alt-tab-macos.netlify.app/
Searching - Alfred
Between these three, is there anything that Contexts or Witch can do that is worth paying for?
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.
it also allows me to hide certain apps from the switcher. like if you have a terminal, you might wanna set up a keyboard shortcut for that and forget about it.
Just wish I could turn off the screen recorder feature, as I don't trust any app that does that without exceptional reasons. (In my case, I don't care about thumbnails)
local hammerspoonHotkeys = {
F = { name='Finder' },
P = { name='1Password', alt='1Password 7' },
S = { name='Slack' },
M = { name='Music' },
W = { name='Safari' }, -- 'W' for web
...
}
for key, obj in pairs(hammerspoonHotkeys) do
trigger:bind({}, key, function() openOrHideApp(obj) end)
end
where trigger is a global hs.hotkey.modal, and openOrHideApp is a function which uses 'name' and 'alt' to switch to the app if it's not active, hides it if it's currently active, or launches it if it's not already running. It also uses hs.alert.show to quickly (just a half-second) display an overlay in the middle of screen that says "Slack" or "Hiding Slack" or "Launching Slack".Because I'm already running Hammerspoon to do things like window management (hotkeys to move and resize windows), control my Streamdeck (without needing to run any other third-party software → https://www.hammerspoon.org/docs/hs.streamdeck.html) and to act as my default browser (so I can use URLDispatcher to do all kinds of "smart" things when URLs are "opened" on my Mac → https://www.hammerspoon.org/Spoons/URLDispatcher.html), etc. it makes sense for me to keep adding functionality with Hammerspoon instead of adding more and more "one off" utilities.
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.
For the remaining 10%, SM makes it easy to combine windows into a set (this is so far the only instance where I use the new “recent applications” widget, I set it to auto-hide so it never distracts me otherwise). Then with cmd+` you can switch between windows in the same set (even if they are of different apps). You can also tile windows in your set with something like Rectangle, etc.—just make sure not to over-craft sets, they are ephemeral after all.
The ephemeral nature of window sets used to bother me initially—I wanted to persist them across restarts—but after I realized I really focus on one window 90% of the time, and creating ad-hoc window sets is very quick, I no longer find it an issue.
I’m not sure what you mean about switching between sets. On macOS, any action that focuses any window (like command-tab) switches you to its window set. Do you mean on iPad you can assign individual shortcuts or use numbers to switch between window sets?
I would argue that the idea that windows are ephemeral doesn't work for all windows in all situations - I'm almost always going to want a window with BBEdit, another with Terminal cd'd to the current project (whatever I might be doing, and there likely will be a fair number of these, more than 1 at least), plus a web browser with email/documentation.
Admittedly, some of my complaints come from having my current setup with a DisplayPort hub and 2 HP displays, yet not having the horsepower to drive them each as independent screens. It's a holdover from a previous setup when there actually was a Windows machine in the mix.
Apple seems to begrudingly acknowledge that people might actually have more than one display in their setup, so features like this sometimes feel incomplete.
See also - the "bug" in prior versions of Spaces which didn't account for multiple monitors correctly. A simple oversight that shows they think about this kind of use last, if at all.
I thought so, too. However, turns out I work better when I see either an editor window, a terminal window, or a web browser, but not all at the same time. Meaning even if I had them all on screen, every moment in time I really focus only on one, and I do it for minutes at a time—all others meanwhile are visual junk. So SM does just that: focus one window at a time by default, and because command-tab is so readily available switching between full focus on one window to full focus on another window is very fast.
In my case, I could create a multi-window set where I have all of those windows very large and exactly same size (e.g., with Rectangle’s “almost full-screen” feature), and then I would get a bonus way of switching just between those windows (through command-`). I might try it some time.
There are few cases so far where I create multi-window sets arranged so that I see windows simultaneously, for example: 1) when I need to drag things between them repeatedly, such as when organizing files (e.g., moving photography between my SD card, SSD and HDD), or 2) when I’m observing multiple long-running processes in terminal but didn’t bother to run Tmux in the beginning so now I am stuck multiple Terminal windows and I want to see progress in them all. Turns out such cases are pretty rare.
That said, I don’t use multiple displays, I work on laptop and that probably informs my use case.
My mental model of window sets:
— A window always belongs to one set, with two exceptions: 1) global ephemeral windows like “About This Mac” (they appear in all sets on current desktop) and 2) windows assigned to all desktops via Dock (they appear in all sets and on all desktops).
— You are always “in” a set, even if it’s a 1-set with only this window alone, and you don’t see any windows not in the current set (other than the exceptions above). You can only glimpse other windows via Recent applications, Mission Control, and so on.
Managing window sets:
— Creating a window always drops you into a fresh set with that window alone. While jarring at first, it’s key to me—with a new window I start doing something different and don’t need the distracting baggage of whatever was on screen before that. Can always add windows later (see below).
— Any way that focuses a window now also drops you into its entire window set. This includes: Mission Control (which like before operates individual windows, not sets), ⌘+tab, clicking on app’s Dock icon, window switch from within the app, and so on.
— If you switch to another window set while dragging a window, that window becomes part of the set when you release the drag.
— To remove a window from a multi-window set (creating a new set with only that window alone), long-press the maximize window button and click “Remove Window from Set”.
Recent apps:
— “Recent applications” shows two kinds of things: 1) multi-window sets you created (last focused window on top), and 2) solo window sets grouped by application.
— Recent applications list is scoped to windows on current desktop and excludes the window set you are currently working in.
— You can interact with Recent apps in three ways: 1) click on a set to switch to it, focusing topmost window; 2) click on any app’s icon to show up to 18 recently used window sets with any of that app’s windows; 3) drag the topmost window from any visible set into current set.
— I set it to auto-hide, I only need it when I need to add another window to the current set.
By the way, ⌘+` now works in two ways: 1) if you are in a set of multiple windows, it will switch between windows in the set (regardless of the app); 2) if you are viewing a solo window, it switches between other solo windows of the app (close to old behavior).
This all might sound complex but a couple hours in it works quite intuitively, I find.
I was actually surprised to find that it works really well for me in the end (contrary to my experience on iPad, where I don’t like using SM). I thought it could reasonably “just work” for casual users on intuitive basis, but most advanced users wouldn’t like it—not having a good concept of how things work is a big barrier, and there is absolutely no documentation or good way of discovering this—so I decided to share my understanding lest Apple kills this feature due to lack of demand.
To add to my description one thing that I noticed just now: there’s a distinction in behavior between “heterogenous” window sets and single-app window sets. For example, if your window set is heterogenous—contains windows of multiple apps—then command-` indeed switches only between windows in the same multi-window set (so you won’t leave that set). On the other hand, if current multi-window set consists only of windows from a single app (e.g., multiple Terminal windows), then command-` will switch between 1) windows in current window set, as well as 2) this app’s windows in other homogenous sets (and standalone windows). I’m not a fan of this particular behavior, because every time it kind of breaks my expectations when I leave a multi-window set due to command-`, but maybe it’s because I got used to thinking that command-` only works within a set too quickly.
Add: and there is an outright bug in that if you use command-` while in some non-English keyboard layouts, it starts command-`’ing infinitely. Guessing Apple might be aware but too lazy to figure out their ticket tracker…
I discussed it with the Many tricks support, and apparently it's a problem with MacOS
One of my favorite things about Witch is the huge amount of customization you could do with it. Defining multiple switchers with different behaviors and different trigger keys is a nice feature too.
This let’s you have complete control over tiling.
Planning to switch to it now, because all the other options (like using no tiling manager at all, or Amethyst) seem to suck even more.
Don't get me wrong, none of this is an issue with yabai, just with macOS. If I were forced to use macOS for work I'd use yabai too. But I've arranged my life so I never have to touch macOS professionally.
It was a little buggy when Ventura dropped, but it gets frequent updates and has stabilized in the past few months.
The problem with the built-in methods is that they use spaces and split them for windows. That locks you into that space just as full-screen view does.
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
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.
I agree that'd be great. I don't have that solution for you, but I can describe the workaround I've been using in my environment.
I use dmenu to switch between i3 workspaces by name [0]. Probably 80% of my workspaces contain a single browser window with multiple tabs (i.e. I'm currently on workspace "hn" which contains one Firefox window with 17 hackernews-or-hn-adjacent tabs).
My flow:
- With the browser window in my current workspace active
- I hit CTL+L (to focus the address bar)
- I type "%python typing" (in Firefox, the % prefix makes the query fuzzy match open tab titles across all browser windows)
- Select the tab title I want from the results and hit ENTER (surfaces the tab in its window and causes that tab's window to assign itself the X11 "urgent" flag)
- Read the 2-letter workspace name that is now highlighted in red at the bottom of my screen (i3 highlighted it because it contains a window with the "urgent" flag)
- Hit SUPER+C (to open dmenu with my workspace names)
- Type the 2-letter workspace name and hit ENTER (to switch to that workspace, where the tab is surfaced and waiting for me)
I do use rofi as my application launcher, though, and you're making me curious if it's possible to exfiltrate tab titles from Firefox. It'd be pretty slick to cut back from two chords+queries to one.
0: Reddit post I made a while back describing my setup, includes a video https://old.reddit.com/r/unixporn/comments/udd0zg/i3gaps_flu...
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.
Windows/Linux on the other hand, is all about scrolling
https://i.imgur.com/LYytae6.png
Why does this Linux/GTK desktop program looks like an iOS setting menu?
Compare to this, all settings available without scrolling: https://manytricks.com/witch/images/4/multiswitch_big.png
https://support.apple.com/en-bn/guide/mac-help/mh15217/
Again, compare this with the Gnome/GTK screenshot I shared above..
UX for vertical vs horizontal screens (desktop/laptop vs smartphone), macOS did it right, Gnome did it wrong and Windows is following Gnome's mistake
Another example: https://i.imgur.com/atT4Xkg.png
XFCE's file manager vs Gnome's one
One optimized for trackpad and mouse/KB combo, the other is looking like a smartphone UX, you constantly need to scroll, and "tap" on huge controls, not optimized for a mouse pointer, and not optimized for keyboard navigation
"But our security team can only support Mac and Windows" is a sad joke I hear too often.
A couple years ago I turned down an employment package offer that was too good to turn down and said I could be available as a contractor. A big part was I didn't wanna be forced to use a f**ing Mac. Taxes made more sense too so yeah.