← Back to context

Comment by frameset

4 days ago

> I opened Slack on macOS, the icon kept bouncing in the dock for a few seconds. I got impatient, switched to Ghostty, and started typing. Just then, the Slack window appeared, stole focus from Ghostty and the git pull command was sent to the group chat.

One of my absolute favourite features on KDE Plasma with Wayland is the global setting to control what can steal focus. It works wonderfully, and I always miss it when I have to use my work mac or windows computers.

See here for docs, under "Focus stealing prevention" - https://docs.kde.org/trunk_kf6/en/kwin/kcontrol/windowbehavi...

Yeah the obvious answer to software getting worse is to switch to FOSS. Use Linux/KDE. It's been great for a long time and only ever gets better. It's as if Windows 7 just continued to slowly iterate and add useful polish.

NixOS has a longstanding issue where library loading (and therefore program start, particularly GUI programs that load a lot) is n^2, but programs still all start in ~1 second or less on my n100 minipc. I still found that to be annoying enough to look into why it seemed so slow (and learned about the loading issue). Can't imagine things taking so long that you actually switch to another task. The same minipc can easily handle my 4k 240hz HDR monitor as well, and the whole experience is completely smooth.

The computer also just obeys me. It does exactly what I tell it to, and nothing more.

  • > It's as if Windows 7 just continued to slowly iterate and add useful polish.

    That's a pretty good description of it, I even have KDE laid out the same way I did on Windows 7 (or more accurately I guess on KDE going back even further since Linux has been my main OS since the 90's with Windows relegated to gaming).

    To this day - Taskbar shows window titles, only shows window titles for windows on that screen, there is no grouping, there is no ordering except order opened etc.

    I think autonomously in terms of which physical screen a window is on and when it was opened relative to others so I know exactly where to look/it'll be - the Mac style (and Linux/Windows style at least out the box) defaults of hiding all windows for an application behind it's icon in the dock never made sense to me, I have widescreens why do I want a doc that only takes up 40-50% of the horizontal space?.

    • > defaults of hiding all windows for an application behind it's icon in the dock never made sense to me

      Not that it's a better workflow, but macOS does make a distinction between hidden and minimized. You can "hide" an app, and all windows will be hidden, only the dock icon showing. Minimize will move that specific window into a separate area onto the dock since macOS treats apps & windows as separate entities.

      What I absolutely hate though is you can cmd+tab and bring out a hidden app (but it restores all of its windows which drives me nuts), but you can't for a minimized app without holding option before releasing the keys.

  • KDE is great, but

    > The computer also just obeys me. It does exactly what I tell it to, and nothing more.

    Is the biggest benefit and point. You can toss whatever UI/workflow style you want on top of pretty much any distro. I absolutely cannot stand the loss of user agency on modern software/operating systems. I have to use both macOS and Windows at work and I hate them almost equally (I hate windows a little more than I hate macOS, but because of Microsoft's behavior, not because of the UI).

    I feel like every piece of commercial software and OS now is like Blizzard "You think you do, but you don't"

  • I actually had to backpedal on my gaming PC from Kubuntu recently, I'm sad to say. The support for the RTX 5080 is just too rough. Every game install was chased by an hour of debugging with Claude to figure out which version of proton to use, which launch arguments to use, which between-system-and-gpu shim profile to use.

    I grant: The process is much more enjoyable than doing similar things on Windows. Kubuntu treats you like an adult and will tell you what's going on, and being able to copy the sometimes esoteric nonsense in those logs into Claude and get actionable information while not remotely understanding the underlying tech is fan-bloody-tastic.

    That said it was death by a thousand cuts. Some friends I hadn't heard from in awhile asked if I wanted to get on Warhammer Space Marine 2 and luckily, I had it installed! ... and was able to play after a mere 35 minutes listening to other people have fun on the call, while I was trying to figure out why the game would only launch to a black screen.

    So yeah, I wussed out and went back to Windows. I'll probably try again in a few months, and hope the GPU support is better. But that's also explicitly riding on nvidia to do, and they're busy selling shovels to the AI gold-rushers.

    • Hey may I suggest CachyOS + KDE? It’s very gaming oriented and you have a lot of great built in features. Everything just works.

      So far in 6 months I ran into a single issue: On day 1 of the new Subnautica early access I had to do some debugging and downgrade nvidia drivers to a previous release. But this was fixed after about a week.

      No other game gave any issue what so ever. I run everything on the cachy proton version. 4090, 5070 Ti, 5090. All work perfectly. DLSS, Frame gen, older titles too.

      If you want to there’s convenience flags to auto upgrade things like DLSS to latest versions etc. It’s not something you have to use, but I found it really nice compared to the Windows equivalents.

      I’m so beyond happy to have zero Windows left in the house. :)

      4 replies →

    • > Kubuntu treats you like an adult and will tell you what's going on

      This means so much to me in the modern era. Contrast with the SaaS approach that's also been leaking into Electron apps, etc:

      - "Something went wrong"

      - "It's not you - it's us :-("

      - "An error occurred"

      - "Uh-oh..."

      - "Too many penguins are in the defrobulator" [or whatever "lol so random" 2010 corporate mascot in-joke is applicable]

      People used to make jokes about cryptic error messages with alphanumeric codes but cryptic beats cutesy and completely uninformative every day of the week. The days of people being intimidated by computers have been over for a while now so I'm sure I'm not the only one who feels this way.

      5 replies →

    • May not be applicable to most, but this can be solved by multiple devices. I have three laptops (my work mbp, my personal mba and my daily driver which runs OpenBSD) and two mini computers (one is a server for file and misc. stuff and the other also runs OpenBSD).

      I just switch devices depending on context and needs. If it were me, I'd just use the gaming PC as a console.

      1 reply →

    • Anecdotes like yours are why I'll probably remain on Windows for the foreseeable future.

      Games on Windows just work. It's not even a question. I don't remember the last time I had to fiddle around to get a game to work properly, but it was probably 20+ years ago.

      On Linux? Might as well play a slot machine. You might score a jackpot and the game has a native Linux port that works flawlessly out of the box. You might have a decent win with a non-native but works well with Proton. But there's a good chance it either won't work at all, or requires significant fussing to make it work.

      2 replies →

    • > I actually had to backpedal on my gaming PC from Kubuntu recently, I'm sad to say. The support for the RTX 5080 is just too rough.

      What? That has nothing to do with KDE. And Ubuntu is one of the happy paths for driver support. The problem is squarely on either NVidia or overly pretentious commitment to FOSS and only FOSS.

      1 reply →

  • > NixOS has a longstanding issue where library loading (and therefore program start, particularly GUI programs that load a lot) is n^2, but programs still all start in ~1 second or less on my n100 minipc. I still found that to be annoying enough to look into why it seemed so slow (and learned about the loading issue). Can't imagine things taking so long that you actually switch to another task. The same minipc can easily handle my 4k 240hz HDR monitor as well, and the whole experience is completely smooth.

    KDE actually solved that long time ago with kdeinit (https://web.archive.org/web/20010517071320/www.suse.de/~bast... and follow-up work by Lubos, see e. g. https://conference2005.kde.org/slides/kde-performance/index....), but the new crop of developers didn't notice much difference on their high-end systems with SSDs, so they ripped it out.

  • KDE has a much older and richer history than windows 7. It’s been trying to be a safe harbor for Windows users to land in Linux for a long time.

    • What they really meant is it's like Windows if Windows didn't enshittify.

      I don't understand the plasma desktop though. Why can't I just drag a shortcut to the desktop.

      8 replies →

  • The problem is that I can't still buy a laptop at Media Markt, or similar consumer store, with a Linux distro pre-installed, and if I could, it would be OEM Linux, just like they do with Android, WebOS, Netbooks, whatever.

    Outside Internet places like HN, most consumers aren't going to Tuxedo, System 76, or building their own Linux PC.

    Thus commercial OS platforms keep winning, and the owners are anyway the ones that sponsor most FOSS projects.

    Miss Windows 7 by the way, it was when I gave up on The Linux Desktop.

  • I've spent 6 months in KDE after years on Windows, and KDE is crap in both UX and number of bugs. I love the idea of open source, but there's a long journey ahead to even match the state of Windows 2000.

    • KDE has improved a lot in recent years, but yes I would agree that it still has plenty of rough edges and little unexpected (as in slightly jarring) differences in behavior from major commercial desktops.

      I still prefer it over the bloated pile of upsells that Windows has become, but I think there’s still space in the Linux desktop world for a legally-distinct clone of Windows (sans the bad parts). KDE isn’t that, it’s its own thing and is best fit for long time Linux veterans.

  • I so want to agree. I have been a Linux user for almost 2 decades now and I still can’t close apps by throwing my mouse on the right top corner and clicking. It works on “KDE apps” and but not on Firefox so I am guessing GTK apps.

    The idea that I need to have window decorations and the “GTK window decorations” configured separately is just …

    Anyway, the point is it’s never going to be consumer friendly. Office systems managed by IT teams can switch to Linux no problem. People just complain about “weird work computer setup” and move on. But personal laptops aren’t going to be an attractive proposition.

    • > The idea that I need to have window decorations and the “GTK window decorations” configured separately is just …

      Yah, well, I'm on Plasma/KDE and that idea enables me to close apps by throwing my mouse on the right top corner and clicking on that [X] there.

      After having disabled the titlebar in FF itself once in "Customize Toolbar". It's the leftmost box on the underside, just uncheck it.

      Not even in the settings Plasma/KDE has for that, too. There only "maximize" is activated.

  • It is interesting how Linux and FOSS in general is just providing a better UX these days. I have to think its because without profit motives, people do things for passion and maybe that leads people to write code the right way instead of the "it works" way.

  • I use KDE on Bazzite. It has a couple killer UI features over Windows. It can label bluetooth devices (so I can have blue dualsense controller, pink dualsense controller, white dualsense controller, etc.). No clue why this doesn't work in Windows lol. Also the super/win + arrow keys are more predictable, super pgdn is minimize and super pgup is maximize, so I never find myself accidentally minimizing windows when trying to move them to a corner. My wife was able to easily install and play the Sims with all her mods as well. I also use Bazzite specifically because it's atomic - so when I make the mistake of giving into temptation and updating shit once every month or so, if it's broken I can just revert it.

    But I will say I've had a ton of failure to wake up from power saving issues (resolved by just disabling pretty much every power saving feature, which I was gonna eventually do anyway because I want to be able to remote into the machine), and VLC can cause the UI to lock up because of some XWayland nonsense that they're still trying to fix (I just use Haruna, KDE's default mpv-based player, and it's mostly fine). It's a little silly and was quite frustrating that Linux is still dealing with this shit. A more minor (but still irritating) issue is that each taskbar has its own set of pinned applications (instead of just being identical like in Win10/Win11), so if I change the order on one I need to manually go change it on the others.

    Overall, I like it because it's good for development and creating other stuff, the filesystem is fast as fuck (way better than WSL) it's obviously less actively antagonistic than Windows 11, Photoshop has gotten worse so I've switched to Krita which works great in KDE, and I've not been surprised negatively by anything after dealing with the previous paragraph's issues, but a non-technical user might struggle to deal with maintaining it.

  • > Yeah the obvious answer to software getting worse is to switch to FOSS. Use Linux/KDE.

    Not an option if you have to deal with iOS ecosystem of crapps.

  • > Use Linux/KDE.

    Yep. I, too, get more productive by spending a PhD worth of effort on choosing a window manager.

    • Man, I should get a PhD if it's that little effort.

      Sure, you can drive yourself nuts picking a window manager, but that's for the hardcore nerds who want to optimize everything about their WM. For a different example of the same pattern of behavior, here is the BITOG forums: https://bobistheoilguy.com/forums/

      Thousands of pages and millions of words dedicated to choosing precisely the right oil for a specific motor. Does any normal person need to do this much research into what oil to use in their car? No, but if you want to optimize you can spend weeks going down a research rabbit hole involving lab tests.

      For most people, just buy any oil that isn't the cheapest available. Same goes for window managers. I've never got into optimizing or customizing them, but for any mainstream distro the default will be absolutely OK. You can definitely invest thousands of hours into customizing and tweaking a WM, but you could also spend that time customizing emacs and making that your 'WM".

      I've never understood why people present selecting a desktop environment/window manager as this huge hurdle. Just go with the default for your distro, if you want to get super nerdy you can change it but most people won't need to.

    • It's really not that bad. KDE is perfectly usable by default. More so than the only options you get on macOS or Windows. And, if you are so inclined, you can spend that extra effort to make it sing just to you. So, the hyperbole here is really not warranted.

    • Ironically enough I find KDE to be useless these days.

      I kind of settled towards e. g. fluxbox or icewm. Mostly because I don't want to spend too much time configuring anything and these are faster than KDE at all times. Plus, KDE goes into the systemd-dependency and "no more xorg" anyway under Nate-lets-add-more-donation-daemons-Graham. Oldschool KDE was not as opinionated.

      1 reply →

I think this is less a "macOS lacks the feature to prevent focus stealing" and more they never even imagined the scenario where it takes time for the app to open. Instead of even considering that a user may add inputs while waiting for launch, potentially signaling that they are no longer requesting focus from the program they clicked on, they simply designed for the optimistic case where there never IS time for the user to give these inputs before their intention of opening the program is completed. Not saying it's any less bad from a user's perspective, but I think there's a difference in mindset here.

  • In my experience (admittedly a bit dated now) Mac apps always take a few "bounces" to launch and be ready. There are a lot of nice things about MacOS but snappy application launches isn't one that stands out for me.

  • Having owned a good number of Macs and one hackintosh in the past, that would be very bizarre assumption to overlook. App icons bouncing while something loaded was never a rare thing.

    IMO, nothing should ever steal my keyboard focus. As soon as I've typed a single character, whatever happened before, too late for you.

  • Seems like the programmers at LinkedIn never imagined that the network isn't reliable, and can't invalidate the session on actual logout; it only happens when whatever page is replacing the logout page finishes loading.

    Is it could be a bug (IMO yes, a credential disposition / security bug), or it could be a "feature tax" to keep the tracking context hot for whatever page you logged out of LinkedIn to avoid being tracked...

  • It’s probably the lack of distinguishing between a window obtaining focus because the application just launched and the window of a running application requesting focus for some other reason.

    Nevertheless, the OS could conceivably track whether there was any focus change since the process was launched or since it received the last key-press or mouse-click event, and only allow the focus change when there wasn’t (and otherwise use a non-focus-stealing notification mechanism).

  • As always, Apple has designed for the happy flow, and nothing else. Mac apps have never opened instantly, this is nothing new.

    • They can open nearly instantly, but they need to be well-built native apps. Lumbering behemoths like Adobe CC or anything Chrome-based is going to be a bit slow, and even smaller apps that pull in a big foreign UI toolkit are going to take a tick or two longer to start.

      It’s too bad that the art of building lightweight applications is becoming a lost art.

    • same with iphones and switching between cellular and wifi connections. I'll be walking away from or toward my home or my office and there's just barely a wifi connection, but hardly enough for any requests or responses to even make it through, yet Apple never allows the phone to fall back toward the cellular connection.

      I can't believe in all these years they haven't implemented a dual setup where they connect the wifi and do some kind of test connection or request to confirm it's a stable signal before entirely switching away from cellular data.

      3 replies →

    • On the current M series hardware, in my experience, it's rare for the icon to land from its first bounce before the software is up and ready.

  • If anything, they've already gone above and beyond by allowing users to even make inputs while an app is launching.

A fantastic feature, but unfortunately currently broken (as in over- rather than under-zealous) for prevention levels other than 'Low': https://bugs.kde.org/show_bug.cgi?id=509990

  • This is the absolute perfect encapsulation of the Linux problem and the Linux appeal:

    Yes, it has the magical setting to fix all of your problems and frustrations, and yes it’s a finicky broken bitch to actually get working for your use case.

    I say this with love.

1000x this.

The single most soul-crushing experience I have on today's tech is the whoopee cushion.

I type this on a touch device that randomly Cheevers the words. (It literally changed "changes" just now. Henceforth, my word for this shall be Cheevers.) it Cheevers the words. It offers suggested words that you can tap to complete the word you're typing, and milliseconds before your finger makes contact with the screen, the suggested word flips to Cheevers and your finger taps that.

Now with the new improved iOS Liquid Glass, and possibly with janky web app development kits, buttons can move as you try to click on them. UI animation was supposed to help the user. But helping the user is hard.

Pop ups. The web needs more pop ups. More "Are you enjoying this app?" in your face.

But on the desktop, I recall complaining to a Windows (the OS) developer about stealing focus... in 1995. At the time, classic macOS tended not to do this, but it happened quite often multitasking on Windows, and I couldn't offer any constructive feedback, no obvious solution.

The sheer unpredictability, at 100 millisecond time scale... a few hours of this and I'm literally shaking. Because it affects muscle response, a startle reaction. Keeps firing away at the limbic system.

If I wanted slot-machine online gambling levels of simulation, I'd go to a casino. I hate this stuff. I hate where "engagement" metrics and the quest for more clicks has brought us.

Make it stop. I'm trying to work, here.

This doesn't happen on Windows. Slack loads in the background and the taskbar icon just pulses when it's ready. I have to switch to it manually from whichever app I'm working in as Slack loads.

This is one of the most consistently annoying behaviors I experience in macOS, and I feel so validated seeing others express this as well.

These are the small but extremely user-centric quality of life features that I like about KDE. Most applications I use aren't KDE based (Firefox, VSCode, emacs, movie) but KWin, Dolphin, Plasma panels have unmatched ease whih grows on you.

I never understood the OSes/desktop environments that stole focus by default. So many secrets/credentials have been shared because of that. Just give me a blinking notification that the app/window is available in the notification/taskbar/appdock area ffs. Yes that is one more click/alt-tab but that is much better imho. At least ask for preference on first ever login.

That is definitely needed. On Mac it is really infuriating how stuff (auto update etc) just take focus/pop up crap. I am literally never interested in it and am confused why I cannot just say [x] Force apps to mind their own business. We have f’ing notifications for this; why does it need a dialog window?

  • Maybe it's a hazy memory, but from 2007-2011 my main computer was a MacBook Pro. I swear in that era, when an app wanted attention it would bounce in the dock endlessly.

    That was annoying, but it let you finish doing what you were doing until you were ready to switch focus.

  • I've really enjoyed how this started happening on windows that some pop ups steal focus during full screen gaming; extra satisfying is that "game mode" is set to prevent that. It's like a little minigame to boost my aggression level.

My "favorite" aspect of the Slack web app, which might have been fixed, as I haven't seen it recently, is if you typed up -> r (I believe it's r) to open the emoji picker, typed a few characters (e.g. "eyes") and pressed enter. Well, if the emojis hadn't loaded by then (and apparently they're loaded fresh every time), they would pop in and often, the a different emoji would be picked than the one that was visibly highlighted when I pressed enter.

My Arch Linux KDE Desktop with the Haswell i7-4770S CPU (from 2013) actually feels snappier than MacOS on my MacBook Pro M4. Sure, the MacBook has far superior performance overall, but if you just want to move some windows or get a response from a right-click, it just feels slower.

I am doing my best to implement a rule with apps where the third time in a single session you bother me about something that has absolutely nothing to do with the workflow I opened to app for, I uninstall the app. I don't want to update my spreadsheet app, I want to work on this spreadsheet. I don't want to tour the new features from the last update, I want to work on this spreadsheet. I don't want to sign in in order to access an AI companion (which I also don't want), I want to work on this spreadsheet. I damn sure don't want to leave a review in the app store for you and at this point you don't want me to either. You want me to work on this spreadsheet.

Between that and this insane thing MacOS does where when I click an app in the dock any random app opens up (and, per above, begins barraging me with things designed to "direct" my attention) I'm ready to switch to something whose primary feature is not acting like the dev team spent the last ten years trying to arbitrarily bump the number of features up and ending up with a giant pile of buggy features that nobody asked for.

And for my final gripe, at least for the next 15 minutes, trying to teach a computer how to do what I mean instead of what I say was a mistake. I learned computers back in the day where there was no attempt at interpretation of intent and instead the machine did exactly what I told it to, and that's how I prefer it because it simplifies the problem space when the machine is misbehaving. I told it to do the wrong thing. That's the only possible answer. But now there seem to be so many layers attempting to interpret meaning from actions that the problem space expands to make room for the idea that I told it to do the right thing, but it guessed that I meant something different and then did that instead. As an example, just trying to highlight something in my Mac's terminal app so that I can copy/paste it. I click the terminal app on the dock, and focus switches to that terminal app but also docker desktop, which is on top of the terminal and doesn't go away when I click into the terminal. Instead I have to interact with docker desktop. So I minimize the app I never asked for, and actually have access to the terminal. I'm using the built-in touchpad and have to select an entire line, so I start from the right with one finger, click and drag. But another finger, or perhaps the heel of my hand, gets close to the touchpad and MacOS is SO EXCITED TO HELP that it decides to interpret that as a right click which results in my selection getting interrupted halfway to bring up the right click menu, whereupon I'm presented with the option to do several things with this approximately 40% of a CLI command including: search for it in webster's dictionary, convert it to spoken word, convert it to Chinese (my choice of traditional or simplified), or try to open it in finder despite it being a portion of a command and not a file.

All of this points to a Goodhart's Law situation where someone decided the size of the pile of features was the measure of the quality of a piece of software, rather than how elegantly it does the job the user bought it for. AI has also significantly increased the speed with which a feature that no one asked for and that doesn't work correctly can be delivered.

  • I’d have no software installed after a week!

    • that's the ideal case, as then I would have no pointless interruptions to keep me from my real work. the fact that that real work would include reinventing the entire universe of software from scratch is a trivial detail.

On Windows, UWP was supposed to solve this (by blocking apps from taking focus directly, but having the OS/shell create an app window immediately on launch and give focus to it) but most apps aren't UWP apps.

That has been there since at least KDE 3 and I do agree, I remember learning about that feature. 400 years ago and still chefs kiss.

That would only happen if you were not looking at the text you are typing. A-Are you looking DOWN ON THE KEYBOARD?!

  • I think there is a law of the universe which says it must happen right after you've mentally decided to type enter but before your fingers have finished.

How would that global app ban help? You do want the application to steal focus when necessary. It's just in this case the user has made the decision to not wait for startup and switch to another app. Aggravating step - he was typing.

Is this workflow part of the Kwin settings? It's not interrupting typing part of the settings?

  • Any app should be ready to accept focus. It should never steal focus. When I start an app, and wait for it to launch, I am attempting to give it focus. I can withdraw that intent at any time by doing something else (e.g. switching apps) and the launching app should finish launching and wait in the background.

    • Your specific example is just repeating what I've said, but your generic point is wrong: let's say you have an important task in an app with unavoidable interruptions, during which you switch to your browser to mindlessly scroll.

      You most likely want to return to the main task as soon as possible because that scrolling is just a time filler because you can't do anything productive. So you don't need any notification and extra action, just switch back asap and continue work with as little interruption as possible.

      But even in the specific example that depends entirely on what you're switching from and to and for what reason. If it's for something quick non-interactive (I don't know, switch to a file browser to check the file name or something), then yes, you'd prefer to seamlessly be switched back to the main app to do the thing you launched it for.

      But if it's not an important app, then yeah, you just want it to be ready for you and switch to it whenever you decide to avoid the launching delay later

      34 replies →

  • > How would that global app ban help? You do want the application to steal focus when necessary

    Maybe you do. I don't. With this setting we can both be hapopy.

  • >You do want the application to steal focus when necessary

    No I don't. We recently switched to Zoom at work. Meeting notifications steal my focus (Windows 11 device) and it's fucking terrible. Nothing should ever steal focus.

  • I can not think of a single scenario where stealing focus would be desirable.

    Also, the presumption that I'm going to wait around for 5+ seconds whilst an opens is unrealistic.

    • That’s easy: a proper emergency.

      Let’s say you’re controlling a piece of machinery with an app in the background and the machine starts on fire. Wouldn’t it make sense for the app to steal focus so it can show you some alarms (in addition to audible alarms which you may not hear because they’re in another room).

      2 replies →