4 ms·
You are comparing a runtime API (Win32/Xorg) with a compile-time library (GTK). They are totally different. It's totally fine for a library to have new versions
by rdsubhas 6y ago
You are comparing a runtime API (Win32/Xorg) with a compile-time library (GTK). They are totally different. It's totally fine for a library to have new versions, and for those new versions to be breaking.
You can run two applications with GTK3 and GTK4, and maybe 10 years into the future GTK10 in parallel. They will just look different, but nothing else will change. It's not as if the old application built with GTK3 will crash or not start.
But if you break the Win32 API, a whole lot of desktop applications will crash.
- CyberRabbi 6y agoIf GTK were simply a so-called compile-time library, they wouldn’t encourage people to port their applications to the newest version. Applications are not expected to vendor private versions of GTK with their source distributions.
- seba_dos1 6y agoIt is though. Otherwise you wouldn't be able to run The GIMP on current platforms, as its stable release is still on GTK2. Porting is encouraged because GTK2 isn't maintained anymore and lacks features expected in 2020, like hidpi support.
- CyberRabbi 6y agoDo you realize that it’s far easier for an application like GIMP to add hidpi support to gtk2 than port to GTK3/4? If that’s the case then you have failed as a library developer.
- seba_dos1 6y agoNonsense. Make a thought experiment and imagine that each new major GTK (or Qt) version had a different name. You'd still have old GTK, which wouldn't be maintained anymore as the devs moved on, and new NTK or whatever, which would be what was still developed and used these days. Somewhat similar to old GTK since that was its roots, yet distinct. And that's exactly what happens, they just reuse the name because well, why wouldn't they. You can still use GTK2 just like you can use Win32 API, but nobody does modern apps in either GTK2 or Win32 API or expects them to smoothly blend into modern desktop these days. Not even speaking about the fact that The GIMP is a very special case that makes it probably the hardest GTK app to port to newer versions in existence.
- CyberRabbi 6y agoYea, professional applications use win32 directly and it blends in well with the OS.
- cycloptic 6y agoEven if GTK2 were to get hidpi support, it would still require making the same types of changes in the applications to support them that would be required to port it to GTK3 and get hidpi there anyway. Only the most trivial applications without any custom drawing/widgets would have hidpi working without any changes. Rule of thumb, if the app's code uses raw pixel units anywhere, that would need to be modified to account for scale. You would probably need to modify all the GTK2 theme engines too.