Native Instant Space Switching on macOS

(arhan.sh)

351 points | by PaulHoule 8 hours ago ago

177 comments

  • aylmao 6 hours ago

    I grew up with this animation so I didn't consider it annoying until I bought a new Macbook a couple years ago.

    I noticed sometimes I would press keyboard shortcuts before my system's focus had switched. Just little stumbles here and there, some inoffensive, some annoying, but who knows maybe I didn't catch enough sleep.

    Over time it happened often enough that I decided to google it, and it turns out my muscle memory wasn't failing me; the animation speed did change ever so slightly and was slower in new Macs with 120Hz displays [1][2] (newer MacBooks, 2021+). If you switch your screen to 60Hz it goes back to the faster animation.

    Why is this animation slower now, and why does it depend on screen refresh rate? I have some technical theories but can't think of an organizational reason it happened and hasn't been fixed 5 years later at a 3.82 trillion market cap company. If you Google it there's plenty of discussions online about this. It's noticeable and annoying to people who have used the feature often enough.

    [1]: https://discussions.apple.com/thread/256124324?sortBy=rank

    [2]: https://www.youtube.com/watch?v=gNBWt4NvqHg

    • veber-alex 6 hours ago

      This is such an insane bug to still have around all these years.

      Are apple engineers not using macOS?

      • PaulHoule 5 hours ago

        I think Apple's self-image of being the epitome of design actually acts against them. Leads to monstrosities like Liquid Glass kinda vandalizing random parts of the UI in small ways that I intuitively read as "they are anti-anti-aliasing" not "they added cool refraction effects." It used to be you'd see something in a well-chosen color, now it is just a muddy kind of greyish brownish whatever.

        I'd like to see them make some costly signalling to indicate that they are going to turn it around like maybe buy two Superbowl ads in a row and let the CEO make a personal apology.

        Isn't going to happen because the competition is Microsoft and Intel and Dell who won't hold them accountable and it is just too easy to turn reject iPhone chips into netbooks in 2026.

        • harrall 3 hours ago

          My pet opinion is that Steve Jobs was an asshole but an asshole that used his own products and used his powers of complaining to steer the whole ship to fix major "this annoys me everyday" bugs.

          From my experience, "annoying but not blockers" bugs are often very neglected compared to (1) bugs that actually break things and (2) feature work. Neglecting quality of life issues leads to the "do you even use your product??" kinds of experiences.

          • jbverschoor 42 minutes ago

            This is exactly my thought as well.

            Soo many things either work buggy, laggy, inconsistent, or don’t work at all

            Filling bugs doesn’t help. And I don’t think anyone is inventive to fix bugs. Resolving sure. But closing WONTFIX or NEEDSINFO is also a resolution.

            Most of what I do is chrome +Linux terminals and vscode anyway

            And the only reason I’m on Mac is because of hardware, encryption, and ease of backup/restore/wipe, and the power struggle of Linux distros. freeBSD is not really an option

          • hirvi74 3 hours ago

            I have not been impressed with Cook in the slightest. He came from Compaq, if I am not mistaken, and in many ways, I feel like Apple has become more Compaq-like during his tenure.

      • ryanmcbride 5 hours ago

        I mean, their damn phone keyboards are so bad I'm 100% confident that Tim only does voice to text on his phone. There's no way that the CEO of a company could use a keyboard that horrible and not want to fix it.

        • sen 5 hours ago

          It’s SO bad. It makes me not want to use my phone anymore and physically go get my laptop if I’m chatting/messaging someone.

          It’s probably the worst typing experience I’ve had since resistive-touch screens on PDAs. At least with them you could still type what you intended to though, just slowly.

        • Barbing 4 hours ago

          If Tim used speech to text we’d be at least testing SotA local voice models in the iOS betas

          • ryanmcbride 4 hours ago

            Starting to wonder what he DOES use. I guess just the cameras since they seem to be the only things that change.

            • llbbdd 2 hours ago

              He's a gazillionaire, he has people to interact with phones for him

        • fizwidget 5 hours ago

          In my experience iOS 26.4 did largely fix it btw. Update if you haven’t already.

          • ryanmcbride 4 hours ago

            I'm on 26.4 on a brand new 17 Pro Max, recently upgraded from a 13 Pro Max, and I have noticed absolutely no difference in the keyboard. It's still awful.

        • testing22321 32 minutes ago

          Why are you paying money for something that you find so terrible when there is a perfectly good alternative.

          Life is too short to waste is using junk you don’t enjoy.

        • JoeBOFH 4 hours ago

          Most of my issues were fixed when I disabled swipe to type. Not all, but most.

          • kcrwfrd_ 44 minutes ago

            In case anyone else is going crazy trying to find this setting, it’s called slide to type

          • ryanmcbride 4 hours ago

            I've heard this advice before and I've tried it, and I really didn't notice a difference. I also, unfortunately, use swipe to type a lot. If I'm typing one handed I'm pretty much always using swipe. Sure it barely works, but that's the same as if I was typing normally so feels like a wash.

            • u_fucking_dork 3 hours ago

              Keyboard works fine. Always has. iPhone just has so many users that there's going to be a plethora of passionate unpleasable nerds for every single facet of it. Even in your ideal virtual keyboard version, there was an army of people complaining that it wasn't a hardware keyboard.

              • jbverschoor 39 minutes ago

                No it doesn’t.

                It did work fine before. But I had to swipe 3 times to get “fine” instead of “going” just now

              • Forgeties79 an hour ago

                I’ve never really disliked the keyboard. I’m not entirely sure what they’re talking about. That being said I’ve never used swipe to text so maybe that factors in, or never having had a smartphone other than an iPhone.

              • ryanmcbride 2 hours ago

                okay.

      • mrguyorama 4 hours ago

        Even if they did, what are they going to do? File a bug report that will sit at the bottom of the priority pile forever?

        Devs don't set priorities. Software "Engineers" largely don't get to engineer at all.

      • amelius 5 hours ago

        I wouldn't be surprised. Their 3D solid modeling is done on Windows, so why not their electronics.

    • juujian 3 hours ago

      Don't know about customizability on MacOS but I've always been very accustomed to animations and recently I just turned them off on Android and Linux and I... Don't miss anything. Turned out they don't add anything other than an initial wow factor.

      • al_borland 2 hours ago

        Personally, I think some animations can help add context to what is happening. For example, when using QuickLook, there is an animation when opening/closing QuickLook that zooms out from, and then back to the file location. If doing something with that file after the QL, that little visual clue helps find it faster and know where it opened from.

    • bschwindHN 2 hours ago

      I noticed this immediately when I first used a 120Hz macbook in 2021. As a vanilla MacOS UI feature that I'm sure many people use, I can't believe it hasn't been fixed yet.

    • theredleft 14 minutes ago

      we are a certain type of people here, aren't we?

    • tranceylc 6 hours ago

      I would assume it’s something based around whatever deacceleration animation it is calculating? So in the inverse of what you would see in games that don’t support uncapped framerates. It would at least explain why the refresh rate has an inverted relationship

  • godelski 2 hours ago

    I think Apple is making a really fatal flaw. Tbh Microsoft is doing it too.

    Design good interfaces, with sane defaults but do not handcuff power users!!!

    I often hear people say no one should care because there aren't many power users. They're a small portion, but that's absurd framing. They matter a lot because they're the ones that push your design language, develop new ideas, influence the general community, build new programs, find your bugs, and all of that. Apple and Microsoft are closing the ecosystems to get more control not only to exploit the users more (scrape their data) but to reduce bugs and things. But more and more people are trying these random programs because they can't figure out how to do things the right way. It's exactly why people are getting more frustrated with computers. The general public still doesn't care about data harvesting but they do care that the restrictions are handcuffing them now.

    Funny enough this is also why Linux is becoming more popular. You've always had complete control but in the last 5 years the barrier to entry has plummeted. It's still not right for the average joe but it's on its way and a few more specialty distros are already there (e.g. steamos). The irony is Apple had the right idea before, even if not as modifiable as Linux, it used to be easier. But now it's more like a power trip. Consolidating control because they don't know what else to do

  • xz18r 6 hours ago

    I see yabai mentioned, definitely check out Aerospace. Ive tried multiple WMs after years of i3 on Linux and this is the best one I found (for me) with quite a margin. It just works (tm)

    https://github.com/nikitabobko/AeroSpace

    • nathanwh 5 hours ago

      Another happy aerospace here! IMO it does a great job with barely any configuration required (the default config works great, I have barely tweaked it over years of use), that said I’m not exactly power user of tiling WMs, I have one app per workspace 90% of the time

      • wett 5 hours ago

        Same here. My only complaint is I wish there was a way to make apps floating by default and then you would specify which ones you want tiled.

        IME a lot of apps are easier to use in their default state. I really only use my web browser, text editor, and terminal in tiled mode.

        • wlonkly 37 minutes ago

          You got me thinking, and this seems to work for me. I didn't test if the order of these blocks matters.

              [[on-window-detected]]
                 if.app-id = "com.github.wez.wezterm"
                 run = ["layout tiling"]
          
              [[on-window-detected]]
                 if.app-name-regex-substring = '.'
                 run = ["layout floating"]
        • lolive 2 hours ago

          When exactly do you need floating windows?

          - a happy ion2/i3 user since forever -

          • hombre_fatal an hour ago

            When you want to quickly use apps without navigating away from your tiled workspace.

            Especially transient dialogs, e.g. wifi/file picker. I would create rules in sway/i3 for those to keep them floating.

            I've written at length about this topic on HN in the last month, so I'd hate for it to seem like my lil hobby horse, but something I've come to appreciate about the conventional "stacking" window solution of Windows/macOS is that it has a good answer for apps you briefly use.

    • tytho 6 hours ago

      I was a heavy macOS Spaces user. Upon a recommendation to use Aerospace from somewhere else here a few months ago, I switched and love it. I considered Yabai, but some features required disabling SIP (System Integrity Protection).

  • tptacek 6 hours ago

    God damnit I didn't know until 15 seconds ago that the Space-switching animation in macOS was annoying. Thanks a lot!

    • duskdozer 20 minutes ago

      If you don't want to go insane try to forget before you notice everything else. Might be too late already once you first do though

    • el_benhameen 6 hours ago

      Just wait until you notice that it’s inexplicably slower on 120hz monitors and that your input devices remain focused on the previous space until the animation fully completes!

      • JumpCrisscross 6 hours ago

        > our input devices remain focused on the previous space until the animation fully completes

        This strikes me as the fuckup more than anything else.

      • mvkel 5 hours ago

        This is true in iOS, too. Taps are ignored until any animation completes. Must be deep in the code!

      • qudat 5 hours ago

        It’s insane and the worst part about Mac OS

        • veber-alex 5 hours ago

          Window management on macOS is just trash.

          3 people from my team recently switched to macOS and they never owned a mac before and they are all complaining about window management.

          Do you know how dumb it makes me feel to have to tell them they need to install third party apps just to make their system somewhat usable? it's insane.

          • coldtea an hour ago

            >3 people from my team recently switched to macOS and they never owned a mac before and they are all complaining about window management.

            For legit reasons? Because many switchers complain for stupid reasons, like the macOS distinction between apps and windows.

            • jbverschoor 37 minutes ago

              Mac power user 25+ years.

              Yes, it’s complete shit

          • SamuelAdams 5 hours ago

            My favorite MacOS update was when the removed the need for Rectangle, Mos, and Unnatural ScrollWheels.

            /s

  • Cider9986 6 hours ago

    I switched to Fedora Asahi Remix[1] after being affected by this bug[2] after 5 releases of MacOS Tahoe. I am enjoying Asahi Remix with Gnome and it has sensicle window management.

    [1] https://asahilinux.org/fedora/ [2] https://youtube.com/watch?v=JjptYWKGVc4

  • Nevermark 6 hours ago

    Tangentially related.

    After a restart, and after Finder has opened multi-tab windows I have open before, clicking on a tab can suddenly move my view and the window to another space.

    Apparently different tabs in the same window can think they belong to different spaces.

    Something (I perceive as) common to a lot of the (perceived) increase in Apple software glitches recently, is I cannot fathom the logic for which the bug makes any sense. It does not feel like I am seeing corner case bugs, but instead major "bad-model" code, revealing its poor design.

  • keerthiko 22 minutes ago

    I'm not a big space-switcher on OSX, mostly because each of my applications come with spaces (browser, IDE, etc), but unskippable UI animations are an instant roadblock.

    Looks like HN hug of death killed your comments section though:

    > An error occurred: API rate limit already exceeded for installation ID 65180581.

  • phren0logy 7 hours ago

    Having been ruined by Linux options like Hyperland and Niri, I’m digging my early foray into OmniWM - https://github.com/BarutSRB/OmniWM

    • yuters 7 hours ago

      It is very good even though it's in early development. Issues are getting fixed almost as fast as I can find them. I have to use macOS sometimes for work and OmniWM made it bearable.

    • bigfudge 5 hours ago

      As someone who never uses spaces or any window manager, what am I actually missing? What’s wrong with cmd tab and just switching between apps? Is this going to be some Kind of major epiphany?!

      • prewett 4 hours ago

        Spaces is what used to known in Linux as virtual desktops (maybe it still is), and that is how I think of it. Or as virtual monitors. Right now I have desktop one for local system iTerm2 and Firefox, desktop two for client 1 (terminals, IntelliJ IDEA), desktop three for client 2 (VirtualBox, terminals), desktop four for incidental stuff that needs a mostly empty desktop, and desktop five for Chrome (for things that need it), and GIMP and Inkscape (as needed). This way everything stays where I put it, including which windows over which other ones. So I can switch to D1 to look up some documentation on a function, then back to D2 to use that knowledge. Or on my personal laptop I can keep my coding project up one desktop and do the daily web surfing on another, and just switch desktops to have the coding project right where I left it.

        (You do use a window manager, btw, it's the thing that puts the title bars on your windows and lets you move them around. On macOS it's integrated in, but on Linux you have to choose one. There are many, all of which have some failing. Except for sawfish, whose failing is that it is no longer maintained.)

      • ivanjermakov 4 hours ago

        Sort of. With proper workspaces you land directly on the full screen program with a single hotkey. No cmd-tab switching needed.

        • grantith 3 hours ago

          You don't technically need workspaces for this with app/window hotkey assignments via raycast or hammerspoon, for example.

    • sgloutnikov 7 hours ago

      Same boat and whoa this looks nice! Will give it a try thank you!

  • nu11ptr 20 minutes ago

    Interesting. It doesn't bother me at all, but the animation on Windows 11 to switch spaces feels very unsmooth to me and drives me crazy. Here I was wishing it was like the one on macOS.

  • cosmic_cheese 7 hours ago

    Clever hack. Now if there were some way to bring back the OS X 10.5/10.6 2D spaces grid… the linear design in place since 10.7 has always felt overly simplistic.

    • wolvoleo 6 hours ago

      That is indeed the biggest thing I missed so much. When I finally moved from macOS to KDE I got the grid desktops back and I love them so much.

      I have 9 virtual desktops and a 3x3 grid is so much easier to navigate than a row of 9. Also, Apple makes them dynamic now. I have each desktop assigned to a specific purpose. It's like having 9 computers at my fingertips.

      Almost every release of macOS after 10.6 or so dropped something I used and the replacement if any was rarely good enough. So it started rubbing me the wrong way, more and more with every release. I'm so glad I'm no longer on an opinionated OS but that I have a desktop environment that cherishes configurability and options.

      In keeping with this, for the transition animation you can choose several options like a fade and a slide, you can turn them off completely (as this hack does for macOS). You can even set the speed of some transitions. I have it set to slide but faster than normal. So the sliding gives me a little spatial awareness of where I move within the grid, but it still feels snappy. All just by ticking some options. I love KDE <3

      • cosmic_cheese 6 hours ago

        I've tried KDE but unfortunately too much of it clashes with my preferences, even after spending quite a lot of time tinkering with its many config options. It's a nice project but I don't think it'll ever be for me, despite carrying features from older versions of macOS.

  • bfirsh 4 hours ago

    Here's a script to install and configure, in case it's helpful for anyone's dotfiles: https://github.com/bfirsh/dotfiles/blob/48eff70daa754216eff9...

  • tnightengale 5 hours ago

    Stop using MacOS spaces. Never full screen anything. Throw everything around with hotkeys using OSS rectangle. Use shortcat to automatically bring your cursor to anything on your screen and use enter to click and type.

    • piskov 5 hours ago

      You don’t get it

      Spaces are not for fullscreen but for basically virtual desktops i3 linux style

      Here is superior user experience:

      1. Install moom. Its keyboard windows arrangement is second to none. Its two-step tiling is a killer. Ie caps-a to show a popup with all the shortcuts, then “a” letter for vertical 1/3 of the screen. Or s for middle 2/3. Or q for top left third — you can assign any letter for any portion of the screen.

      2. Use option1-6 to switch between desktops

      3. For example alt-4 is a desktop where you have all on one screen (suppose you have 6k xdr like i do): safari, mail, messages, telegram, hey email, reeder

      alt-3 is your productivity desktop where you have things, calendar, basecamp, notes, ia writer

      alt-1 and 2 is for your main work like rider ide or what have you

      Alt-5 for your remote stuff like remote desktop, servers, what have you

      So with this you have a mental model of where everything is always and instant switching to it. Want to see your todos and notes? Alt-3. Want to see your browser and messaging? Alt-4. You get it.

      Moom is better than tiling manager for screens like 6k 32” xdr.

      Otherwise tiling managers are perfectly fine. For instance on windows I use komorebi

      • ericholscher 39 minutes ago

        This is exactly what I do -- but I have space split up by persona (Personal, work 1, work 2, Play), and then each space is managed with Moom. Love it.

        • jbverschoor 30 minutes ago

          You will still run into shit when one application instance is used in two spaces

          Finder, chromes, etc. it will cause automatic switching.

          Also, cmd-tab doesn’t have a filtered mode for the active space

          Cmd-~ actually works better when using stage manager, because it goed through all active windows across all apps

      • cosmic_cheese 3 hours ago

        This is similar to how I use Spaces. I haven't hotkeyed desktops, but each one is designated for a particular task or theme. The concept extends further with a secondary display, with the primary monitors' spaces being assigned "main task" duty while the secondary displays' spaces get "aux task" duty — so e.g. IDEs and browser windows immediately relevant to the task at hand go on a main monitor desktop while secondary display desktops are used for things like chat, music, and documentation.

        This is a core part of my workflow and is one of the reasons why I would have a difficult time using Windows as my primary OS: its virtual desktop support is far too weak in comparison. It can't even switch desktops independently per-display.

      • weakfish 3 hours ago

        I'm really confused - I downloaded Moom because of this comment, but can't find a feature to switch Spaces. Am I missing something?

    • thamer 2 hours ago

      You don't need to full screen anything to use macOS spaces for O(1) app-switching, instead of O(N) by pressing Cmd+Tab repeatedly to linearly scan your list of applications.

      The rule is simple: one app per space, and Ctrl+{1,2,3…} switches to the corresponding space in O(1). For me space 1 is an IDE + terminal, 2 browser, 3 messaging, 4 bug tracker, 5–6 AI agents etc. It was fast to learn: get a DM, press ^3; to file a bug, press ^4 etc. I use this with the Rectangle app for window tiling, and this combination works great for me; I rarely ever use Cmd+Tab.

      I also have a personal menubar app that's very similar to SpaceName, to quickly get the current ID when multiple spaces have a similar layout (e.g. terminal takes the left half, a browser the right half).

    • taude 5 hours ago

      Similar I just use RayCast Hotkeys to bring mostly full-sized apps of my choice to the forefront and not worry about much. I'm also just optimizing around a small single screen setup these days for focusing on stuff.

      option-cmd-o BOOM, outlook opt-cmd-g Bang, Ghostty opt-cmd-v POW, VSCode opt-cmd-s Boff, Slack etc etc...

      ALSO: I learned this from some prior thread on something similar.

      • Barbing 4 hours ago

        How does that compare to using Alt Tab? And I forget if you have to suffer through any animation at all when you do it that way

    • 4 hours ago
      [deleted]
    • Starmina 5 hours ago

      Yeah well, I'd like to see your face when you find out that each time you fire shortcat it makes one HTTP request, yikes.

  • modeless 6 hours ago

    This is nice. Sounds like it wouldn't solve the slow animation when entering or leaving full screen mode though. I'm fed up enough with macOS's poor window management (among many other things) that I'm looking for MacBook alternatives.

    The M5 chip is way ahead of Intel's latest, even Panther Lake. But the Snapdragon X2 Elite looks like a viable alternative. It's the only competitor with comparable single core performance, and it comes with 48 GB of extremely fast RAM for a reasonable price with great battery life. Unfortunately Linux support isn't really there yet, but hey M5 MacBooks don't support Linux well either.

    • mixtureoftakes 5 hours ago

      if youre using a firefox based browser, slow fullscreen for media can be fixed by setting the full-screen-api.macos-native-full-screen flag to false in about:config

  • primaprashant 2 hours ago

    I love using (tiling) window managers, and one of the most important requirements for me is having a key binding for switching to the last active workspace. The proposed solution in the blog doesn't achieve this. I use Aerospace on macOS right now and think it's the best solution available.

    I generally have fixed workspaces for different things: first for a browser, second for a code editor, third for a terminal, and so on. If I want to switch between the browser and code editor, I can do that with a single key binding, usually Alt+Tab. The same binding lets me switch between the code editor and terminal just as easily.

    When you have something like 10 different workspaces, not having this key binding becomes annoying. If you need to alternate between windows on workspace one and workspace eight, you're stuck using both hands to press Control+1 and then Control+8. But with a last-active-workspace key binding, you can just Alt+Tab between them. This is the killer feature I always need.

    • ArchAndStarch 2 hours ago

      Actually, that was just recently merged into InstantSpaceSwitcher!

  • nicoburns 7 hours ago

    I'm still incredibly frustrated by Apple's Mission Control and Full Screen features. The old Expose and Spaces and windows-style maximise would be so much better.

    • Analemma_ 6 hours ago

      I agree that I miss when spaces could be on a grid in Snow Leopard instead of only in a straight line, but what is wrong with Exposé? From my POV it works the same as it always has.

      • dzhiurgis 3 hours ago

        IIRC Expose is now called Mission Control (four finger swipe up on my system).

        My problem with it is that it's useless if you got more than few windows open - the preview is just too small to actually see which window you are after (it's all padded for the looks). IMO if they actually used tiles, potentially grouped by app - it would be so much useful.

        Yabai looks cool tho, but requires so much permissions and potentially disabling system integrity protection that IDK if it's a go for me.

  • flawn 5 hours ago

    Hey! I built InstantSpaces (which you had linked in the footnotes) and am well aware of issues with the injection & patching. It works 90% of the time for me and was good enough for me to share. But there are cases where it bugs. And yes, Tahoe is a to-do.

    I will hopefully soon have the time to try to make it more robust. Feel free to take a shot at it if you want!

    • ArchAndStarch 5 hours ago

      Hey, author here, and cool project! I spent some time comparing Yabai's scripting addition to InstantSpaces' scripting addition. They seem to be doing the exact same thing, but Yabai works while InstantSpaces doesn't, and I eventually gave up trying to figure out why.

      Regardless, I still prefer InstantSpaceSwitcher because its implementation is simpler and it doesn't require disabling SIP. If you can get it working, however, I can edit my blog post to say so!

  • aequitas 7 hours ago

    Wonderful, that leaves 2 things on the top of my list for spaces: having to hover your mouse over the top left corner of a space and waiting until it shows the closing icon. And Safari deciding its better to switch to a space and open a window that was minimised there instead of just opening a new window in the space i'm currently in (even with the "switch to a space" setting turned off!) when 1 want to open a new tab.

    • vict7 6 hours ago

      I have been dealing with the same issue and thought I was going crazy that the setting which purports to fix this exact behavior simply doesn’t work?

      • aequitas 6 hours ago

        At least the setting does work in reducing the switching when you cmd-tab to an application with no open windows in the current space. But I think some of this annoying switching behaviour is application specific logic and they just didn't get it right with Safari, some other applications do get it right though.

    • draw_down 6 hours ago

      [dead]

  • benji-york 7 hours ago

    By way of experience report: I've been using this app for a week or so on my daily driver and it's been great.

  • DDayMace 2 hours ago

    I much prefer gnome for multiple desktop switching and app switching in general. Seeing this article I know there are many on macos who agree!

  • isodev 2 hours ago

    > Apple has continuously ignored requests

    Apple being completely oblivious to what normal people actually need or want is like bad weather- can’t do anything about it (Apple is so big and unregulated), just try not to forget to take an umbrella.

    • jbverschoor 22 minutes ago

      They use a clean work Mac for just work.

      It’s like having a dedicated space for a few apps and folders. No wonder they don’t care

  • ivanjermakov 4 hours ago

    Amazing how much effort is needed from a billion dollar company to make a feature present in my 1kLOC window manager.

  • mikeweiss 25 minutes ago

    I have a vestibular disorder that makes this animation extremely disorienting and it's been so discouraging that apple won't do anything about it. I just stopped using the feature all together! Honestly it's an accessibility issue and apple should be ashamed... Maybe even liable for not doing anything.

  • itubaj 2 hours ago

    The thing that most bothers me is that there seems to not exist a good solution for spaces that allows a grid set of spaces, like the one you can configure on Linux Gnome DE. That thing was so useful...

    • spiderice 2 hours ago

      I still miss the grid spaces that got removed in Lion.

  • Fraterkes 7 hours ago

    I'm new to MacOS, is the thing they're refering to when you swipe left/right with three fingers to switch between different fullscreen apps / desktops? I kinda like the animation, after decades of windows I'm still impressed when switching between programs isn't stuttery.

    • rahimnathwani 7 hours ago

      Yes, and the app they're recommending emulates that swipe, but really really fast, so it looks instant. And you don't have to swipe 8 times to go from #1 to #9.

    • alpaca128 3 hours ago

      > I'm still impressed when switching between programs isn't stuttery

      It is stuttery when you use the magic touchpad via Bluetooth, same applies to the cursor. It's very noticeable with slow movements.

    • rwc 7 hours ago

      Now do it 100x every day and see if it gets old :)

    • satvikpendem 7 hours ago

      It get annoying after a while, especially if you're swiping a lot, such as having an IDE and test app / Simulator in one space and a browser in another.

      • hhh 7 hours ago

        it just blends into the background for me personally, i found it annoying a little when i swapped from multiple monitors to one

  • ray__ 7 hours ago

    This looks interesting and I will give it a try. I agree that the space-switching animation is painful.

    I don't however think that this will solve spaces on MacOS, for the simple reason that opening new instances of apps is inconsistent and often doesn't behave how you'd expect it to once one more than one space is involved (in my experience, anecdotal).

    I've come to peace with the fact that I will never be able to simultaneously experience the productivity of i3 and the necessary evil of MS Office/Illustrator on the same OS. The most important factor in my work is who I work with (rather than what I work with) so I'll remain on the latter train for now.

    • satvikpendem 7 hours ago

      Why not use a macOS i3-like window manager like yabai or komorebi (paid)?

      • lynndotpy 7 hours ago

        This is addressed in the post.

        > There are only two problems: for one, yabai does this by binary patching a part of the operating system. This is only possible by disabling System Integrity Protection at your own discretion. For the second, installing yabai forces you to learn and use it as your tiling window manager1. I personally use PaperWM.spoon as my window manager. Both of which are incompatible when installed together.

        • satvikpendem 7 hours ago

          I was referring to their last line ("I will never be able to simultaneously experience the productivity of i3 and the necessary evil of MS Office/Illustrator on the same OS") not the linked article because the parent doesn't "think that this will solve spaces on MacOS" therefore I gave a suggestion that would.

          Secondly I don't find anything that bad about why the article's author doesn't want to use yabai, I generally disable SIP anyway (because I want to install anything I want without restriction, even edit system files because that's necessary in some cases, as yabai does); and they just don't want to learn a new WM which is fine for them but isn't a valid reason for everyone to not use yabai.

        • niij 7 hours ago

          You can turn tiling off

          `yabai -m rule --add app=".*" manage=off`

    • FireBeyond 7 hours ago

      > for the simple reason that opening new instances of apps is inconsistent and often doesn't behave how you'd expect it to once one more than one space is involved

      System Settings > Desktop & Dock "Automatically rearrange Spaces based on most recent use". This is the critical part.

      And then right click App on the Dock, Assign to this Dock.

      With these two things, Spaces becomes predictable and repeatable.

  • righthand 29 minutes ago

    Wobbly Windows in KDE is the only acceptable animation.

  • mintplant 6 hours ago

    Awesome! Is there a working way to do the same for Windows virtual desktops? I remember I used to do it with ViVeTool [0], but Microsoft removed the feature flag at some point.

    [0] https://github.com/thebookisclosed/ViVe

    • AaronFriel 6 hours ago

      Turn off "Animation Effects" in Settings and it will be instantaneous.

      • lll-o-lll an hour ago

        And VsCode will not display dark mode correctly.

        • AaronFriel 42 minutes ago

          Oh that's a surprising interaction. I use dark mode themes, is there something I haven't noticed?

  • gechr 6 hours ago

    Nice. I wrote a little menubar app and Space switching has been a thorn in my side, including going down the "Yabai integration" route. Will have to take a look at this and see if I can borrow some ideas!

    Shameless plug: https://github.com/gechr/WhichSpace

  • rendx 6 hours ago

    I didn't check if it makes any difference, but I see hardly any animation with “Reduce motion” enabled.

    The article mentions this has the unfortunate side effect of also setting prefers-reduced-motion in browsers, but that can be mitigated by changing the browser settings (Firefox: about:config: ui.prefersReducedMotion. 0 (enable) or 1 (disable)).

  • zlies 5 hours ago

    Honestly, this animation in one of the best things about spaces in macOS. I use the four finger gesture to switch spaces all the time and it make the spaces feature so much more natural than all other window managers I’ve used before

    • _andyg_ 5 hours ago

      Agreed, that’s one of the things I miss most when using a Windows machine at work. Something about the animation makes my workspace feel bigger in a way that the Windows multiple desktop feature is just missing.

      Technically Windows does have an animation when switching desktops with the trackpad, but it’s so jittery that it’s annoying. And the desktop image takes seconds to update, and only updates after completing the animation. To me this is one of those “death by 1000 missing bits of attention to detail” problems that plagues Microsoft/Windows.

    • braebo 4 hours ago

      Same but it’s certainly too slow.

  • tnightengale 5 hours ago

    The giga brain move is to stop using MacOS spaces. Never full screen anything. Use an OSS window management tool like `rectangle` (similar to deprecated `spectacles`).

    Use shortcat to bring your cursor to any element with just typing.

  • hmokiguess 6 hours ago

    Can you use this with the trackpad gesture though? That's the only thing that has me locked in, the muscle memory of trackpad is hard to beat for me and unfortunately I rather suffer through the animation then move to the keyboard

  • MaxMonteil 3 hours ago

    Thank you so much for sharing!!

    This has bothered me ever since I switched to a mac from i3wm.

    I wish you and your loved ones all the best <3

  • al_borland 6 hours ago

    I don't use Spaces at all, probably in part because of the speed. I can't bring myself to run an application all the time to solve this, when it should just be a variable somewhere that needs to change.

  • revv00 4 hours ago

    It doesn't work macbook pro(Intel Sonoma 14.4.1), any thoughts? app icon is a forbidden icon.

  • obvi8 2 hours ago

    I was never bothered by the animations, but was livid when they redid the desktop thumbnails, and offered no way to always show the preview by default. You have to mouse up to them to get the previews.

    It didn’t seem to bother the rest of the Mac world, but I used to organize my desktops in a chaotic way that worked great for me, and the ability to see the preview thumbnails as soon as I popped into mission control or whatever they call it enabled me to quickly go where I wanted to after a quick glance. I used to rename entire desktops, too.

    The whole thing instantly became worse for me when they took away my ability to name your own virtual desktops, and added the extra speed bump of making me mouse up to trigger the previews. I’m still bitter about it.

  • Aaronstotle 6 hours ago

    I think it was iOS 9 that had some glitch where the animations were completely disabled and it was a really awesome experience to click an app and have it instantly open with zero animations.

  • nkzd 5 hours ago

    Genuine question - why do people even use spaces? Why is it better than just CMD+Tab or CMD+Tilde until you arrive at the window you want?

    • wlesieutre 5 hours ago

      I can organize related windows by task, so if I have two things going on which both involve say a Finder window, a Safari window, and some other assorted things, I can switch between tasks as a group with one gesture instead of cmd-tab which will pull up both Safari windows or both Finder windows, and then maybe needing to cmd=` to switch to the correct one.

      When I'm in the appropriate space with only those related windows, the exposé gestures are also much more usable than when everything is jumbled together.

    • ciaran93 5 hours ago

      Because it makes you have to think before moving. If I am on Chrome and want to go to my code editor, I have to press CMD+Tab, see what position the code editor is in and press CMD+Tab x times to go there.

      If I uses spaces, I know exactly where my editor is, where my browser is, it is one key press away and it is always there. I use aerospace and I divide my spaces using Alt+ the qwerty keys. Q=chrome W=code editor E&R=programs open for what I am working aka Postman or Obsidian and T=MS Teams.

      My dock on MacOS is always hidden because I don't need it and now I have more screen realestate.

    • mrkpdl 5 hours ago

      For me, I use spaces constantly to help me organise/compartmentalise what I’m doing. It lets you group related windows, where command tab only brings you one window at a time.

      One example would be if I’m working on a document that draws on others I have written. Put all three in a space and that piece of work is nicely organised.

      When I have all my windows in one space I find it messy and stressful and it’s harder to find what I want.

      Overall spaces are more compatible with the way I think than command tab.

    • traderj0e 4 hours ago

      I personally don't, even when I'm doing heavy multitasking on a 13" laptop. Only exception is if something needs to be full-screen.

      It can make sense if you're keeping a lot of non-full-size windows on a larger screen and working on separate tasks that are in the same application, meaning cmd-tab won't help.

  • traderj0e 4 hours ago

    Apparently the "natural scrolling" option also reverses the swipe gestures for space switching, haha

  • KaiserPro 6 hours ago

    There used to be a commanline switch that if you used command left/right to switch it was almost instant. I'm not sure if thats still a thing

  • revv00 4 hours ago

    Not a space user, command+tab solve most of my problem. But will give it a try.

  • mrkpdl 5 hours ago

    I use spaces constantly, and I’ve never thought about the animation - I don’t think I’d ever noticed it to be honest. So it’s really interesting to read all the comments here about how frustrated people are with it. This is not a defence of it just genuine interest - I bet there are totally different parts of the OS that bother me that don’t bother others also.

    • crooked-v 3 hours ago

      Try it on an ultrawide monitor. For me it's literally nauseating to leave it turned on, as in, it actively triggers motion sickness with a monitor that width.

  • rwc 7 hours ago

    Just installed and I have to say, works exactly as promised. This is a huge quality of life upgrade, thank you for sharing it Paul.

  • ralphc 6 hours ago

    Works on my Intel mac running Sonoma 14.8.2. I use Omakub on my Linux machine and missed this when on my mac.

  • airstrike 6 hours ago

    I wonder how this compares to Aerospace, which I use daily but ultimately has felt a bit janky and slow

  • toddmorey 6 hours ago

    > it works by simulating a trackpad swipe with a large amount of velocity

    Damn, that's rather clever.

    • ibejoeb 3 hours ago

      I'm a little afraid of the failure modes, frankly. Clever, but that seems like it would b likely to exercise some under-tested timing situations. I'm not familiar with that API, so take the hunch with a grain of salt.

    • traderj0e 4 hours ago

      It's also hilarious that it works this way

  • throwatdem12311 7 hours ago

    Can’t say that the sliding animation has ever been the bottleneck to my productivity.

    • jgauth 6 hours ago

      I've seen this sentiment often. For example, in a discussion about slow nvm load times: "Does adding 0.5s delay to opening your terminal really affect your productivity?"

      I agree that these small things are not bottlenecks to my productivity. I can work just fine despite them. However there is some intangible effect they have on my mindset when I'm working. The more "snappy" my computer feels, the easier it is to enter a sort of flow state. Small bits of friction here and there add up.

    • qudat 5 hours ago

      Single monitor workflows — which are more ergonomic — make switching spaces a necessity. It might not impact productivity but it is annoying as hell switching around spaces a lot

  • walthamstow 7 hours ago

    I never run more than one space and instead switch between windows with the app Alt Tab

    • satvikpendem 7 hours ago

      I do both, Alt-Tab works well for spaces as well since it can discriminate which window is in which space.

      • willempienaar 4 hours ago

        Yes. Alt-tab makes MacOS actually usable

  • kewlzeeroe 2 hours ago

    why would you ever suggest disabling sip to "power users" seems bananas in this day and age.

  • isege 6 hours ago

    Christmas has come early! Thank you for sharing this

  • kewlzeeroe 2 hours ago

    why would you post anything that has to disable sip... seems silly in this day and age.

  • houseofmvps 6 hours ago

    Great one. Thank you for sharing this.

  • hirvi74 3 hours ago

    I eventually became so frustrated with spaces in OSX, that I essentially try to avoid using them in macOS these days. Seriously, all I want is a way to move windows from one space to another via keybindings. I am not asking for much. In fact, IIRC, I think Snow Leopard had this feature. I know there were various solutions that cropped up, and even currently there are a few hacks. It just... such bullshit that it's not built in.

    If one has a disability that hinders his or her ability to use a mouse/trackpad, then I strongly suspect there is no way for such a person to use spaces on macOS well. Though, it seems Apple could not care less.

  • IOT_Apprentice 5 hours ago

    BetterTouchTool is $25 for a lifetime license with upgrades.

    • mixtureoftakes 5 hours ago

      how can I do this with it?

      • dcre an hour ago

        It says it in the post: there’s an action you can map to keys for “move right a space (no animation)”.

  • mixtureoftakes 5 hours ago

    this was SO annoying. thank you.

    Truly baffling how apple haven't done this before

  • IOT_Apprentice 6 hours ago

    A lifetime license for BetterTouchTool with ALL its features is $25. The time the author spent on this is well over that amount.

  • adamnemecek 8 hours ago

    What do people use for Windows-like window management on macos? I tried a bunch of them and I'm not a fan of any of them.

    I actively dislike the notion of spaces.

    • dmoose 5 hours ago

      I'm a bit reluctant to draw attention to my solution since it was written to scratch my own itch and I have only had a handful of users other than myself. Last year I was seriously thinking about making linux my dev choice because coming back to a machine that had slept left me with several minutes of reorganizing the windows that had jumped to various spaces as the multiple monitors were recognized. Aerospace could put them consistently somewhere but it couldn't distinguish windows of same app. I built WinPin for that use case but then kept going to solve other things that have made using a Mac with multiple screens and dozens of windows that need to be organized around my workflows easier. I built in support for workspaces but really haven't used that myself since spaces were more of a necessary evil to organize windows rather than useful in themselves. Interestingly to make WinPin truly useful you have to turn off spaces because I can't figure out a way using what Apple gives me to determine which space a window is in.

      If anyone would like to try the app out (https://winpin.app) I'm pretty confident that downloads and update flow are working and it has been running without issue for me on multiple macs for the last 4 months. There are a lot of edge cases I'm sure I haven't seen yet, but it has truly changed my workflow and I'm interested to see what others think. Please don't try to purchase a key, it is fully functional without one. I'm still working on that with Polar.sh and want to make sure my t's are crossed and i's are dotted. Gotta be one of the weirder posts to HN since I actively do not want to sell you something right now.

    • satvikpendem 7 hours ago

      Rectangle with Alt-Tab (both open source), the latter is especially useful as I hate macOS' application- rather than window-level switching, Alt-Tab returns it to Windows-like behavior.

    • probabletrain 7 hours ago

      I use https://rectangleapp.com/ and enjoy it. I have shortcuts to move windows to the left/right half of the screen, and cycle between monitors. This, combined with native cmd+tab and cmd+` is enough for me.

    • ubercore 7 hours ago

      This doesn't answer your question, but Aerospace (tiling WM) has been good for me to not use spaces. I don't mind spaces in theory, but the slow animation, for whatever reason, just really irks me.

    • Tempest1981 6 hours ago

      My Cmd-TAB frustration is I'm usually moving the mouse while I press it, causing the mouse to select some unwanted app. It doesn't help that the row of apps forms a solid bar across the center of my display.

      Wish I could ignore mouse movement when the app switcher is displayed.

    • airstrike 6 hours ago

      Aerospace with opt+key to go to that space, cmd+opt+key to send a window to that space, then just make a mental map of where everything is. I use mnemonics like always putting discord on workspace "D" so it becomes quite fast

    • pahomov 5 hours ago

      Contexts app is perfect for win-like alt-tabbing https://contexts.co/

    • reaperducer 6 hours ago

      What do people use for Windows-like window management on macos? I tried a bunch of them and I'm not a fan of any of them.

      I actively dislike the notion of spaces.

      What do people assume Spaces is a Windows thing? It was on Unix systems decades ago.

    • fellowniusmonk 7 hours ago

      I use the r+cmd app for deterministic app switching.

      Caps mapped to right command.

      Karabiner to map dual-cmd+jkl; to mapped vertical slice so j is left quarter, j+k is left side, etc.

      dual-cmd+i moves windows between screens and dual-cmd+u rotates current window through full, top half, bottom half.

      The whole thing is deterministic and super fast and gives me more permutations than I'll ever need.

    • guessmyname 7 hours ago

      Every [*] macOS user uses Rectangle.app — https://rectangleapp.com

      The ones who don't use it is because they don’t know it exists.

      Or they are still using the (deprecated) Spectacle.app — https://github.com/eczarny/spectacle

      [*] if you wonder why I say “every user” even though it’s obviously not true is because everyone loves hyperbole in this website.

      • cloudfudge 7 hours ago

        I can prove everyone doesn't love hyberbole because I have found a counterexample, but I cannot prove everyone doesn't use Rectangle.app.

  • virtualritz 5 hours ago

    You know Apple lost it and have become what Jobs most hated when the instructions to suppress an obvious UX flaw in macOS read like a registry tweaking hack for some atrocious UX in Windows, ca 2005.

  • gib444 4 hours ago

    I installed Debian stable + i3 + x11 on a desktop today - what a breath of fresh air (not that I'm new to Linux) compared to MacOS. No bloat. No animations. No lag. A perfect tiling WM.

    No Secure Boot, no TPM, no SIP, no phoning home to the mothership to check if I'm allowed to launch an app, no spyware, no telemetry, no update nags, no trying to trick me into upgrading to the next major version.

    I tried Sway & Wayland but IntelliJ freaked out so I went to x11

    Also Nouveau seems pretty damn good these days.

    KeepassXC works much better on Linux which is nice.

    I'm keeping my M4 Macbook Air around for a while to play with local LLMs but it's not exactly the best for that, so I'll think it'll be on eBay not before long, because MacOS is getting more and more annoying...

  • jiehong 6 hours ago

    Outstanding!

  • theultdev 6 hours ago

    This is beyond stupid for macbook using trackpad gestures.

    I can understand for mouse/kbd input though.

  • tomi_dev 7 hours ago

    Curious — what was the hardest part to get right here? Was it performance or handling edge cases?

  • veber-alex 6 hours ago

    Wow, works great.

    I used to use yabai for this but I can't disable SIP anymore on a work laptop.

    Also, stuff like this is why I really hate macOS sometimes.

  • hk1337 7 hours ago

    meh, i like the animation. I normally use it with the trackpad so the swiping back and forth makes it feel more natural if there's animation.

  • user3939382 6 hours ago

    I’ve used TotalSpaces for this in the past, though Apple has essentially ruined the ability to make these tools successful with their SIP bullshit

  • j0r0b0 6 hours ago

    [dead]