The highly anticipated release of GTK 4.14.0 has finally been unveiled after seven months of development. GTK 4 is being developed as part of a new process that aims to offer stable and supported APIs to application developers for multiple years. This means that developers can now create applications without the fear of having to constantly modify them every six months due to API changes in the next GTK branch. The official release of GTK 4.14.0 can be found here.
Looking ahead, plans are in motion to establish an experimental branch, named 4.90, which will focus on developing functionalities for the future release of GTK5. The forthcoming GTK5 branch is expected to introduce significant changes that could potentially disrupt API compatibility, such as the transition of outdated widgets like the old file selection dialogue. There are also discussions about the possibility of phasing out the X11 protocol in the GTK5 branch and exclusively utilizing the Wayland Protocol. More details about the future of GTK can be found here.
Some of the key improvements in GTK 4.14 include:
- The incorporation of new unified NGL and Vulkan drawing engines that utilize graphic APIs such as OpenGL (GL 3.3+ and GLES 3.0+) and Vulkan. Both engines are based on the Vulkan API, with the NGL engine for OpenGL featuring an additional level of abstraction built on top of Vulkan to address the differences between OpenGL and Vulkan. This unification has simplified the codebase maintenance and synchronization of both engines. The new engines also offer enhanced capabilities such as contour smoothing, arbitrary gradients, and fractional scaling.
- The inclusion of the new NGL drawing engine and default support for Vulkan API, with Vulkan 1.3 support required in the default configuration.
- Enhancements to the GSK library (GTK Scene Kit) for drawing graphic scenes through OpenGL and Vulkan. More information about these improvements can be found here.