Probably because Discord implements the button, no? They configure what happens when you press "X", so their configuration is in violation, not the platform.
For example, on my Android phone, whenever the mic/camera is in use, even if the app is in the background, the OS displays a green dot in the corner of the screen and when I poke it, it tells me what is using the mic/camera. This is a good default.
I don't think Windows is culpable instead of Discord, but I do think that more protection should be built into Windows, and based on this decision, Windows could get dinged for this as much as Discord.
In my experience; quite a few programs will minimize to system tray when pressing x.
Just tested in a call with Skype. Closing the windows still has the program running, recording, and the call is still active.
Ditto Camfrog.
Ditto Paltalk.
That's because most actual programs have a 'minimize to tray on closing' option enabled by default on install.
It's been like this since 1998 or so. I've been undoing that option for at least 20 years, because when I click X I expect it to GTFO.
Pressing X or Alt-F4 sends WM_CLOSE to the window. By default this is converted to WM_DESTROY and closes the window. By default, an application with no more windows open will exit.
It's quite normal for applications to intercept WM_CLOSE, for example with a modal dialog of "Do you want to save your files?".
Over the past few years it has also become common for applications, including Microsoft Teams, to interpret "all windows closed" as "minimise to Systray". Microsoft also responded to increasing use of the systray by auto-hiding most apps in it.
The issue is not "minimise to systray" per se, it's "sending user voice when the user thought they'd closed all the windows".
(bonus stackoverflow: you can separate the behavior https://stackoverflow.com/questions/9788662/how-do-i-repurpo... )
Alt+F4 is what actually closes the window, and in Discord's case, the entire rest of the app too.
More like the past few decades. Seriously, this has been a thing (usually configurable in app settings, and common in many long-running applications like messengers and music players) for as long as I can remember.
So just the same as Microsoft Teams or the vast majority of nowadays applications.
( Then again, it's not even clear what "teams" is these days given that I've somehow ended up with 2 completely incompatible copies installed on my machine. )
They since have seem to have fixed this, but for most of the pandemic it was like as described. Very annoying at the least.
Keeping the meeting going in the background is honestly pretty crazy.
And about teams... who the heck want to be kept in a meeting if they are already ready to close the app?
They are just different mindset.
X didn't appear until Windows 95.
Windows could handle this a bit better (e.g. different symbol than "X"), but there is nothing wrong with the behavior itself. A clear icon to indicate that the mic is in use wouldn't hurt either.
This is a case of lackluster UI that everybody got used to over the years and never fixed, not some kind of evil dark pattern thing.
Mac has its own share of applications going against the OS convention. There are quite a few third party Mac applications that annoyingly force the process to exit when the user closes the main window. There are Mac apps that are also starting to intercept ⌘Q and not exiting the process or, infuriatingly, making you hold the key down in order to actually exit (I'm looking at you, Chrome).
I wish product designers would please just stop thinking their app is uniquely special, second guessing OS conventions.
Alt-F4 closes the _window_, not the application. If the application can 'survive' without a window, not exiting the application is the correct behaviour.
This is even visible in the OS-controller Window Menu - hit Alt+Spacebar in any window of any app, and you'll see the Window menu appear, which will include an option for Close (the current window), showing that the shortcut for it is Alt+F4. This is even true for modal dialogs (if they are real Windows modal dialogs).
If I open blender and hit 'Render Image', a new Window will open with the rendered image. This does NOT spawn a new process. Hitting Alt+F4 on this window closes the window. This does NOT kill a process.
In Windows it's convention for the top right X to be "Quit Application" and equivalent to alt+f4.
It can be useful to have X close to system tray, in which case they can be configured to act that way on an opt-in basis.
I'd still expect an active call to close however, unless a very specific single-purpose thing like mumble. (Which still has "close to tray" opt-in iirc ).
The wider frustrating point is the erosion of the desktop as a whole and the abandonment of native desktop toolkits means it's a total crap-shoot now how something will behave by default, not just on this issue but a whole range of them.
However, keeping an active voice session open with no window open is definitely outside the norm - most apps with audio chat that I know have to audio chat strictly tied to a window.
Depends on the app. Some apps, specifically communication, have a convention of: "_" minimizes to taskbar, "X" minimizes to tray. The latter is used constantly because I don't want Discord sitting in my taskbar half the day, but I want to stay online (and sometimes in a voice chat with friends).
On that note, I find this point completely ridiculous given that: (A) Discord notifies you the first time you "X" it that it minimized, and (B) IM apps dating back to MSN Messenger in 2003 would do this.
Though I think here is a failure of Microsoft to improve the UI and use different symbols for closing the app and suspending it into the systray.
Either way, seems like a rather strict interpretation of 25.2. That said, I kind of welcome it. The principle of least surprise is something that should be much more strictly enforced and a lot of social apps make it way to easy to accidentally leak data into the public.
Anecdotally, I rarely use alt+f4 to close a window.
See, Apple put @ on Q on some languages[0] and you are required to press OPTION+Q to type @ and quite often you end up closing the app when you are trying to type an e-mail address. It's particularly annoying in browsers when you accidentally close the browser when you are about to complete a long form. I've overwritten the CMD-Q for Safari due to this particular reason.
The problem is people who are accustomed to Windows keyboard layouts (which matches the national norm) - they are accustomed to Alt Gr+Q for @, and the Alt Gr key is on Windows the key right next to the space bar... which means they press Cmd+Q on Macs instead out of muscle memory.
You can put in a Windows keyboard layout that restores your sanity on macOS [1] with only the small re-learning of using right Option instead of cmd, the problem is stuff like Adobe Premiere outright refuses to load keyboard shortcuts if it doesn't recognize the keyboard layout.
[0] https://de.wikipedia.org/wiki/DIN_2137
[1] https://jankarres.de/2013/07/windows-tastaturlayout-unter-ma...
I'm Icelandic and a programmer. I work with US Ansi layout keyboards. Working with Icelandic ISO layout is horrible when programming. All the "programming" keys are strewn all over the keyboard and hidden under the option layer. I think they did this to make space for the special letters in the Icelandic language. On the other hand in the US Ansi layout the "programming" keys are close to the home row.
Couple of examples, but you can find more if you want to: {} is easily accessible on the US Ansi, but Icelandic ISO it's under option+7 and option+0. ; is right under your pinky on the home row on the US Ansi, but shift+, on the Icelandic ISO layout.
The @ is also on Q on the Icelandic keyboards. Which is absolutely insane, because quitting applications in macOS you do cmd+Q and on windows I think it is ctrl+Q. On windows you have to do alt-gr+Q to get the @ symbol. But on macOS you can do both option+Q or option+2. I use the option+2. I'm not pressing that Q with a modifier combo, unless I intend on quitting something.
Alt+F4 does close the application, "X-ing" it however puts it into the system tray and it remains active, which bothered me from the first day i've been using it.
Whether closing the current window should close the application or not depends on many things, but having different behavior between Alt+F4 and the window close button would be very strange.
Teams and Spotify, for example, by default don't quit. Many others have a "keep application running when window is closed".
I think the expectation of Windows users is that the X does in fact quit the application, so they don't reach for Alt-F4 the same way Mac users reach for Cmd-Q when they want to quit an application.
Basing this on the common complaint of "Why does the application still stay in the Dock after I close it?" from Windows to Mac switchers.
It usually closes the active window, but Discord does close the entire application for some reason.
TBF I've been saved a few times from losing all my browser state by accidentally hitting cmd-Q.
On Windows, there is no concept of applications at all, only windows. Perhaps you can try to mess with processes, but there's not even any mechanism for activation of a process that would even allow it to begin to work in any way similar to macOS's model.
So yes. Closing all windows, on Windows, is widely assumed to terminate the associated process. This is why apps like Thunderbird, for example, close entirely when you click the X, and only actually go to the system tray when you click minimize.
Interestingly, with Discord on Windows, Alt+F4 completely closes the entire app. The close button is implemented by the webpage, however, and closes to the system tray instead of actually closing the window.
It used to be like you describe, but this is a disappearing rule. An increasing amount of companies build apps designed in a way that you need to have sysadmin skills to actually terminate the program for real.
We can't expect Microsoft to require developers to implement this 'X' correctly because Microsoft itself is exploiting this loophole by keeping some of its apps alive when the user clicks the 'x' button.
This is a common trend I already mentioned here several years ago initiated by GAFAM companies to subversively rewrite the signification of common concepts that they disagree with: - "no/decline" -> maybe later - "no/decline" -> skip for now - "no/decline" -> remind me later - "close" -> sleep" / run into background - "delete data" -> hide/hide temporarily - "delete account" -> deactivate (but keep everything) - "somebody" -> best friend - "buy/pay" -> rent - "configure" -> submit your preferences, we will take that into account etc.
All these concepts are being actively stolen from the population and I am terribly saddened to see the vast majority of our regulators have absolutely no clue about the long-term consequences of this concepts being stolen/rewritten without tacit consent.
So, yes, Discord rewrote the 'x' button but to be honest: who cares? Apparently only too few.
Interesting this is considered [Microsoft] Discord's fault and not Microsoft Windows. I quit Discord with Cmd-Q, does Alt-F4 not do the right thing on Windows? The only popular program I know evil enough to override Cmd-Q is Chrome, and I blame Apple for the failing.