Everything is better in color. Even better if it is HDR. In this post, we’ll provide an overview of what is happening with color in GTK, without diving too deeply into the weeds of colorimetry and color science. The high-level goals of this effort are to enable proper handling of HDR content and color-managed workflows. … Continue reading "The...
We first introduced support for dmabufs and graphics offload last fall, and it is included in GTK 4.14. Since we last talked about, more improvements have happened, so it is time for another update. Transformations When you rotate your monitor, it changes its aspect from landscape (say, 1920 x 1200 to portrait (1200 x 1920). … Continue reading...
We first introduced support for dmabufs and graphics offload last fall, and it is included in GTK 4.14. Since then, some improvements have happened, so it is time for an update. Improvements down the stack The GStreamer 1.24 release has improved support for explicit modifiers, and the GStreamer media backend in GTK has been updated … Continue...
GTK 4.14 brings various improvements on the accessibility front, especially for applications showing complex, formatted text; for WebKitGTK; and for notifications. Accessible text interface The accessibility rewrite for 4.0 provided an implementation for complex, selectable, and formatted text in widgets provided by GTK, like GtkTextView, but out...
GTK 4.14 will be released very soon, with new renderers that were introduced earlier this year. The new renderers have much improved support for fractional scaling—on my system, I now use 125% scaling instead of the ‘Large Text’ setting, and I find that works fine for my needs. Magical numbers Ever since 4.0, GTK has … Continue reading "On...
As we often do, a few members of the GTK team and the wider GNOME community came together for a two-day hackfest before FOSDEM. This year, we were aiming to make progress on the topics of accessibility and input. Here is a quick summary of what we’ve achieved. Accessibility We agreed to merge the socket … Continue reading "GTK hackfest updates"
Recently, GTK gained not one, but two new renderers: one for GL and one for Vulkan. Since naming is hard, we reused existing names and called them “ngl” and “vulkan”. They are built from the same sources, therefore we also call them “unified” renderers. But what is exciting about them? A single source As mentioned … Continue reading "New...
Some of us in the GTK team have spent the last month or so exploring the world of linux kernel graphics apis, in particular, dmabufs. We are coming back from this adventure with some frustrations and some successes. What is a dmabuf? A dmabuf is a memory buffer in kernel space that is identified by … Continue reading "Introducing graphics offload"
In the first part of this series, we introduced the concept of paths and looked at how to create a GskPath. But there’s more to paths than that. Path Points Many interesting properties of paths can change as you move along the trajectory of the path. To query such properties, we first need a way … Continue reading "Paths in GTK, part 2"
It is no secret that we want to get rid of cairo as the drawing API in GTK, so we can move more of our drawing onto the GPU. While People have found creative ways to draw things with render nodes, they don’t provide a comprehensive drawing API like Skia or, yes, cairo. Not a … Continue reading "Paths in GTK"
Our last post on accessibility in GTK4 was a while ago, time for an update. Thankfully, we have Lukáš Tyrychtr at Red Hat working on accessibility now. Accessibility – How does it work? One of the bigger changes in accessibility from GTK3 to GTK4 was that we have a new application API that is modeled … Continue reading "Evolving accessibility"