Skip to content

This week in KDE: Triple buffering and other sources of amazingness

Saturday, 25 May 2024 | Nate Graham


We just branched for Plasma 6.1 and released the beta, which means the window to add new features has now closed. But before it did, a ton of amazing stuff snuck in! Plasma 6.1 promises to be a large and impressive release.

Probably the most impactful thing is triple buffering support on Wayland! This should make animations and screen rendering smoother in general–ideally up to the level of the X11 session, which already did triple buffering. This work by Xaver Hugl has been in progress for a long time and lands in Plasma 6.1. Link

That’s not all though… oh no, not by a long shot:

New Features

Dolphin now includes a feature to move the selected items into a new folder, all at once (Ahmet Hakan Çelik, Dolphin 24.08. Link)

KDE’s desktop portal implementation now includes support for the Input Capture portal (David Redondo, Plasma 6.1. Link 1, link 2, and link 3)

Plasma now supports enabling and disabling the feature of some Lenovo IdeaPad and Legion laptops whereby the battery can be configured to only charge up to a specific fixed level (sometimes 60%, sometimes 80%; it depends on the machine) to maximize battery health (Fabian Arndt, Plasma 6.1. Link)

Plasma’s Edit Mode has a beautiful new zoom-out effect to help you notice and understand you’re in a separate mode, and also make it easier to get out once you’re done (Marco Martin, Plasma 6.1. Link 1 and link 2):

You can now configure the screen locker to unlock without a password, letting it be used as a traditional screensaver if you enable a visually attractive wallpaper plugin and disable the clock (Kristen McWilliam, Plasma 6.1. Link)

UI Improvements

Our long national nightmare of jarring error beep sounds is now over!!!! Plasma now intercepts attempts to ring the system bell (which generally sounds so unpleasant that you feel the need to immediately commit an act of violence) and replaces them with a nice sound from the active sound theme (Nicolas Fella, Plasma 6.1. Link 1, link 2, and link 3)

KRunner search results already prioritized apps by default, but now they also prioritize System Settings pages too (Alexander Lohnau, Plasma 6.1, link 1, and link 2)

On System Settings’ Power Management page, a few UI controls that used spinboxes have been replaced with fancy comboboxes. This fixes some bugs and offers a faster interaction paradigm for the basic use case of choosing a common value — with an expert workflow of letting you select anything you want in a dialog box (Jakob Petsovits, Plasma 6.1. Link):

System Settings’ Printers page now guides you through the process of installing the system-config-printer package to improve printer detection, if it wasn’t pre-installed by your distro (Mike Noe, Plasma 6.1. Link)

Getting information from weather providers can sometimes be a bit flaky, so Plasma’s Weather Report widget now informs you to just try again in a little bit when this happens (me: Nate Graham, Plasma 6.1. Link):

The way Welcome Center presents KRunner has gotten a major overhaul, and now shows a fancy animated depiction of actually using it! In addition, the final page is now more streamlined and less demanding of your time and money (Oliver Beard, Plasma 6.1. Link 1 and link 2):

Plasma’s Weather Widget no longer shows the “Appearance” page in its config window when used on the desktop, since nothing on that page is applicable to the desktop form factor (Ismael Asensio, Plasma 6.1. Link)

KWin’s custom tile editor now uses clearer terminology for creating split views (me: Nate Graham, Plasma 6.1. Link):

System Settings’ Background Services page is no longer actually visible in System Settings by default; everything here is an implementation detail, and monkeying with its settings is an easy way to break your system. If you’re an expert, you can still get to it by searching for it in KRunner, but it won’t be shown in System Settings anymore (Nicolas Fella, Plasma 6.1. Link)

The remainder of the header messages in System Settings pages have been ported to the new frameless style, making them all consistent now (me: Nate Graham, Plasma 6.2. Link):

Improved the way SVG images render on screen when using a fractional scale factor, reducing blurriness (Marco Martin, Frameworks 6.3. Link)

Bug Fixes

Filelight no longer counts files stored in OneDrive cloud as local files that occupy space (Harald Sitter, Filelight 24.05.1. Link)

In KColorChooser, the “Pick Screen Color” button is no longer missing on Wayland (Thomas Weißschuh, KColorChooser 24.05.1. Link)

Made Plasma more robust against crashing when any widgets have malformed size values, which can happen under certain circumstances (Marco Martin, Plasma 6.0.5. Link)

When KWin falls back to using a software cursor after the graphics driver rejected the use of a hardware cursor, this can no longer lock up the entire screen under certain circumstances — such as with XWayland-using apps on an Apple Silicon Mac (Xaver Hugl, Plasma 6.0.5. Link)

Spectacle no longer takes blurry screenshots on systems with multi-screen plus mixed-scale-factor setups (Volodymyr Zolotopupov, Plasma 6.0.5. Link)

Global shortcuts are now more robust and stable on NixOS and other distros that regenerate the sycoca cache repeatedly in an automated manner (Vlad Zahorodnii, Plasma 6.0.5. Link)

Fixed multiple longstanding issues in System Settings whereby switching pages, clearing the search field, or opening a new page from outside of System Settings would cause the sub-category column to show the wrong thing (Nicolas Fella, Plasma 6.0.5. Link 1, link 2, and link 3)

Fixed a case where turning off an external monitor plugged into a laptop with its lid closed could cause KWin to crash (Xaver Hugl, Plasma 6.1. Link)

On Wayland, Plasma no longer quits when you open an enormous number of windows (Xaver Hugl, Plasma 6.1. Link)

The “Activation Gestures” category of System Settings’ Accessibility page is back, after being accidentally removed when the page was ported to QML (Nicolas Fella, Plasma 6.1. Link)

On Wayland, when any apps that have System Tray icons are running, there’s no longer a little invisible square in the top-left corner of the screen that eats input, and also no elevated CPU usage with certain screen arrangements (David Edmundson, Plasma 6.1. Link 1 and link 2)

Pressing Meta+B repeatedly no longer opens multiple Power Profile chooser OSDs, and therefore no longer represents a way for you to exhaust your system’s memory by generating an infinite stack of them (Fabian Arndt, Plasma 6.1. Link)

Made KWin more reliable about detecting screens’ physical sizes (Jakub Piecuch, Plasma 6.1. Link)

When using a Plasma Panel in “Fit content” mode with only an Icons-Only Task Manager on it, there’s no longer unnecessary empty space on the right side of it on login (Akseli Lahtinen, Plasma 6.1. Link)

In the dialog that lets you choose windows and screens to share, clicking on the checkboxes to select items now works. Previously you had to click on the whole items themselves, but the checkboxes didn’t work; now both work (me: Nate Graham, Frameworks 6.3. Link)

Fixed several issues preventing certain Breeze icons from adjusting their colors properly when run with a dark color scheme, as well as issues with generation of static dark-theme-compatible icons (Corbin Schwimmbeck, Frameworks 6.3. Link 1 and link 2)

Re-spun the KWidgetsAddons framework to include a bugfix for an issue that caused OBS to crash when selecting files, and also one that caused KMessageWidgets to sometimes show incorrect background colors (Joshua Goins and Albert Astals Cid, KWidgetsAddons frameworks 6.2.2. Link 1 and link 2)

Re-spun the KWallet framework to include a bugfix for an issue that caused the Secrets portal to not work in Flatpak apps (Nicolas Fella, KWallet 6.2.1. Link)

Context menus should now be a lot less likely to appear as odd standalone windows with titlebars when activated on an inactive window (Vlad Zahorodnii, Qt 6.7.2. Link)

Other bug information of note:

Performance & Technical

Reduced frame drop on a variety of hardware (Xaver Hugl, Plasma 6.1. Link)

Improved the speed with which Discover launches and how responsive it is when scrolling through long app lists while the Flatpak backend is active (Aleix Pol Gonzalez, Plasma 6.1. Link)

Automation & Systematization

Added some new autotests for Plasma panels and containments to make sure they get sized and located correctly (Marco Martin and Akseli Lahtinen. Link 1, link 2, and link 3)

…And Everything Else

This blog only covers the tip of the iceberg! If you’re hungry for more, check out https://planet.kde.org, where you can find more news from other KDE contributors.

How You Can Help

The KDE organization has become important in the world, and your time and labor have helped to bring it there! But as we grow, it’s going to be equally important that this stream of labor be made sustainable, which primarily means paying for it. Right now the vast majority of KDE runs on labor not paid for by KDE e.V. (the nonprofit foundation behind KDE, of which I am a board member), and that’s a problem. We’ve taken steps to change this with paid technical contractors — but those steps are small due to growing but still limited financial resources. If you’d like to help change that, consider donating today!

Otherwise, visit https://community.kde.org/Get_Involved to discover other ways to be part of a project that really matters. Each contributor makes a huge difference in KDE; you are not a number or a cog in a machine! You don’t have to already be a programmer, either. I wasn’t when I got started. Try it, you’ll like it! We don’t bite!