It's not just the modern backends that are exciting here (GNOME and Cairo always supported lots of backends, including a weird JavaScript/HTML backend), but also the new scene graph that renders the window as a whole rather than the classical one-widget-at-a-time. I think that plus Wayland is going to lead to practically no tearing anymore, even on very complex GUIs on low-power systems.
I've ported lots of code, some quite complex, from GTK+2 to GTK+3, and it honestly wasn't too hard. A few deprecations, a few different ways of doing things (all of them improvements), and that's it. (Theme developers, however, had a terrible time, as everything changed.) From what I see now the leap from GTK+3 to GTK+4 is much smaller. Mostly they are just totally deleting the things that were deprecated before (that's what jumping to a new major release number entails) and changing the underlying technologies. The API is incremental progress. Oh, and of course some new widgets if you want to use them.
I've ported lots of code, some quite complex, from GTK+2 to GTK+3, and it honestly wasn't too hard. A few deprecations, a few different ways of doing things (all of them improvements), and that's it. (Theme developers, however, had a terrible time, as everything changed.) From what I see now the leap from GTK+3 to GTK+4 is much smaller. Mostly they are just totally deleting the things that were deprecated before (that's what jumping to a new major release number entails) and changing the underlying technologies. The API is incremental progress. Oh, and of course some new widgets if you want to use them.
Comment