I get this limits what apps can do and giving access to raw graphics is important, but it being the default makes it more of a pain for both making apps (especially cross platform) and trying to have a consistant experience as a user. Let alone the accessibility issues when apps decide they should reinvent rendering without thinking about screen readers or high contrast themes or magnification etc.
@mauve god yes, the GUI app landscape on linux is obscene. The sheer annoyance I feel when I want to download one small utility and it has to also install the entire KDE backend to render it to the screen. As much flak as I give Windows for all the things it does wrong, at least the windows API is consistent enough that you can still (often) run win3.1 apps on win10. That provides a stable target for everyone from app to driver developers, vs the current linux situation where it's like "oh you wanna write to the screen? Would you prefer qt, GTK+, writing directly to xlib and reinventing everything yourself, KWayland, or some number of wayland compositors with their own rules and expectations? Btw there IS a wrong answer, but it's up to you to find out what that answer is :)"
inb4 "but more options is good, this is the FOSS way": yes! more options are good! But some kind of barebones gui subsystem that's a little bit newer and more fleshed out than writing to bare xlib would be a GREAT thing for cross-compatibility.
@Dio9sys I think one thing that's tough is that the Linux desktop is actually mostly GNOME or KDE apps fighting for dominance and assuming they're in their preferred env, and then a bunch of apps struggling to be in between them or also trying to work for MacOS/Windows.
Maybe with Wayland becoming more of a thing there's space for a new thing which has a minimal UI to customize which will use native GTK/QT when it detects the right desktop?