"borderless" apps 

I hate how, thanks to Microsoft and their absolutely bad software design, we've created a false equivalence between "borderless" and "fullscreen"

borderless windows don't have to be fullscreen. in fact, it is very reasonable to have a large, borderless window that's not the full screen

but really, the reason for this equivalence is due to bad optimisation on Windows. you see, on older versions of Windows, making one application fullscreen essentially deleted everything relating to the rendering of all other applications from memory, which had to be reset once the fullscreen application was closed. on one hand, the fullscreen application was given direct access to control everything about the graphics, but on the other hand, this required a lot of expensive setup and teardown every time you switched between the fullscreen application and anything else

this optimisation was very necessary when it was initially implemented, but it stayed along way longer than it should have. it was from a time when a lot of software kind of had to act like its own operating system, being given control of large swaths of computer resources in order to avoid the extra overhead of running inside another operating system. a lot of these problems were solved by hardware solutions which essentially let the operating system delegate resources in a "virtual" way, so that things could be programmed as if they had access to all of hardware but in reality were still limited by the operating system

but anyway, since a lot of time it would destroy performance to have to reset things when switching out of a game, the solution became to avoid fullscreen applications for a long period of time and instead still run windowed applications, but "trick" Windows into making them feel like fullscreen apps. this is where "borderless" applications came in. essentially, you could make a window the size of the entire screen and just tell it to not have the border of controls traditionally associated with a windowed application, and it would basically be entirely like a fullscreen application to the end user

except the difference between this and a regular fullscreen application is that the graphics for the window are still entirely managed by the windowing system, and you don't need to do all of this complex setup and teardown to switch between the borderless application and everything else. this doesn't affect the performance of the application at all on the modern hardware it was intended to support, but it removed the need for the expensive switching, and crashes that might occur when switching between fullscreen and windowed mode

and I should add, this is specifically a Windows problem because the other main windowing system at the time, X11, was… well, it essentially didn't have the need for this kind of optimisation, but for different reasons. X11 was designed to run on mainframes, and was set up as a server: you had one big, fancy computer running the windowing server, and all of these smaller computers that acted as terminals to display their own windows. the idea of one window taking up the entirety of graphics hardware was seen as confusing because, well, all that the client computer was doing was rendering the graphics, and the concept of borderless windows also didn't make sense since the windowing server didn't manage the borders at all, and it was the responsibility of individual applications

like I said, the borderless optimisation was very clever to work around problems, as was the fact that fullscreen applications resulted in a full mode reset and delegation of the graphics hardware to the application, but… it long outstayed its welcome, and even now you have games that offer a distinction between "true fullscreen" and "borderless windowed" when there really is no meaningful difference any more, despite the fact that for mostly historical reasons people still swear that borderless is better.

borderless windows should be exactly that… borderless windows. but instead we get nonsense about an old optimisation that no longer applies

Follow

re: "borderless" apps 

@clarfonthey alt-tabbing out of true fullscreen still takes noticeably longer and hides the fullscreen application, even if I'm alt-tabbing onto my second monitor. If I want to play a game and use $chat_app at the same time I have to run it borderless or it's a pain

· · Web · 0 · 0 · 0
Sign in to participate in the conversation
Awoo Space

Awoo.space is a Mastodon instance where members can rely on a team of moderators to help resolve conflict, and limits federation with other instances using a specific access list to minimize abuse.

While mature content is allowed here, we strongly believe in being able to choose to engage with content on your own terms, so please make sure to put mature and potentially sensitive content behind the CW feature with enough description that people know what it's about.

Before signing up, please read our community guidelines. While it's a very broad swath of topics it covers, please do your best! We believe that as long as you're putting forth genuine effort to limit harm you might cause – even if you haven't read the document – you'll be okay!