<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>KDE Blogs</title><link>https://blogs.kde.org/</link><description>Recent content on KDE Blogs</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Fri, 14 Aug 2026 17:14:25 -0400</lastBuildDate><atom:link href="https://blogs.kde.org/index.xml" rel="self" type="application/rss+xml"/><item><title>This Week in Plasma: Bi-Directional RDP Clipboard Sync</title><link>https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/</link><pubDate>Sat, 15 Aug 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week was full of user interface improvements and performance enhancements, and we snuck in a few features as well:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Remote desktop sessions now offer a fully shared clipboard, rather than only sending the server’s clipboard to the client. (Nick Haghiri, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/213"&gt;krdp MR #213&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Events shown in the Digital Clock widget now display their descriptions inline, rather than in a hover tooltip. (Francesco Fortunelli, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=429700"&gt;KDE Bugzilla #429700&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The scrolling speed sliders on System Settings’ Mouse and Touchpad pages are now accompanied by spinboxes that permit fine-tuning their speeds. (Wladimir Leuschner, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=477745"&gt;KDE Bugzilla #477745&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Scroll speed spinboxes on System Settings’ Mouse page" src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/scroll-speed-spinboxes.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;Discover now shows all of the external links that apps can set in their metadata. (Taras Oleksyn, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522213"&gt;KDE Bugzilla #522213&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="QBittorrent’s many external links shown in Discover" src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/qbittorrent-with-lots-of-external-links.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;Interactive UI elements on the logout screen are now only shown on the active monitor, mirroring the same thing on the lock and login screens. And the whole thing now fades in and out faster, too. (Ramil Nurmanov, and Nate Graham, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=431382"&gt;KDE Bugzilla #431382&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9711"&gt;kwin MR #9711&lt;/a&gt;)&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/logout-screen-tweaks.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;p&gt;The wallpaper chooser UI that’s visible in System Settings and the desktop configuration window now loads in a smoother and less glitchy-looking way. (Artem Grinev, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6892"&gt;plasma-workspace MR #6892&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Power &amp;amp; Battery widget’s “Manually Block Sleep and Screen Locking” switch is now vertically aligned to its icon. See, KDE really does care about margins and alignment! 😁 (Angel Parra, &lt;a href="https://invent.kde.org/plasma/powerdevil/-/merge_requests/662"&gt;powerdevil MR #662&lt;/a&gt;)&lt;/p&gt;



&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;div class="swiper-slide swiper-slide-active"&gt;
 &lt;img src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/alignment-new.png" alt="New" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;New&lt;/span&gt;
 &lt;/div&gt;
 &lt;div class="swiper-slide"&gt;
 &lt;img src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/alignment-old.png" alt="Old" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;Old&lt;/span&gt;
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;


&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-667"&gt;Plasma 6.6.7&lt;/h3&gt;
&lt;p&gt;The Power &amp;amp; Battery widget’s tooltip no longer talks about scrolling to change the power mode on systems without either of the &lt;code&gt;power-profiles-daemon&lt;/code&gt; or &lt;code&gt;tuned-ppd&lt;/code&gt; systems installed and working. (Nate Graham, &lt;a href="https://invent.kde.org/plasma/powerdevil/-/merge_requests/663"&gt;powerdevil MR #663&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-675"&gt;Plasma 6.7.5&lt;/h3&gt;
&lt;p&gt;Fixed a somewhat common way that Discover could crash on systems using the RPM-OSTree architecture, such as Fedora Kinoite. (Aleix Pol Gonzalez, &lt;a href="https://invent.kde.org/plasma/discover/-/merge_requests/1385"&gt;discover MR #1385&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;If the &lt;code&gt;fwupd&lt;/code&gt; system service is broken or masked using systemd, the rest of Discover still works as expected. (Tobias Fella, &lt;a href="https://invent.kde.org/plasma/discover/-/merge_requests/1373"&gt;discover MR #1373&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;When the Task Manager widget is used with a right-to-left language or its tasks are configured to appear “to the left”, the tasks now move to the expected location when manually rearranged by dragging. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=504898"&gt;KDE Bugzilla #504898&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Custom accent colors defined within wallpapers are once again honored. (Zhora Zmeykin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=514656"&gt;KDE Bugzilla #514656&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Fixed a case where the remote desktop server could crash when closing a connection. (Wengsheng Tang, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/189"&gt;krdp MR #189&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Resizing an aspect-ratio-locked window no longer sometimes makes it disappear! (Vlad Zahorodnii, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=479547"&gt;KDE Bugzilla #479547&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The OSD displayed when muting or unmuting microphones using the Microphone Indicator widget now shows the correct icon. (Undef Fox, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=472107"&gt;KDE Bugzilla #472107&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Apps packaged as Flatpaks or using Nix now get pinned to the Task Manager widget in a more robust way, so they’re less likely to get broken in the future if the underlying locations of their &lt;code&gt;.desktop&lt;/code&gt; files change. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=505066"&gt;KDE Bugzilla #505066&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Emoji Selector window now uses the same consistent order for the gendered variants of all emojis, not just some of them. (Tobias Ozór, &lt;a href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/3939"&gt;plasma-desktop MR #3939&lt;/a&gt;)&lt;/p&gt;



&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;div class="swiper-slide swiper-slide-active"&gt;
 &lt;img src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/emoji-new.jpg" alt="New" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;New&lt;/span&gt;
 &lt;/div&gt;
 &lt;div class="swiper-slide"&gt;
 &lt;img src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/emoji-old.jpg" alt="Old" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;Old&lt;/span&gt;
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;


&lt;p&gt;The pointer now looks even sharper at absurdly enormous sizes when you shake it for ages and ages. (Vlad Zahorodnii, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9176"&gt;kwin MR #9176&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Absurdly massive pointer that you’ve been shaking for too long, but at least it’s nice and sharp now" src="https://blogs.kde.org/2026/08/15/this-week-in-plasma-bi-directional-rdp-clipboard-sync/massive-pointer.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;Right-clicking twice on the same pixel of the desktop without moving the pointer no longer shows the wrong context menu the second time. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=504765"&gt;KDE Bugzilla #504765&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-630"&gt;Frameworks 6.30&lt;/h3&gt;
&lt;p&gt;Fixed a bug that could make KDE Connect consume 100% of a whole CPU core. (David Redondo, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=517743"&gt;KDE Bugzilla #517743&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Very large images on the clipboard no longer sometimes fail to paste successfully. (Zhora Zmeykin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=519651"&gt;KDE Bugzilla #519651&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Various dialogs throughout KDE software once again properly offer the opportunity to open executable text and script files in a text editor app, working around &lt;a href="https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/372"&gt;an upstream change in &lt;code&gt;shared-mime-data&lt;/code&gt; which had broken this&lt;/a&gt;. (Méven Car, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522948"&gt;KDE Bugzilla #522948&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="kup-0110"&gt;Kup 0.11.0&lt;/h3&gt;
&lt;p&gt;Kup’s notification about backup progress no longer erroneously tells you that the backup destination is on your phone that’s paired with KDE Connect. (Harald Sitter, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=518494"&gt;KDE Bugzilla #518494&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-667-1"&gt;Plasma 6.6.7&lt;/h3&gt;
&lt;p&gt;Added support for monitoring GPU usage for Intel A380 GPUs. (Takahiro Hashimoto, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=517334"&gt;KDE Bugzilla #517334&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Pasting very large PNG images no longer sometimes causes some lagging and stuttering. (Zhora Zmeykin, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6874"&gt;plasma-workspace MR #6874&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-675-1"&gt;Plasma 6.7.5&lt;/h3&gt;
&lt;p&gt;KWin now supports more than one &lt;code&gt;wl_data_device&lt;/code&gt;, which opens the door to improved drag-and-drop support in Firefox. (Martin Stransky, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521494"&gt;KDE Bugzilla #521494&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Spectacle is now slightly faster at taking screenshots on vertically flipped screens. (Zhora Zmeykin, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9752"&gt;kwin MR #9752&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-3"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;The new &lt;code&gt;kscreenctl&lt;/code&gt; tool now supports setting custom CVT timings/modelines. (Vlad Zahorodnii, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=517654"&gt;KDE Bugzilla #517654&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-630-1"&gt;Frameworks 6.30&lt;/h3&gt;
&lt;p&gt;Reduced the number of times the common &lt;code&gt;Kirigami.Icon&lt;/code&gt; component needs to read from the disk while looking for fallback icons. (Jakob Petsovits, &lt;a href="https://invent.kde.org/frameworks/kirigami/-/merge_requests/2139"&gt;kirigami MR #2139&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Baloo file indexer now correctly ignores Btrfs snapshots that happen to be stored in your home directory, instead of pointlessly trying to index them. (Hadi Chokr, &lt;a href="https://invent.kde.org/frameworks/baloo/-/merge_requests/295"&gt;baloo MR #295&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>This Week in Plasma: UI Improvements Galore</title><link>https://blogs.kde.org/2026/08/08/this-week-in-plasma-ui-improvements-galore/</link><pubDate>Sat, 08 Aug 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/08/08/this-week-in-plasma-ui-improvements-galore/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week we merged a number of features and UI changes that focus on user-friendliness — in addition to a nice crop of bug-fixes and performance improvements:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;If you try to print using a printer that’s unavailable, Plasma now helpfully notifies you of this instead of just doing nothing. (Mike Noe, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=362143"&gt;KDE Bugzilla #362143&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Notification about the printer that just received a print job being unavailable" src="https://blogs.kde.org/2026/08/08/this-week-in-plasma-ui-improvements-galore/printer-unavailable-notification.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Task Manager thumbnails now feature nicer padding around the labels near the top. (Michal Malinowski, &lt;a href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/3916"&gt;plasma-desktop MR #3916&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Task Manager tooltip with better padding around the text" src="https://blogs.kde.org/2026/08/08/this-week-in-plasma-ui-improvements-galore/task-manager-tooltip-better-padding.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;When creating a new user account, the restrictions around which characters are allowed for the username of the new account are now clearly indicated via warning messages if you try to use invalid ones. (Mradul Pal, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521545"&gt;KDE Bugzilla #521545&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Warning about character restrictions when typing the new user’s username" src="https://blogs.kde.org/2026/08/08/this-week-in-plasma-ui-improvements-galore/warning-about-character-restrictions.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h3 id="kup-0110"&gt;Kup 0.11.0&lt;/h3&gt;
&lt;p&gt;Kup now offers an improved set of default exclusions, with a simplified way of toggling them on or off. This should result in much less data being backed up that doesn’t actually need to be backed up — like cache files, state files, Btrfs snapshots, and more. (Bharadwaj Raju, &lt;a href="https://invent.kde.org/system/kup/-/merge_requests/52"&gt;kup MR #52&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="User-friendly list of comprehensibly-phrased exclusions for Kup-based backups" src="https://blogs.kde.org/2026/08/08/this-week-in-plasma-ui-improvements-galore/user-friendly-kup-exclusions.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;center&gt;This settings page is still a bit old and crusty. A visual refresh is also planned, JFYI!&lt;/center&gt;
&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-667"&gt;Plasma 6.6.7&lt;/h3&gt;
&lt;p&gt;If the &lt;code&gt;xdg-desktop-portal-kde&lt;/code&gt; process crashes while it’s being used to allow an app to control the pointer and keyboard, control now instantly returns to you rather than getting stuck until the system is restarted. (Marcus Renheim, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523515"&gt;KDE Bugzilla #523515&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Using a panel’s “Floating Applets” feature no longer breaks the ability to drag files onto Task Manager representations of grouped tasks. (Antonio Rojas, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=510643"&gt;KDE Bugzilla #510643&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Task Manager widget no longer lays out items incorrectly when you rearrange them while the widget is using right-to-left mode. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=504898"&gt;KDE Bugzilla #504898&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The “Identify Displays” feature no longer shows weird hexadecimal numbers in the labels for some screens. (David Wild and Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523181"&gt;KDE Bugzilla #523181&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9655"&gt;kwin MR #9655&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-674"&gt;Plasma 6.7.4&lt;/h3&gt;
&lt;p&gt;Fixed a UI glitch in the Disk Quota widget. (Nicolas Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523618"&gt;KDE Bugzilla #523618&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-675"&gt;Plasma 6.7.5&lt;/h3&gt;
&lt;p&gt;Syncing your settings to Plasma Login Manager now includes the &lt;code&gt;~/.config/plasma-localerc&lt;/code&gt; file, which makes the login screen respect your preferred language and time settings. (Nate Graham, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=516964"&gt;KDE Bugzilla #516964&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed or implemented support for the “highlight changed settings” feature for multiple System Settings pages. (Tobias Ozór, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9675"&gt;kwin MR #9675&lt;/a&gt;, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521974"&gt;KDE Bugzilla #521974&lt;/a&gt;, &lt;a href="https://invent.kde.org/plasma/powerdevil/-/merge_requests/660"&gt;powerdevil MR #660&lt;/a&gt;, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521978"&gt;KDE Bugzilla #521978&lt;/a&gt;, and &lt;a href="https://bugs.kde.org/show_bug.cgi?id=469914"&gt;KDE Bugzilla #469914&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;System Settings’ Spell Checking page no longer erroneously prompts you to save unsaved changes when you navigate away from it without having made any changes. (Antti Savolainen, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521712"&gt;KDE Bugzilla #521712&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The “OS Version” sensor in System Monitor widgets now works more reliably to handle KDE Linux and other non-traditional operating systems. (David Redondo, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523727"&gt;KDE Bugzilla #523727&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Fixed a bug in Plasma’s built-in remote desktop server that could present certain clients with a black screen instead of the expected content. (Shouvik Kar, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/222"&gt;krdp MR #222&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Switching between virtual desktops no longer makes the Window List Widget show the wrong window. (Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523409"&gt;KDE Bugzilla #523409&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;Applet::Index()&lt;/code&gt; property in Plasma scripting now actually returns the correct index. (Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523675"&gt;KDE Bugzilla #523675&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-68-3"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Plasma’s built-in remote desktop server now exhibits less latency and better performance when using less-than-ideal network connections. (Shouvik Kar, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/190"&gt;krdp MR #190&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Plasma now loads the clipboard pop-up on demand rather than at launch, which saves some memory. (Nicolas Fella, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6899"&gt;plasma-workspace MR #6899&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>KDE Goals - Last Call For Submissions</title><link>https://blogs.kde.org/2026/08/07/kde-goals-last-call-for-submissions/</link><pubDate>Fri, 07 Aug 2026 13:17:00 +0000</pubDate><author>Farid Abdelnour</author><guid>https://blogs.kde.org/2026/08/07/kde-goals-last-call-for-submissions/</guid><description>&lt;figure&gt;
 &lt;img class="img-fluid" alt="Last Call" src="https://blogs.kde.org/2026/08/07/kde-goals-last-call-for-submissions/last-call-img.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h2 id="last-chance-to-submit-your-kde-goals-proposal"&gt;Last chance to submit your KDE Goals proposal&lt;/h2&gt;
&lt;p&gt;The call for submissions for the next KDE Goals cycle closes tomorrow, August 8.&lt;/p&gt;
&lt;p&gt;As of the time of writing we've received nineteen proposals, covering a variety of topics like enterprise, gaming, personal well-being, documentation, accessibility, semantic desktops, color management, design, user experience, mobile and more.&lt;/p&gt;
&lt;p&gt;Current proposals (by order of submission):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/2"&gt;Better documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/3"&gt;Design System for Plasma 1st-Party Styling&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/4"&gt;Accessibility in KDE&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/5"&gt;KDE for Enterprise and Deployments&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/6"&gt;Give more love to little-loved but important KDE apps&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/8"&gt;KDE Linux — Pillar of KDE&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/9"&gt;Sandbox all the things!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/12"&gt;Improve UX of customization and theming process with 3rd-party content&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/13"&gt;KDE Kares&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/14"&gt;Improve GUI configuration UX by expanding system settings&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/15"&gt;Gaming as a first-class workload&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/17"&gt;Plasma: From Window Management to Workflow Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/18"&gt;Improve color management and HDR support&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/19"&gt;Make Plasma smart&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/20"&gt;Advanced configuration features hidden from GUI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/21"&gt;Scripting and effect capabilities: Need for review in Get New Stuff&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/22"&gt;Seamless Input Accessibility (Onscreen Keyboard, Emoji &amp;amp; Clipboard)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/23"&gt;Language/toolkit-agnostic development&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/work_items/24"&gt;Prepare Plasma Mobile for Daily Drivability&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="join-in"&gt;Join in&lt;/h2&gt;
&lt;p&gt;If any of the proposals above spark your interest, then by all means join the effort as a co-champion or contributor. And if you don't feel inspired by any, then there is still time to submit your own and champion a new KDE Goal.&lt;/p&gt;
&lt;p&gt;Remember that you do not have to be a developer to participate. Read the &lt;a href="https://community.kde.org/Goals/Goals_Process"&gt;selection process&lt;/a&gt; carefully before you send your proposal. If you have any doubts, join our &lt;a href="https://matrix.to/#/%23goals:kde.org"&gt;Matrix room&lt;/a&gt; or create a topic at the &lt;a href="https://discuss.kde.org/c/community/5"&gt;KDE forum&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="whats-next"&gt;What's Next?&lt;/h3&gt;
&lt;p&gt;Once the submission period is over, we'll move into the &lt;strong&gt;refinement phase&lt;/strong&gt;, where champions and the community work together to polish their proposals and finalize them so they're elligible for voting.&lt;/p&gt;
&lt;h3 id="timeline"&gt;Timeline:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Call for submissions - June 19 to August 8&lt;/li&gt;
&lt;li&gt;Refinement of proposals - August 9 to August 27&lt;/li&gt;
&lt;li&gt;Voting period - August 28 to September 11&lt;/li&gt;
&lt;li&gt;Tallying &amp;amp; preparation - September 12 to September 18&lt;/li&gt;
&lt;li&gt;Announcement at &lt;a href="https://akademy.kde.org/2026/"&gt;Akademy&lt;/a&gt; - September 19&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>This Quarter in KDE Digital Sovereignty: Q2 2026</title><link>https://blogs.kde.org/2026/08/06/this-quarter-in-kde-digital-sovereignty-q2-2026/</link><pubDate>Thu, 06 Aug 2026 16:00:01 +0000</pubDate><author>Nate Graham, Kevin Ottens, and John Veness</author><guid>https://blogs.kde.org/2026/08/06/this-quarter-in-kde-digital-sovereignty-q2-2026/</guid><description>&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to the inaugural edition of &lt;em&gt;This Quarter in KDE Digital Sovereignty!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This blog series will cover the work done throughout KDE’s software stack that’s funded by &lt;a href="https://www.sovereign.tech/tech/kde"&gt;the investment KDE received earlier this year from Germany’s Sovereign Tech Agency&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Commissioned work on a variety of projects has been done by KDE contributors working for &lt;a href="https://ev.kde.org"&gt;KDE e.V.&lt;/a&gt; itself, as well as the &lt;a href="https://techpaladinsoftware.com"&gt;Techpaladin Software&lt;/a&gt; and &lt;a href="https://haute-couture.enioka.com/en/"&gt;enioka Haute Couture&lt;/a&gt; companies.&lt;/p&gt;
&lt;p&gt;This post will cover the work done in the second quarter of 2026. Let’s get into it!&lt;/p&gt;
&lt;h2 id="quality-assurance-and-testing"&gt;Quality assurance and testing&lt;/h2&gt;
&lt;p&gt;The bulk of the work consisted of getting KDE’s house in order when it comes to automated testing — ensuring things that are working stay working, and providing early warnings about incompatibilities from updated dependencies.&lt;/p&gt;
&lt;p&gt;The Sovereign Tech Agency’s investment in KDE included substantial funding for this work across KDE Plasma, KDE Linux, and KDE PIM, providing a strong technical foundation for all of the future funded work.&lt;/p&gt;
&lt;p&gt;On the PIM side, we set up a &lt;a href="https://invent.kde.org/pim/pim-technical-roadmap/-/boards/11527?milestone_title=Quality%20and%20Large%20Organisation%20Improvements&amp;amp;label_name[]=epic%3Ae2e-resource-testing"&gt;dedicated test suite and an extensive set of newly-created tests&lt;/a&gt; for both &lt;a href="https://invent.kde.org/pim/pim-technical-roadmap/-/work_items/76"&gt;IMAP&lt;/a&gt; and &lt;a href="https://invent.kde.org/pim/pim-technical-roadmap/-/work_items/77"&gt;CalDAV/CardDAV&lt;/a&gt; resources. You can read more about it &lt;a href="https://ervin.ipsquad.net/blog/2026/07/21/kde-for-entreprise-needs-a-strong-pim-infrastructure/"&gt;on Kevin Ottens’ blog&lt;/a&gt;. In any case, it helped uncover some issues which were promptly fixed (most notably &lt;a href="https://invent.kde.org/pim/kdepim-runtime/-/merge_requests/320"&gt;recurrence exceptions are properly handled now&lt;/a&gt;), and identify &lt;a href="https://invent.kde.org/pim/kdepim-runtime/-/merge_requests/338"&gt;dead code which has been cleaned up&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A similar process unfolded on the KDE Linux side, with a dedicated testing server managing &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/662"&gt;a new openQA-based system&lt;/a&gt; that runs integration tests for many high-level cases relevant to Plasma in general and KDE Linux specifically. You can read more about it in &lt;a href="https://blogs.kde.org/2026/07/13/openqa-testing-in-kde-linux"&gt;this blog post by Thomas Duckworth&lt;/a&gt;. And it has also already borne fruit, including &lt;a href="https://invent.kde.org/frameworks/kwallet/-/merge_requests/157#note_1564783"&gt;detecting an accidental regression in KWallet&lt;/a&gt; and protecting users from a KWin crash caused by &lt;a href="https://gitlab.archlinux.org/archlinux/packaging/packages/gcc/-/merge_requests/18"&gt;a brief regression in Arch Linux’s gcc tooling&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="imap4-revision-2"&gt;IMAP4 revision 2&lt;/h2&gt;
&lt;p&gt;Beyond the QA, work also proceeded on the PIM side for the topic of &lt;a href="https://invent.kde.org/pim/pim-technical-roadmap/-/boards/11527?milestone_title=Quality%20and%20Large%20Organisation%20Improvements&amp;amp;label_name[]=epic%3Aimap4rev2"&gt;improving support through the KDE PIM suite for IMAP4 revision 2&lt;/a&gt;. This led us to add support for more IMAP4 extensions in our stack like &lt;a href="https://invent.kde.org/pim/kimap/-/merge_requests/70"&gt;BINARY&lt;/a&gt;, &lt;a href="https://invent.kde.org/pim/kimap/-/merge_requests/72"&gt;LIST-EXTENDED&lt;/a&gt;, or &lt;a href="https://invent.kde.org/pim/kimap/-/merge_requests/73"&gt;LIST-STATUS&lt;/a&gt;. We also completed support for &lt;a href="https://invent.kde.org/pim/kdepim-runtime/-/merge_requests/326"&gt;CONDSTORE and QRESYNC&lt;/a&gt;. Altogether, it allowed us to speed up IMAP resource syncing while using less network bandwidth — sometimes in a fairly drastic way, lowering the sync of a given mailbox to a single server round trip in the best cases!&lt;/p&gt;
&lt;p&gt;We had more good news on this front too. It turned out to be less work than expected, as our IMAP implementation is in a fairly good shape! It will free some time to go further on the QA and testing side.&lt;/p&gt;
&lt;h2 id="automatic-account-configuration"&gt;Automatic account configuration&lt;/h2&gt;
&lt;p&gt;Additional PIM topics included initial work to build a system for &lt;a href="https://invent.kde.org/pim/pim-technical-roadmap/-/boards/11527?milestone_title=Quality%20and%20Large%20Organisation%20Improvements&amp;amp;label_name[]=epic%3Aaccount-autoconfig"&gt;automatically discovering and setting up resources&lt;/a&gt; based on nothing more than an email address and password. We already have partial support for this kind of magic in KMail, but it doesn’t go beyond configuring email; that will change soon!&lt;/p&gt;
&lt;p&gt;For this work, we’re preparing a new library which will implement the relevant draft RFC. The &lt;a href="https://invent.kde.org/arnaudchirat/accountautoconfig/-/merge_requests/3"&gt;API is mostly in place&lt;/a&gt;, although &lt;a href="https://invent.kde.org/arnaudchirat/accountautoconfig/-/merge_requests/7"&gt;we keep improving it&lt;/a&gt;. We’re now at the stage where we can plug this new implementation into KMail, and later on integrate the whole feature set via System Settings’ Online Accounts page. It will be nice when you just give an email and password there, to automatically see all your PIM apps automatically configured: mail, calendar, and identity.&lt;/p&gt;
&lt;h2 id="webdav-push-notifications"&gt;WebDAV push notifications&lt;/h2&gt;
&lt;p&gt;The latest work started on the PIM side is about &lt;a href="https://invent.kde.org/pim/pim-technical-roadmap/-/boards/11527?milestone_title=Quality%20and%20Large%20Organisation%20Improvements&amp;amp;label_name[]=epic%3Awebdav-push-notifications"&gt;supporting push notifications for DAV calendars&lt;/a&gt;. This is based on a &lt;a href="https://github.com/bitfireAT/webdav-push/"&gt;draft specification&lt;/a&gt; proposed by the DAVx⁵ folks. We’re currently mostly in the design phase, even though &lt;a href="https://invent.kde.org/frameworks/kdav/-/merge_requests/93"&gt;some&lt;/a&gt; &lt;a href="https://invent.kde.org/frameworks/kdav/-/merge_requests/94"&gt;adjustments&lt;/a&gt; to KDAV are already being made.&lt;/p&gt;
&lt;p&gt;Ultimately this should lead to more targeted syncing when something changes on the server, reducing the network bandwidth requirements. It will also make your calendars sync with the server almost immediately instead of waiting for the next poll interval.&lt;/p&gt;
&lt;h2 id="network-share-handling"&gt;Network share handling&lt;/h2&gt;
&lt;p&gt;On the Plasma side, work also began to overhaul &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/668"&gt;the way network shares are handled throughout KDE&lt;/a&gt;. So far the work has concentrated on beefing up KDE’s FUSE-based network share mounting in a variety of ways.&lt;/p&gt;
&lt;p&gt;Perhaps the most notable way being explored is to create the FUSE mount in response to a request to access a file on a network location even if the user has not already accessed it from Dolphin. &lt;a href="https://invent.kde.org/system/kio-fuse/-/merge_requests/90"&gt;This work is in progress&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Work is also in progress to &lt;a href="https://invent.kde.org/system/kio-fuse/-/merge_requests/86"&gt;mount these FUSE mounts at a standardized and predictable path&lt;/a&gt;, and to &lt;a href="https://invent.kde.org/system/kio-fuse/-/merge_requests/89"&gt;surface them in the standard Places panel&lt;/a&gt; for ease of access.&lt;/p&gt;
&lt;h2 id="data-integrity"&gt;Data integrity&lt;/h2&gt;
&lt;p&gt;To &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/666"&gt;improve data integrity&lt;/a&gt; throughout KDE, we created a new &lt;a href="https://invent.kde.org/system/kio-snapshot"&gt;service for interfacing with Btrfs snapshots&lt;/a&gt;. This will form the backbone of various user interfaces integrated throughout KDE software (&lt;a href="https://invent.kde.org/system/dolphin/-/merge_requests/1347"&gt;starting with Dolphin&lt;/a&gt;) to offer users the possibility to restore earlier versions of their files from snapshots, and use those snapshots for traditional backup systems.&lt;/p&gt;
&lt;p&gt;In addition, we put some work into improving KDE’s Kup backup system, in the form of UI improvements for &lt;a href="https://invent.kde.org/system/kup/-/merge_requests/52"&gt;determining what gets included in backups&lt;/a&gt;, and &lt;a href="https://invent.kde.org/system/kup/-/merge_requests/53"&gt;modernizing the user interface of its Plasma widget&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="configuration-management"&gt;Configuration management&lt;/h2&gt;
&lt;p&gt;Work began on an overhaul of KDE’s configuration management infrastructure in the form of &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/728"&gt;porting software to use the more modern KConfigXT system&lt;/a&gt;. This system uses a declarative syntax with defined schemas, allowing KDE software’s available configuration options and default settings to be knowable without having to read the source code.&lt;/p&gt;
&lt;p&gt;This effort will eventually open up the possibility of writing a management app similar to GNOME’s DConf Editor tool that can offer administrators the ability to graphically visualize and change configuration options.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="looking-forward"&gt;Looking forward&lt;/h2&gt;
&lt;p&gt;So it was a busy quarter of shoring up some of the foundations in KDE to lay the groundwork for future efforts. We’re very grateful for the Sovereign Tech Agency’s investment in KDE that made this possible! Once the QA efforts wind down, we’ll be in a great position to start working on the more user-facing elements of the investment.&lt;/p&gt;</description></item><item><title>This Month in KDE Linux: July 2026</title><link>https://blogs.kde.org/2026/08/03/this-month-in-kde-linux-july-2026/</link><pubDate>Mon, 03 Aug 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/08/03/this-month-in-kde-linux-july-2026/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to the inaugural edition of &lt;em&gt;This Month in KDE Linux&lt;/em&gt; hosted on &lt;a href="https://blogs.kde.org"&gt;blogs.kde.org&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Previously, these posts lived on &lt;a href="https://pointieststick.com/category/kde-linux/"&gt;Nate Graham’s personal blog&lt;/a&gt;. But KDE Linux is growing up and becoming a more important part of KDE, larger than its individual contributors! So it’s time to move the public communication to KDE infrastructure, and that’s where you’ll be able to read these posts going forward.&lt;/p&gt;
&lt;p&gt;Without further ado, here’s how KDE Linux evolved in July:&lt;/p&gt;
&lt;h2 id="qa--testing"&gt;QA &amp;amp; testing&lt;/h2&gt;
&lt;p&gt;This month, Thomas Duckworth and Bhushan Shah integrated the next-gen QA system they’ve been building!&lt;/p&gt;
&lt;p&gt;It’s now testing tons of conditions to make sure KDE Linux continues to work as expected, and it also acts as a full-stack integration test suite. To illustrate the utility of such a thing, it’s already identified and protected users from two significant issues:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="https://gitlab.archlinux.org/archlinux/packaging/packages/gcc/-/merge_requests/18"&gt;A login-breaking KWin crash caused by a regression in &lt;code&gt;gcc&lt;/code&gt; from Arch Linux&lt;/a&gt; (already fixed).&lt;/li&gt;
&lt;li&gt;&lt;a href="https://invent.kde.org/frameworks/kwallet/-/merge_requests/157#note_1564783"&gt;A regression in automatically unlocking your wallet at login&lt;/a&gt; (also already fixed).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;These tricky problems could only have been caught by the kind of full-stack integration test suite that KDE Linux has now.&lt;/p&gt;
&lt;p&gt;If you’re interested in the details, &lt;a href="https://blogs.kde.org/2026/07/13/openqa-testing-in-kde-linux/"&gt;Thomas Duckworth’s blog post on how the system works&lt;/a&gt; is worth a read. Thanks very much to Thomas and Bhushan for building this lovely system!&lt;/p&gt;
&lt;h2 id="security"&gt;Security&lt;/h2&gt;
&lt;p&gt;Hadi Chokr &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/561"&gt;implemented some kernel-hardening tweaks&lt;/a&gt; we learned about from the &lt;a href="https://secureblue.dev/features"&gt;SecureBlue&lt;/a&gt; project that were relevant to KDE Linux and wouldn’t noticeably burden users.&lt;/p&gt;
&lt;h2 id="efficiency--performance"&gt;Efficiency &amp;amp; performance&lt;/h2&gt;
&lt;p&gt;Nate Graham &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/577"&gt;removed the kernel modules for various hardware watchdogs&lt;/a&gt; that aren’t relevant for desktop use, which slightly reduces CPU usage and improves boot times.&lt;/p&gt;
&lt;p&gt;Thomas Duckworth &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/578"&gt;switched the CUPS printing system to use socket activation&lt;/a&gt;, which allows its services to only run when needed.&lt;/p&gt;
&lt;h2 id="software-support-package-downloader--support-for-java-and-dos-apps"&gt;Software support package downloader + support for Java and DOS apps&lt;/h2&gt;
&lt;p&gt;Hadi Chokr &lt;a href="https://invent.kde.org/kde-linux/package-compatibility-helper/-/merge_requests/2"&gt;implemented a major improvement to the “Package Compatibility Helper” tool&lt;/a&gt; that now allows it to — with the user’s consent — download software from Flathub to handle files that the user tries to open, but that nothing on the system can currently open.&lt;/p&gt;
&lt;p&gt;Hadi then &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/447"&gt;made this work for Java apps&lt;/a&gt;; the first time you try to launch one, the tool will ask you if you want to download a Java Runtime Environment (JRE). If you approve, it will do so and then launch the app using the JRE:&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="https://blogs.kde.org/2026/08/03/this-month-in-kde-linux-july-2026/java-support.webm" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;p&gt;After that, Hadi &lt;a href="https://invent.kde.org/kde-linux/package-compatibility-helper/-/merge_requests/3"&gt;implemented support for DOS apps&lt;/a&gt;; trying to launch one will offer up DOSBox. Now you can have that authentic 1993 Doom experience:&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="https://blogs.kde.org/2026/08/03/this-month-in-kde-linux-july-2026/doom-dos.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;p&gt;This system can be extended to support even more things in the future! And it’s been written in a generic enough way that it would be useful for any other image-based OS using Flatpak, as well.&lt;/p&gt;
&lt;h2 id="bugs-fixed"&gt;Bugs fixed&lt;/h2&gt;
&lt;p&gt;Philip Grant fixed the mechanism that ensures that &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/553"&gt;existing KDE Linux systems have the same Flatpaks installed as are pre-loaded on new systems&lt;/a&gt;, as it had various bugs that prevented it from working properly.&lt;/p&gt;
&lt;p&gt;David Fundament &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/568"&gt;fixed the script that disables USB auto-suspend for input devices&lt;/a&gt; so that it works with devices lacking a product name.&lt;/p&gt;
&lt;p&gt;WenChao Zhang &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/579"&gt;restored the &lt;code&gt;esp4&lt;/code&gt; and &lt;code&gt;esp6&lt;/code&gt; kernel modules&lt;/a&gt; that had been removed to mitigate the “DirtyFrag” vulnerability. The vulnerability has been fixed now, and missing those modules had broken IPsec VPNs, so they’re back now.&lt;/p&gt;
&lt;p&gt;Hadi Chokr &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/725"&gt;made WWAN modems work out of the box&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="documentation"&gt;Documentation&lt;/h2&gt;
&lt;p&gt;Thomas Duckworth documented how to &lt;a href="https://linux.kde.org/docs/openqa/"&gt;use and extend the new QA system&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Nate Graham documented how to make the Fcitx 5 input method (for CJKV input) &lt;a href="https://linux.kde.org/docs/cjkv-input/#fixing-compatibility-issues"&gt;work with apps still using the XWayland compatibility layer&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Hadi Chokr documented &lt;a href="https://linux.kde.org/docs/dual-boot"&gt;how to set up bootloader menus&lt;/a&gt; so you can choose between booting KDE Linux or another OS on the same computer. However, setting up such a system is left as a manual exercise for the reader, as currently the KDE Linux installer does not yet formally support complex disk setups. This will come later.&lt;/p&gt;
&lt;h2 id="grab-bag"&gt;Grab bag&lt;/h2&gt;
&lt;p&gt;Prajna Sariputra &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/566"&gt;pre-installed &lt;code&gt;vulkan-virtio&lt;/code&gt;&lt;/a&gt;, improving performance in VMs whose graphics drivers support Vulkan.&lt;/p&gt;
&lt;p&gt;Thomas Duckworth made the &lt;code&gt;set-up-systemd-extension&lt;/code&gt; and &lt;code&gt;toggle-developer-mode&lt;/code&gt; tools &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/merge_requests/574"&gt;only prompt for authentication once&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Nate Graham &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/706"&gt;removed the “Push Services” library and System Settings page&lt;/a&gt;, because it’s not mature enough for shipping yet.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE Linux is making steady progress towards its &lt;a href="https://invent.kde.org/groups/kde-linux/-/milestones/2#tab-issues"&gt;Beta milestone&lt;/a&gt;, and is now 83% of the way there.&lt;/p&gt;
&lt;p&gt;There’s lots to do! If you’re a fan of the project, please help out; there are many ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;User support:&lt;/strong&gt; &lt;a href="https://discuss.kde.org/tag/kde-linux/450"&gt;help support people on discuss.kde.org using KDE Linux&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Issue reporting:&lt;/strong&gt; &lt;a href="https://linux.kde.org/docs/install"&gt;install KDE Linux&lt;/a&gt; and &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/issues"&gt;report issues&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Documentation:&lt;/strong&gt; improve &lt;a href="https://linux.kde.org/docs"&gt;the docs&lt;/a&gt; by submitting &lt;a href="https://invent.kde.org/websites/linux-kde-org/-/merge_requests/"&gt;merge requests&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flatpak:&lt;/strong&gt; fix &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/issues/71"&gt;packaging or code issues in Flatpak-packaged apps&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;OS development:&lt;/strong&gt; help &lt;a href="https://linux.kde.org/docs/kde-linux-dev"&gt;build KDE Linux&lt;/a&gt;! There’s &lt;a href="https://invent.kde.org/kde-linux/kde-linux/-/work_items/?sort=created_date&amp;amp;state=opened&amp;amp;milestone_title=Beta&amp;amp;first_page_size=100"&gt;plenty to do&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>This Week in Plasma: Emoji Resizing</title><link>https://blogs.kde.org/2026/08/01/this-week-in-plasma-emoji-resizing/</link><pubDate>Sat, 01 Aug 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/08/01/this-week-in-plasma-emoji-resizing/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;…but before we start, here’s a quick reminder that we’ve entered the last week to submit your proposal for the next &lt;a href="https://blogs.kde.org/2026/06/20/kde-goals-call-for-submissions/"&gt;KDE Goals cycle&lt;/a&gt;! If you’re not ready to champion a goal, you can still get involved by joining one of the &lt;a href="https://invent.kde.org/teams/goals/goal-setting/2026/-/boards"&gt;existing proposals&lt;/a&gt; as a contributor or supporter.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;And now, without further ado…&lt;/p&gt;
&lt;p&gt;In addition to the headliner feature and expected UI improvements and bug fixes, this week features some promising technical and performance improvements. Have a look:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;You can now make the emojis in the Emoji Selector window bigger or smaller. (Jason Uithol, &lt;a href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/3878"&gt;plasma-desktop MR #3878&lt;/a&gt;)&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="https://blogs.kde.org/2026/08/01/this-week-in-plasma-emoji-resizing/resizing-emojis.webm" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;p&gt;On System Settings’ Display Configuration page, you can now move screens pixel-by-pixel using the arrow keys while in layout editing mode. (Antti Savolainen, &lt;a href="https://invent.kde.org/plasma/kscreen/-/merge_requests/476"&gt;kscreen MR #476&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-674"&gt;Plasma 6.7.4&lt;/h3&gt;
&lt;p&gt;The Emoji Selector window is now always tall enough to accommodate its sidebar without scrolling. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523090"&gt;KDE Bugzilla #523090&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Spectacle now detects QR codes in screenshots that you take in such a manner that the main UI is never shown; if you click “Annotate” from the notification about it, the QR code will be detected there. (Kai Uwe Broulik, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521097"&gt;KDE Bugzilla #521097&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;In Spectacle’s settings window, image quality controls are now only available for image types whose quality level is adjustable. (Zhora Zmeykin, &lt;a href="https://invent.kde.org/plasma/spectacle/-/merge_requests/568"&gt;spectacle MR #568&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Clarified the instructions on System Settings’s Remote Desktop page a little bit. (Nate Graham, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/224"&gt;krdp MR #224&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/225"&gt;krdp MR #225&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="kup-0110"&gt;Kup 0.11.0&lt;/h3&gt;
&lt;p&gt;Modernized the UI for the Kup backup system’s System Tray widget, so now it matches other Plasma widgets that can similarly show multiple items, each with their own actions. (Bharadwaj Raju and Tomáš Hnyk, &lt;a href="https://invent.kde.org/system/kup/-/merge_requests/53"&gt;kup MR #53&lt;/a&gt; and &lt;a href="https://invent.kde.org/system/kup/-/merge_requests/54"&gt;kup MR #54&lt;/a&gt;)&lt;/p&gt;



&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;div class="swiper-slide swiper-slide-active"&gt;
 &lt;img src="https://blogs.kde.org/2026/08/01/this-week-in-plasma-emoji-resizing/kup-applet-after.webp" alt="New" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;New&lt;/span&gt;
 &lt;/div&gt;
 &lt;div class="swiper-slide"&gt;
 &lt;img src="https://blogs.kde.org/2026/08/01/this-week-in-plasma-emoji-resizing/kup-applet-before.webp" alt="Old" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;Old&lt;/span&gt;
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;


&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-667"&gt;Plasma 6.6.7&lt;/h3&gt;
&lt;p&gt;Fixed a case where the &lt;code&gt;ksystemstats&lt;/code&gt; background service could crash seemingly randomly. (Méven Car, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523562"&gt;KDE Bugzilla #523562&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that made blank document icons appear in the notification history view. (Kai Uwe Broulik, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522846"&gt;KDE Bugzilla #522846&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a bug that could make extremely long words in Plasma tooltips overflow rather than wrapping. (Nate Graham, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523614"&gt;KDE Bugzilla #523614&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a bug that made third-party widgets fail to inhibit power management more than once. (Vincent de Robert, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523605"&gt;KDE Bugzilla #523605&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-674-1"&gt;Plasma 6.7.4&lt;/h3&gt;
&lt;p&gt;Fixed a visual glitch where the highlight area for expanded list items in various System Tray widgets would sometimes be too small to fit its contents. (Bharadwaj Raju, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=506295"&gt;KDE Bugzilla #506295&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Fixed an issue that could sometimes corrupt very large screenshots taken in Spectacle when they were pasted elsewhere. (Cezar Craciunoiu, &lt;a href="https://invent.kde.org/plasma/spectacle/-/merge_requests/566"&gt;spectacle MR #566&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-629"&gt;Frameworks 6.29&lt;/h3&gt;
&lt;p&gt;Opening various windows and dialogs using Kirigami components no longer makes the content scroll into view for no particularly good reason. (Manuel Alcaraz Zambrano, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=515811"&gt;KDE Bugzilla #515811&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="ddcutil-228"&gt;ddcutil 2.2.8&lt;/h3&gt;
&lt;p&gt;Fixed multiple issues that could make the &lt;code&gt;powerdevil&lt;/code&gt; background process freeze or crash. (Sanford Rockowitz, &lt;a href="https://github.com/rockowitz/ddcutil/issues/581"&gt;ddcutil issue #581&lt;/a&gt; and &lt;a href="https://github.com/rockowitz/ddcutil/issues/587"&gt;ddcutil issue #587&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-68-3"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Significantly improved performance with external GPUs. Read more about this &lt;a href="https://zamundaaa.github.io/wayland/2026/07/31/fixing-multi-gpu.html"&gt;on Xaver’s blog&lt;/a&gt;! (Xaver Hugl, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/7101"&gt;kwin MR #7101&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;You can now change the size (and effective resolution) of virtual screens created for screencasting, rather than them being fixed to a resolution of 1920 × 1080 pixels. (David Edmundson, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=512620"&gt;KDE Bugzilla #512620&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Panel floating-ness can now be changed using Plasma desktop scripting. (Ramil Nurmanov, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521549"&gt;KDE Bugzilla #521549&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;KWin now recognizes the “Pick up phone” and “Hang up phone” keys on some keyboards, allowing them to be used in keyboard shortcuts to trigger actions. (Méven Car, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/7892"&gt;kwin MR #7892&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-629-1"&gt;Frameworks 6.29&lt;/h3&gt;
&lt;p&gt;Fixed a performance issue that could make Plasma freeze when it sent a notification with a lot of emojis in it. (Devin Lin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=508070"&gt;KDE Bugzilla #508070&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>GSoC Alumni Camp Delhi 2026</title><link>https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/</link><pubDate>Wed, 29 Jul 2026 00:00:00 +0000</pubDate><author>Ansh Singhal</author><guid>https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/</guid><description>&lt;h1 id="gsoc-alumni-camp-delhi-2026--my-experience"&gt;GSoC Alumni Camp Delhi 2026 – My Experience&lt;/h1&gt;
&lt;p&gt;I attended the GSoC Alumni Camp in Delhi, it was an amazing opportunity to make people who are already familiar with open source aware of KDE Community
and I was actually able to do that. The event itself was from 8:00 A.M. to 10:30 P.M. at night.
The event started off with a formal opening session.
Soon after was the scavenger hunt (we were hunting people!)
it was a 5x5 grid where you needed to get signatures of people who fit the question in the box.
A few of them were :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I was born in July (I signed a lot of them )&lt;/li&gt;
&lt;li&gt;I have held a koala&lt;/li&gt;
&lt;li&gt;I know 3+ languages&lt;/li&gt;
&lt;li&gt;I can juggle&lt;/li&gt;
&lt;li&gt;I prefer go/Rust
and so on.
In all honesty it was an amazing ice breaker and something to get to know people.
After that there were a few unconferences followed by lunch and then more unconferences till 6:00 P.M. after that lightning talk sessions started and fortunately I got to represent KDE.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="unconference-session--from-gsoc-student-to-maintainermentor"&gt;Unconference Session – From GSoC Student to Maintainer/Mentor&lt;/h2&gt;
&lt;p&gt;I also hosted one of the first unconference sessions titled:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;From GSoC Student to Maintainer/Mentor&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;I wasn't expecting a large audience, but at one point the room was at its capacity &lt;strong&gt;around 40 attendees&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;The audience included:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GSoC Organization Administrators&lt;/li&gt;
&lt;li&gt;Mentors&lt;/li&gt;
&lt;li&gt;Open source employees&lt;/li&gt;
&lt;li&gt;Existing contributors&lt;/li&gt;
&lt;li&gt;Google code-in students&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The discussion focused on contributor retention after GSoC and how organizations can better support contributors beyond the program.
It led to some interesting discussions where we found out what some organisations are doing.&lt;/p&gt;
&lt;h2 id="discussion-points-noted-by-an-org-admin"&gt;Discussion Points (Noted by an org admin)&lt;/h2&gt;
&lt;h3 id="leverage-contributors-as-subject-matter-experts"&gt;Leverage Contributors as Subject Matter Experts&lt;/h3&gt;
&lt;p&gt;GSoC contributors naturally become subject matter experts for the components they build. When new issues, bug reports, or pull requests relate to their work, proactively invite them to participate in the discussion or review. This helps contributors feel that their expertise is valued and keeps them engaged with the project beyond GSoC.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="improve-communication-around-pull-request-reviews"&gt;Improve Communication Around Pull Request Reviews&lt;/h3&gt;
&lt;p&gt;Complex pull requests often require focused reviews and may take longer than isolated bug fixes. While taking the necessary time for a thorough review is important, mentors should acknowledge review requests and, where possible, communicate an expected timeline. Even a brief acknowledgment improves the contributor experience.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="using-organization-stipends-for-contributor-retention"&gt;Using Organization Stipends for Contributor Retention&lt;/h3&gt;
&lt;p&gt;Explore using the GSoC organization stipend to support promising contributors after the program ends. This could fund continued maintenance or feature development through a transparent platform such as Open Collective, allowing contributors to invoice for their work and remain actively involved with the project.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="recognizing-mentor-contributions"&gt;Recognizing Mentor Contributions&lt;/h3&gt;
&lt;p&gt;Mentoring requires a significant investment of time in reviewing code, guiding contributors, and providing technical support. Consider allocating a portion of the organization stipend to compensate mentors, recognizing their efforts and encouraging long-term participation.&lt;/p&gt;
&lt;h2 id="kdes-community-support"&gt;KDE's Community Support&lt;/h2&gt;
&lt;p&gt;Another topic that generated considerable interest was KDE's support for its contributors.&lt;/p&gt;
&lt;p&gt;I talked about how KDE sponsors some students to attend Akademy, and how I was also sponsored to attend the event, which a lot of people agreed organizations should've done (some did, a lot didn't) but a lot of people agreed that when an organization consider these things contributors stay.&lt;/p&gt;
&lt;p&gt;After all the unconferences ended a lot of people came up to me saying mine was the best and I managed and engaged everyone in the best way possible ( I was on cloud 9).&lt;/p&gt;
&lt;h2 id="lightning-talk"&gt;Lightning Talk&lt;/h2&gt;
&lt;p&gt;One of the highlights was being selected to give a lightning talk. Only &lt;strong&gt;18 participants&lt;/strong&gt; were chosen, and I was one of them.&lt;/p&gt;
&lt;p&gt;My GSoC project &lt;strong&gt;Join KDE&lt;/strong&gt; is an advertisement for KDE itself, so the project itself became an easy conversation starter. It was a great opportunity to introduce KDE and make more people aware of the organization.&lt;/p&gt;
&lt;p&gt;Although I did fumble the last part of my presentation it was more of me being confused where my slide went (some slides were misplaced) aside from that it went as any other informative talk but hey I was funny on the stage (refer to the pics) so people remember me! You win some you lose some, oh well.&lt;/p&gt;
&lt;h2 id="conversations-throughout-the-event"&gt;Conversations Throughout the Event&lt;/h2&gt;
&lt;p&gt;Outside the sessions, I had some interesting discussions with contributors from different organizations. Some contributors showed interest in working wwith us while some showed interest in our eduction/science side but honestly it's hard to bring contributors over as they're in different domains, org admins/mentors or they're busy with their careers.&lt;/p&gt;
&lt;h3 id="su2-foundation"&gt;SU2 Foundation&lt;/h3&gt;
&lt;p&gt;I had a conversation with a maintainer from the &lt;strong&gt;SU2 Foundation&lt;/strong&gt;, whose work focuses on computational fluid dynamics.&lt;/p&gt;
&lt;p&gt;We discussed KDE's scientific and educational initiatives, including KDE for Scientists and several education-related projects. I also shared the &lt;strong&gt;KDE For You&lt;/strong&gt; website as an introduction to the wider KDE ecosystem.&lt;/p&gt;
&lt;h2 id="after-party"&gt;After Party&lt;/h2&gt;
&lt;p&gt;The conversations continued during the after-party on the following day.&lt;/p&gt;
&lt;p&gt;I met a group of students who had become interested in open source after interacting with contributors throughout the event. They had originally attended as friends of another contributor.&lt;/p&gt;
&lt;p&gt;One of them is now actively looking for a project to begin contributing to within KDE. YAYYY!&lt;/p&gt;
&lt;h3 id="new-contributors"&gt;New Contributors&lt;/h3&gt;
&lt;p&gt;Several first-time contributors approached me asking about projects suitable for beginners.&lt;/p&gt;
&lt;p&gt;I introduced them to a number of KDE projects and explained possible contribution paths.&lt;/p&gt;
&lt;p&gt;But the same issue they're busy with the beginning of their careers.&lt;/p&gt;
&lt;h2 id="overall-thoughts"&gt;Overall Thoughts&lt;/h2&gt;
&lt;p&gt;The Alumni Camp was one of the best ways to make people aware of KDE and I tried my best while i had fun ( we played uno there! Will bill the cards to the organization jkjk), a lot of people seemed intrigued and asked me to share some stuff about KDE to them or they'll try it on their own. Met someone from GNOME (they didn't get any lightning talk HA! I know, I know no inter project fighting that's bad) had some good conversations, teased the person from GNOME, had breakfast with them, and tried to make the most of the unconference session and the lightning talks to at least get people to know the name KDE!&lt;/p&gt;
&lt;h2 id="event-gallery"&gt;Event Gallery&lt;/h2&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Solo Photo" src="https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/first.jpeg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="cakes" src="https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/second.jpeg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Gifts" src="https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/third.jpeg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Group photo" src="https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/fourth.jpeg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="after party" src="https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/fifth.jpeg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Lightning talks" src="https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/sixth.jpeg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="card" src="https://blogs.kde.org/2026/07/29/gsoc-alumni-camp-delhi-2026/seventh.jpeg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;</description></item><item><title>Making KIO copy many files fast</title><link>https://blogs.kde.org/2026/07/28/making-kio-copy-many-files-fast/</link><pubDate>Tue, 28 Jul 2026 00:00:01 +0000</pubDate><author>Méven Car</author><guid>https://blogs.kde.org/2026/07/28/making-kio-copy-many-files-fast/</guid><description>&lt;p&gt;There is a bug in KDE's bug tracker that is almost as old as some of our
contributors: &lt;a href="https://bugs.kde.org/show_bug.cgi?id=342056"&gt;bug 342056&lt;/a&gt;,
&amp;quot;Ridiculously slow file copy (multiple small files)&amp;quot;, reported by Alexander
Nestorov back in 2014. The report is blunt: copying a 15 GB folder of roughly 3
million small files took 5 to 10 hours in KDE, versus about 20 minutes with
&lt;code&gt;rsync&lt;/code&gt;. One commenter summed up the mood:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I generally use cp and rsync instead of dolphin for anything more than a few files.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;That bug has been stuck in my head for a while, so this post is about finally
fixing it. I have been working on KIO's copy path, and I want to walk
through where the time was going, some history that explains why, and show
numbers across KIO versions including a plain &lt;code&gt;cp&lt;/code&gt; for reference.&lt;/p&gt;
&lt;p&gt;At with any optimization, let's measure first:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blogs.kde.org/2026/07/28/making-kio-copy-many-files-fast/offcpu-socket.svg"&gt;&lt;figure&gt;
 &lt;img class="img-fluid" alt="Off-CPU flame graph of a KIO 6.28 copy of 5000 small files, with the socket round-trip frames highlighted" src="https://blogs.kde.org/2026/07/28/making-kio-copy-many-files-fast/offcpu-socket.svg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Where a KIO 6.28 copy of 5000 small files spends its blocking time, and there
is no single hotspot. Each file blocks in a burst of short syscalls: reading the
mount table (&lt;code&gt;/proc/self/mountinfo&lt;/code&gt;), opening the source and destination, and
round-tripping a command to the worker over an internal socket. The socket
round-trips, the send and receive plus the waits for each reply, are the frames
highlighted in red, about 15% of the blocking here, spread as thin slivers
across both threads because every one of the thousands of files pays them. The
frames in green are the real filesystem work the copy cannot avoid: the &lt;code&gt;statx&lt;/code&gt;
and &lt;code&gt;openat&lt;/code&gt; calls, &lt;code&gt;copy_file_range&lt;/code&gt; moving the bytes, and the &lt;code&gt;ext4&lt;/code&gt; metadata
updates beneath them. That per-file storm, not any single call, is what the rest
of this post discusses.
(Off-CPU flame graph from &lt;code&gt;sched:sched_switch&lt;/code&gt;, weighted by number of blocking
switches; click to open the full SVG.)&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="a-little-history"&gt;A little history&lt;/h2&gt;
&lt;p&gt;KIO is the layer behind almost every file operation in KDE software, from Dolphin's copy
and paste to the network transparency that lets you open &lt;code&gt;sftp://&lt;/code&gt; or &lt;code&gt;smb://&lt;/code&gt;
URLs as if they were local. Its design goes back to the KDE 2 days, around the
year 2000. Back then the answer to &amp;quot;how do I do I/O without freezing the UI&amp;quot; was
not a thread but a separate process: a &lt;em&gt;worker&lt;/em&gt; (we used to call them kioslaves)
is launched for a protocol and talks to the application over a socket. This
predates usable threading on Linux (&lt;a href="https://en.wikipedia.org/wiki/Native_POSIX_Thread_Library"&gt;Native POSIX Thread
Library&lt;/a&gt; only landed
in Linux 2.6 in 2003), so processes plus socket IPC was the portable, robust
choice, and it still is for network protocols today: if an &lt;code&gt;smb://&lt;/code&gt; worker
crashes, your file manager does not go down with it.&lt;/p&gt;
&lt;p&gt;The flip side is cost. Every request and its reply are serialized and sent over
that socket, with an event-loop hop on each side. For &lt;code&gt;file://&lt;/code&gt; that overhead
buys you nothing, because there is no untrusted network on the other end, just
the local disk.&lt;/p&gt;
&lt;p&gt;In 2022 David Faure changed that: &lt;a href="https://invent.kde.org/frameworks/kio/-/merge_requests/740"&gt; Implement running KIO workers in-process
using a thread &lt;/a&gt;
landed in Frameworks 5.95. Since then the &lt;code&gt;file&lt;/code&gt; worker runs on a thread inside
the application instead of as a separate process (other protocols stay
out-of-process for robustness). That removed process launch and context-switch
cost.&lt;/p&gt;
&lt;h2 id="no-socket-between-the-thread-and-the-app-629"&gt;No socket between the thread and the app (6.29)&lt;/h2&gt;
&lt;p&gt;There was still a catch that had been hiding in plain sight: even in-process,
the worker thread and the application talked to each other over a socketpair,
serializing every command as if they were separate processes. Once the thread
was used, that socket was pure overhead.&lt;/p&gt;
&lt;p&gt;That's the red highlight in the first flamegraph.&lt;/p&gt;
&lt;p&gt;So in-process workers now use a real in-memory transport instead of a loopback
socket. A new &lt;code&gt;ThreadConnectionBackend&lt;/code&gt; handles commands, and for reads the actual
data buffer, straight to the peer thread, with no serialization and no syscall,
which makes in-process file reads zero-copy. This is the biggest single jump in
the numbers below, and it has landed on master for 6.29
(&lt;a href="https://invent.kde.org/frameworks/kio/-/merge_requests/2279"&gt;kio!2279&lt;/a&gt;).&lt;/p&gt;
&lt;h2 id="next-batching-the-copy-and-the-stat-under-review"&gt;Next: batching the copy and the stat (under review)&lt;/h2&gt;
&lt;p&gt;The changes above make each command cheap. The remaining cost is that there are
still so many of them: copying N files is N separate &lt;code&gt;file_copy&lt;/code&gt; jobs, each one
going through the job scheduler and taking its own round-trip to the worker. For
many small files that fixed per-file cost, not the data, is what dominates.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;CopyJob&lt;/code&gt; can dispatch a whole batch of plain local-to-local files to the worker
in one command, and the worker copies them (using &lt;code&gt;copy_file_range&lt;/code&gt;,
and reflink on filesystems like Btrfs or XFS that support it). Each file still
gets its progress signal, its byte accounting, its undo entry, and anything
the worker cannot do blindly — an existing destination, an unreadable source, a
rename or skip decision — is handed back to the normal per-file path. The gate is
conservative on purpose so a hung mount can never freeze the batch
(&lt;a href="https://invent.kde.org/frameworks/kio/-/merge_requests/2282"&gt;kio!2282&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blogs.kde.org/2026/07/28/making-kio-copy-many-files-fast/offcpu-batch.svg"&gt;&lt;figure&gt;
 &lt;img class="img-fluid" alt="Off-CPU flame graph after batch-copy, with the socket round-trip frames gone" src="https://blogs.kde.org/2026/07/28/making-kio-copy-many-files-fast/offcpu-batch.svg"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The same copy on 6.29 with batch-copy: the red socket round-trips are gone. Two
things removed them: the in-memory transport from the previous section (no
socketpair at all) and batch-copy folding a whole run of files into one command
instead of one round-trip each. What is left is real filesystem work: the green
frames are the copy itself, &lt;code&gt;copy_file_range&lt;/code&gt; moving the bytes, the &lt;code&gt;openat&lt;/code&gt; and
&lt;code&gt;statx&lt;/code&gt; calls, and the &lt;code&gt;ext4&lt;/code&gt; metadata beneath them. The wide plateau that is not
green is the benchmark loop deleting each pass's files before the next run
(&lt;code&gt;unlink&lt;/code&gt;), which is teardown rather than part of the copy.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Before copying, &lt;code&gt;CopyJob&lt;/code&gt; stats every source, which is another per-file
round-trip. The follow-up batches the stat phase over the same in-process lane.
This is the &lt;code&gt;batch-copy-stat&lt;/code&gt; column below.&lt;/p&gt;
&lt;p&gt;Both of these are under review and targeted at a release after 6.29, so treat
their columns in the table as a preview of what is coming rather than something
you can install today.&lt;/p&gt;
&lt;h2 id="numbers"&gt;Numbers&lt;/h2&gt;
&lt;p&gt;Methodology: a 13th-gen Intel Core i7-1365U laptop, everything built
&lt;code&gt;RelWithDebInfo&lt;/code&gt; without any sanitizer, copying onto a real ext4 volume (so no
reflink shortcut, &lt;code&gt;copy_file_range&lt;/code&gt; moves real bytes). Each KIO version supplies
both its own &lt;code&gt;libKIOCore&lt;/code&gt; and its own &lt;code&gt;kio_file&lt;/code&gt; worker. Times are the median of
5 runs (3 for the large set) after a discarded warm-up, so caches are warm and
equal for every version. &lt;code&gt;cp -r --preserve=mode,timestamps&lt;/code&gt; is included as the
floor, since that is what the bug reporter reached for instead of Dolphin.&lt;/p&gt;
&lt;p&gt;5000 files of 4 KB each (the many-small-files case from the bug):&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Version&lt;/th&gt;
 &lt;th&gt;Median time&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;cp -r&lt;/code&gt; (coreutils)&lt;/td&gt;
 &lt;td&gt;81 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.28.0&lt;/td&gt;
 &lt;td&gt;1616 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.29-dev (master)&lt;/td&gt;
 &lt;td&gt;396 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.29-dev + batch-copy&lt;/td&gt;
 &lt;td&gt;88 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.29-dev + batch-copy-stat&lt;/td&gt;
 &lt;td&gt;93 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;1000 files of 5 MB each (bulk data, where the copy is I/O-bound):&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Version&lt;/th&gt;
 &lt;th&gt;Median time&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;cp -r&lt;/code&gt; (coreutils)&lt;/td&gt;
 &lt;td&gt;1312 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.28.0&lt;/td&gt;
 &lt;td&gt;1997 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.29-dev (master)&lt;/td&gt;
 &lt;td&gt;1687 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.29-dev + batch-copy&lt;/td&gt;
 &lt;td&gt;1506 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;KIO 6.29-dev + batch-copy-stat&lt;/td&gt;
 &lt;td&gt;1454 ms&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The small-files case is the story. KIO 6.28 was about 20x slower than &lt;code&gt;cp&lt;/code&gt;,
which is exactly the ratio the 2014 report complained about. Removing the socket
for in-process workers, together with no longer probing the destination
filesystem once per file, takes it from about 1.6 s to 0.4 s (roughly 4x).
Batching the copy takes it to 88 ms, essentially &lt;code&gt;cp&lt;/code&gt; speed and about 18x faster
than 6.28. That &amp;quot;I use cp instead of dolphin&amp;quot; line finally has an answer.&lt;/p&gt;
&lt;p&gt;The large-file case was already well covered before any of this work, and the
table shows it: the copy is bound by moving the bytes, so even KIO 6.28 stayed
close to &lt;code&gt;cp&lt;/code&gt; there, and the per-file optimizations barely move the number
(batch-copy lands within about 15% of &lt;code&gt;cp&lt;/code&gt;). That is the whole reason this
effort targets many small files instead, where the fixed per-file cost, not the
data, is what dominates.&lt;/p&gt;
&lt;p&gt;batch-copy and batch-copy-stat come out tied here: the benchmark copies a single
directory, so its entries arrive in one listing and batch-stat has nothing to
batch. It helps the other case, copying a large selection of individual files
that would otherwise be one stat round-trip each. Since it removes the
round-trip and not the &lt;code&gt;stat&lt;/code&gt; call, the win is largest when stats are cheap, not
when the disk is slow. Read the two as equal on this test.&lt;/p&gt;
&lt;p&gt;And &lt;code&gt;cp&lt;/code&gt; will almost certainly stay a little ahead, by design: KIO does more
than copy the bytes. It reports per-file progress, can be paused and cancelled,
keeps an undo record, preserves permissions and timestamps, resolves conflicts,
and tells any open file manager what changed so its view refreshes. That work is
not free, and the goal was never to beat &lt;code&gt;cp&lt;/code&gt;, only to make the local case fast
enough that reaching for &lt;code&gt;cp&lt;/code&gt; instead of Dolphin stops being the obvious choice.&lt;/p&gt;
&lt;h2 id="caveats-and-what-is-next"&gt;Caveats and what is next&lt;/h2&gt;
&lt;p&gt;These are laptop numbers on one ext4 disk with warm caches, meant to compare
versions, not to be absolute. On Btrfs or XFS the batch path reflinks instead of
copying, which changes the large-file picture entirely. The batch fast path only
engages for plain local-to-local copies on a responsive filesystem; anything
else (network, FAT/NTFS, conflicts needing a dialog) falls back to the existing
per-file path, unchanged.&lt;/p&gt;
&lt;p&gt;Thanks to David Faure for the in-process worker threads that made all of this
possible, to Frank Reininghaus for the earlier listing fixes, and to Alexander
Nestorov for a bug report that aged well enough to still be worth closing.&lt;/p&gt;
&lt;p&gt;That's all, folks.&lt;/p&gt;</description></item><item><title>This Week in Plasma: Auto-Lock and Unlock for Remote Desktop Sessions</title><link>https://blogs.kde.org/2026/07/25/this-week-in-plasma-auto-lock-and-unlock-for-remote-desktop-sessions/</link><pubDate>Sat, 25 Jul 2026 00:00:01 +0000</pubDate><author>Nate Graham, John Veness, and Salman Farooq</author><guid>https://blogs.kde.org/2026/07/25/this-week-in-plasma-auto-lock-and-unlock-for-remote-desktop-sessions/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week saw a bunch of work on some core infrastructure components, like the RDP server, login greeter, and screen configuration tooling. That’s in addition to lots of other good work, too:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;You can now configure Plasma’s built-in remote desktop server to automatically lock the session after the last connected RDP client disconnects. (Nick Haghiri, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/211"&gt;krdp MR #211&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Lock and unlock option on the “Remote Desktop” page in System Settings" src="https://blogs.kde.org/2026/07/25/this-week-in-plasma-auto-lock-and-unlock-for-remote-desktop-sessions/krdp-lock-unlock.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;Plasma Login Manager now remembers the last-used session for each user. (Jin Liu and Oliver Beard, &lt;a href="https://invent.kde.org/plasma/plasma-login-manager/-/merge_requests/176"&gt;plasma-login-manager MR #176&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/libplasma/-/merge_requests/1557"&gt;libplasma MR #1557&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Discover’s transaction progress view now shows items in groups, with the ones currently in progress in a group at the top. (Aleix Pol Gonzalez, &lt;a href="https://invent.kde.org/plasma/discover/-/merge_requests/1219"&gt;discover MR #1219&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="grouped transactions in Discover’s progress dialog" src="https://blogs.kde.org/2026/07/25/this-week-in-plasma-auto-lock-and-unlock-for-remote-desktop-sessions/transaction-grouping.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;On multi-screen setups, the existing &lt;kbd&gt;Meta&lt;/kbd&gt; + &lt;kbd&gt;1&lt;/kbd&gt;-&lt;kbd&gt;9&lt;/kbd&gt; shortcuts for jumping straight to a task now target the panel on the screen you’re actively using, rather than always going to the primary monitor’s panel. This matches the behavior added to last week’s new task-switching shortcuts. (Salman Farooq, &lt;a href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/3884"&gt;plasma-desktop MR #3884&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6848"&gt;plasma-workspace MR #6848&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;You can now find languages in Plasma Setup by searching for their locale code, localized name, or English name. (Tiziano Gaia, &lt;a href="https://invent.kde.org/plasma/plasma-setup/-/merge_requests/109"&gt;plasma-setup MR #109&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-629"&gt;Frameworks 6.29&lt;/h3&gt;
&lt;p&gt;Further improved the visual fidelity of small icons drawn with the &lt;code&gt;Kirigami.Icon&lt;/code&gt; component. (Méven Car, &lt;a href="https://invent.kde.org/frameworks/kirigami/-/merge_requests/2127"&gt;kirigami MR #2127&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-667"&gt;Plasma 6.6.7&lt;/h3&gt;
&lt;p&gt;Fixed an issue that made KWin crash on login for newer NVIDIA GPUs using the latest NVIDIA drivers in conjunction with various color management features. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523287"&gt;KDE Bugzilla #523287&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Restored the ability to play full-screen video in Chromium-based browsers on a virtual screen, such as those used when screen recording. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523353"&gt;Bugzilla #523353&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed an issue that could make Plasma freeze and then take down apps as well after you switched activities with unusual values in your Plasma config file. (Shouvik Kar, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522039"&gt;KDE Bugzilla #522039&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed two visual glitches affecting the Digital Clock widget: one that made the layout overflow on a panel right after turning on the “always show seconds” setting, and another one that made the time zone label fail to use the systemwide font family. (Hunter White and Nate Graham, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523010"&gt;KDE Bugzilla #523010&lt;/a&gt; and &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523164"&gt;KDE Bugzilla #523164&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;When an image used in a slideshow in the Media Frame widget is changed on disk, the widget now notices it properly, rather than replacing it with a blank frame. (David Wild, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521538"&gt;KDE Bugzila #521538&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-674"&gt;Plasma 6.7.4&lt;/h3&gt;
&lt;p&gt;Fixed a weird bug that could break Plasma Login Manager after you unplugged a screen and plugged it back in while on the login screen. (Oliver Beard, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523313"&gt;KDE Bugzilla #523313&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a bug that could make KWin crash on login on various laptops. (Xaver Hugl, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9632"&gt;kwin MR #9632&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a case where System Settings could crash when Fanatec racing pedals were plugged in. (Sebastian Sauer, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522886"&gt;KDE Bugzilla #522886&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Restored the ability to change the wallpaper and apply Plasma settings to Plasma Login Manager for users who upgraded from Plasma 6.6. (David Edmundson, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=517081"&gt;KDE Bugzilla #517081&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-629-1"&gt;Frameworks 6.29&lt;/h3&gt;
&lt;p&gt;Fixed a surprisingly common yet random-seeming way that Plasma could crash. (Shouvik Kar, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=519614"&gt;KDE Bugzilla #519614&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;QML-based KDE apps once again remember whether they were maximized or not across launches. (Nate Graham, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522205"&gt;KDE Bugzilla #522205&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Worked around a Qt bug that made some keyboard shortcuts in Kirigami-based apps not get assigned when using the app in certain languages other than English. (Manuel Alcaraz Zambrano, &lt;a href="https://invent.kde.org/frameworks/kirigami/-/merge_requests/2124"&gt;kirigami MR #2124&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Icons drawn by the &lt;code&gt;Kirigami.Icon&lt;/code&gt; component now use the correct aspect ratio for portrait-orientation images when they’re being rounded to standard icon sizes. (Méven Car, &lt;a href="https://invent.kde.org/frameworks/kirigami/-/merge_requests/2126"&gt;kirigami MR #2126&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;We have created a new &lt;code&gt;kscreenctl&lt;/code&gt; tool, intended as a future replacement for the old &lt;code&gt;kscreen-doctor&lt;/code&gt; tool. It includes more features, more robustness, and a more conventional usage method. (Vlad Zahorodnii, &lt;a href="https://invent.kde.org/plasma/kscreen/-/merge_requests/487"&gt;kscreen MR #487&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Output of &lt;code&gt;kscreenctl --help&lt;/code&gt; in a terminal window" src="https://blogs.kde.org/2026/07/25/this-week-in-plasma-auto-lock-and-unlock-for-remote-desktop-sessions/kscreenctl.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;Discover is now faster to load icons for Flatpak apps. (Aleix Pol Gonzalez, &lt;a href="https://invent.kde.org/plasma/discover/-/merge_requests/1366"&gt;discover MR #1366&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>This Week in Plasma: Shadows for Steam and Discord</title><link>https://blogs.kde.org/2026/07/18/this-week-in-plasma-shadows-for-steam-and-discord/</link><pubDate>Sat, 18 Jul 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/07/18/this-week-in-plasma-shadows-for-steam-and-discord/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week the bug-fixing spree of the past few weeks wound down as feature work and user interface polishing moved into the foreground. So let’s start out with something pretty darn user-visible:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;KWin now automatically applies a shadow, outline, and corner rounding effect to some client-side-decorated windows that lack these — such as Steam and Discord windows. Read more about this &lt;a href="https://blog.vladzahorodnii.com/2026/07/16/server-side-drop-shadows"&gt;on Vlad’s blog&lt;/a&gt;! (Vlad Zahorodnii, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9147"&gt;kwin MR #9147&lt;/a&gt;, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9566"&gt;kwin MR #9566&lt;/a&gt;, &lt;a href="https://invent.kde.org/plasma/breeze/-/merge_requests/612"&gt;breeze MR #612&lt;/a&gt;, and &lt;a href="https://invent.kde.org/plasma/kdecoration/-/merge_requests/93"&gt;kdecoration MR #93&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Steam and Discord showing shadows, outlines, and rounded corners" src="https://blogs.kde.org/2026/07/18/this-week-in-plasma-shadows-for-steam-and-discord/shadows-outlines-rounded-corners.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;You can now assign processes to specific CPUs or groups of CPUs in System Monitor, known as setting CPU affinity. (Taras Oleksyn, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=429151"&gt;KDE Bugzilla #429151&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Dialog for setting CPU affinity in System Monitor" src="https://blogs.kde.org/2026/07/18/this-week-in-plasma-shadows-for-steam-and-discord/cpu-affinity.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;The Task Manager widget now has global shortcuts for re-arranging tasks and switching between them. (Salman Farooq, &lt;a href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/3819"&gt;plasma-desktop MR #3819&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-674"&gt;Plasma 6.7.4&lt;/h3&gt;
&lt;p&gt;Apps using the global shortcuts portal are now allowed to rename their shortcuts by requesting to re-register them. (David Redondo, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523063"&gt;KDE Bugzilla #523063&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;System Settings’ Window Behavior page has been ported to QML and modernized a bit in the process, bringing it up to par with most other pages in System Settings. (Tobias Ozór, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9370"&gt;kwin MR #9370&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="QML-based Window Behavior page in System Settings" src="https://blogs.kde.org/2026/07/18/this-week-in-plasma-shadows-for-steam-and-discord/qml-window-behavior-page.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-667"&gt;Plasma 6.6.7&lt;/h3&gt;
&lt;p&gt;System Settings’ Effects page now behaves properly for KWin effects whose default values have been overridden at the distribution level. (Nicolas Fella, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/8112"&gt;kwin MR #8112&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-673"&gt;Plasma 6.7.3&lt;/h3&gt;
&lt;p&gt;Fixed a recent regression that made the &lt;code&gt;ksystemstats&lt;/code&gt; process sometimes crash when the system woke from sleep. (Iyán Méndez Veiga, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521353"&gt;KDE Bugzilla #521353&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that caused lag and stuttering on certain websites using hardware-accelerated rendering for systems using certain GPUs. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521742"&gt;KDE Bugzilla #521742&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a weird issue that made the system stop sleeping according to the normal schedule if you interrupted certain monitors while they were right in the middle of shutting down. (Ameen Al-Asady, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523001"&gt;KDE Bugzilla #523001&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-674-1"&gt;Plasma 6.7.4&lt;/h3&gt;
&lt;p&gt;Fixed a somewhat common way that Discover could crash while installing updates. (Aleix Pol Gonzalez, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522255"&gt;KDE Bugzilla #522255&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The bandwidth usage reported by Plasma’s remote desktop server is now accurate. (Liu Jie, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/216"&gt;krdp MR #216&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a layout glitch on System Settings’ Pointers page that prevented some pointer size options from being fully visible when using screen scaling. (Akseli Lahtinen, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521187"&gt;KDE Bugzilla #521187&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed two layout glitches in Discover when using the app with multiple backends and looking at large items on the Installed page. (Nate Graham, &lt;a href="https://invent.kde.org/plasma/discover/-/merge_requests/1357"&gt;discover MR #1357&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/discover/-/merge_requests/1358"&gt;discover MR #1358&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The “Typing on the desktop activates KRunner” setting is now fully respected for Folder View widgets placed on the desktop, in addition to the embedded Folder View that &lt;em&gt;is&lt;/em&gt; the desktop. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=523053"&gt;KDE Bugzilla #523053&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Fixed some positioning and theme compatibility issues with drop-down menus in Plasma and its widgets. (Filip Fila, &lt;a href="https://invent.kde.org/plasma/libplasma/-/merge_requests/1546"&gt;libplasma MR #1546&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="frameworks-629"&gt;Frameworks 6.29&lt;/h3&gt;
&lt;p&gt;Reduced Plasma’s memory usage a little bit. (Nicolas Fella, &lt;a href="https://invent.kde.org/frameworks/ksvg/-/merge_requests/113"&gt;ksvg MR #113&lt;/a&gt; and &lt;a href="https://invent.kde.org/frameworks/kguiaddons/-/merge_requests/224"&gt;kguiaddons MR #224&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="kde-gear-2612"&gt;KDE Gear 26.12&lt;/h3&gt;
&lt;p&gt;System Settings’ Connection Preferences page has been removed. Its settings were extremely esoteric and they applied to almost nothing these days, so the page was mostly just cluttering the place up. (Tobias Fella, &lt;a href="https://invent.kde.org/network/kio-extras/-/merge_requests/533"&gt;kio-extras MR #533&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>openQA Testing in KDE Linux</title><link>https://blogs.kde.org/2026/07/13/openqa-testing-in-kde-linux/</link><pubDate>Mon, 13 Jul 2026 00:00:00 +0000</pubDate><author>Thomas Duckworth</author><guid>https://blogs.kde.org/2026/07/13/openqa-testing-in-kde-linux/</guid><description>&lt;p&gt;The openQA-based testing system has recently been integrated into KDE Linux
(hooray!), and I thought it was about time I did a little write-up.&lt;/p&gt;
&lt;p&gt;The nature of KDE Linux, in which the whole system ships as a single signed
image rather than a pile of packages, is (in theory) wonderful for reliability.
However, this raises an uncomfortable question: how do we make sure that image
actually &lt;em&gt;works&lt;/em&gt; before we ship it to people? OpenQA is the answer!&lt;/p&gt;
&lt;p&gt;TL;DR: we boot each build in a virtual machine, run tests that interact with it
to ensure the system installs and upgrades properly and that desktop
functionality works. Once the tests pass, the user gets an end-to-end
tested image. This replaces the rather rudimentary basic-test machinery, which
simply booted up the live image and checked if the boot was blessed and if any
units failed.&lt;/p&gt;
&lt;h2 id="the-test-flow"&gt;The test flow&lt;/h2&gt;
&lt;p&gt;A single build goes through three stages.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;install-system&lt;/code&gt; takes the live ISO, boots it in a VM, and runs a real
installation onto an empty virtual disk, just like a real user would.
&lt;code&gt;sanity-test&lt;/code&gt; then boots that freshly installed disk and verifies the system
actually comes up and behaves. In between, while we're testing the upgrade path
in parallel, an &lt;code&gt;upgrade-system&lt;/code&gt; stage installs the previous release and upgrades
it to the current build to check whether the previous release can actually be
upgraded to the new build. Each stage hands its disk to the next.&lt;/p&gt;
&lt;p&gt;They're wired together as a dependency chain, so in the openQA web interface
the whole run shows up as a single connected graph. If installation fails, the
later stages don't bother running, as there's nothing to test.&lt;/p&gt;
&lt;p&gt;Our CI pipelines now approximately look like this:&lt;/p&gt;
&lt;img src="ci-flowchart.png" alt="CI flowchart. Imaging failures upload to CI artifacts, while successful images run parallel openQA test and upgrade jobs before gated publishing." width="100%"&gt;
&lt;h2 id="interesting-architectural-tidbits"&gt;Interesting architectural tidbits&lt;/h2&gt;
&lt;p&gt;We do a few things differently compared to your stock-standard openSUSE or
Fedora openQA instances.&lt;/p&gt;
&lt;h3 id="selenium-testing-instead-of-needle-testing"&gt;Selenium testing instead of needle testing&lt;/h3&gt;
&lt;p&gt;Normal openQA tests operate through &amp;quot;needles&amp;quot;. These aren't sewing needles;
rather, they're screenshots of the virtual machine in some desired state with
some JSON metadata attached. This metadata defines certain areas to match or
ignore, and the test code can click matched areas. While needles are certainly
effective at interacting with the system exactly how a user would, they have
drawbacks. It's quite annoying to make and constantly update needles, as well
as keep them from breaking every time there are slight changes in user
interfaces.&lt;/p&gt;
&lt;p&gt;Luckily for us, we already have a battle-tested way of interacting with user
interfaces for testing:
&lt;a href="https://invent.kde.org/sdk/selenium-webdriver-at-spi"&gt;selenium-webdriver-at-spi&lt;/a&gt;
. It's already widely used across unit tests in KDE projects, hence our
decision to use it affords us a lot more flexibility, maintainability, and
consistency. It also enables app developers to run their own tests on KDE Linux
with openQA down the track.&lt;/p&gt;
&lt;p&gt;Essentially, we have a Python &lt;code&gt;unittest&lt;/code&gt; script on the system that we're testing
(see the sysext section below for details), which attaches itself to an
application. It then interacts with the app by leveraging the AT-SPI2
accessibility API to send clicks and read the screen, in a similar vein to
screen-reading software such as Orca.&lt;/p&gt;
&lt;h3 id="ephemeral-workers-in-ci-jobs"&gt;Ephemeral workers in CI jobs&lt;/h3&gt;
&lt;p&gt;openQA instances usually have long-running workers that are hosted on servers.
It's a bit of a painful ordeal to get all that infrastructure up and running.
On top of that, hosted workers need to do an upload-download rigmarole
involving large assets from the server, such as the &lt;code&gt;.iso&lt;/code&gt; files and the
generated hard disk. This makes things &lt;em&gt;very slow&lt;/em&gt; for no good reason.&lt;/p&gt;
&lt;p&gt;We already have CI runners that work perfectly well for this and can be spun up
when needed, giving us effortlessly simple scaling. So, we spin up an openQA
worker container in a CI runner, which submits jobs to the openQA server. It
has its own UUID, which is shared with the job, so the worker running in CI is
always assigned the right job.&lt;/p&gt;
&lt;p&gt;This saves us from the bandwidth rigmarole because all the assets are generated
and consumed within the one container, so we can simply keep all the assets on
the worker and never upload them to the server. As a result, we save a lot of
storage space on the openQA server, so we can run it with fairly minimal
hosting requirements.&lt;/p&gt;
&lt;h3 id="the-use-of-systemd-system-extensions-to-inject-tests"&gt;The use of systemd system extensions to inject tests&lt;/h3&gt;
&lt;p&gt;How do we actually get our Selenium tests on the system, you may ask? Enter the
humble
&lt;a href="https://www.freedesktop.org/software/systemd/man/latest/systemd-sysext.html"&gt;system extension&lt;/a&gt;
, or sysext, for short.&lt;/p&gt;
&lt;p&gt;We include a few things in our sysext:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Python &lt;code&gt;unittests&lt;/code&gt; themselves.&lt;/li&gt;
&lt;li&gt;A bootstrap script with some system configuration, so we have an appropriate
environment set up for testing.&lt;/li&gt;
&lt;li&gt;A &lt;code&gt;venv&lt;/code&gt;, so we can make use of the Python ecosystem. This is created in the
bootstrap script.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All of this is packaged up into an EROFS &lt;code&gt;.img&lt;/code&gt; file, which we mount to the
worker's VM. This is then automounted by an associated &lt;code&gt;udev&lt;/code&gt; rule in upstream
KDE Linux, with the bootstrapping script being triggered by an associated
service shortly afterward.&lt;/p&gt;
&lt;p&gt;Since we have the capability to inject tests and configuration into the system,
we're able to test things that would otherwise be impossible to test with
needles. For example, we test if essential desktop processes have ever crashed,
if any systemd services failed, if networking works, and if commands we ship
with KDE Linux work properly. All of these tests leverage direct access to the
innards of the system.&lt;/p&gt;
&lt;h3 id="interaction-with-the-system-through-ssh"&gt;Interaction with the system through SSH&lt;/h3&gt;
&lt;p&gt;To actually poke at the system and have the worker run these tests
sequentially, we need some way of interacting with the system. openQA provides
some facilities to interact with a serial terminal, but this proved to be very
fragile and unreliable, with buffering issues everywhere.&lt;/p&gt;
&lt;p&gt;Instead, we set up SSH with our sysext and use the facilities provided by the
Python library &lt;a href="https://www.fabfile.org/"&gt;Fabric&lt;/a&gt; to run all our tests in a
robust manner.&lt;/p&gt;
&lt;p&gt;Each test runs in a transient systemd service created by &lt;code&gt;systemd-run&lt;/code&gt;. This
runs the test as the intended user, groups its processes in a cgroup, gives it
an isolated journal stream for output, and returns its service exit status
synchronously. The harness can then collect the unit's journal even when the
test fails, and we keep everything neat and tidy.&lt;/p&gt;
&lt;h3 id="staging-images-before-we-publish-and-how-we-test-updates"&gt;Staging images before we publish, and how we test updates&lt;/h3&gt;
&lt;p&gt;To prevent users from downloading an image that still needs to be tested, we
create a staging directory on storage.kde.org, scoped to the imaging stage's
job ID, that stores the built artifacts in a directory tree. It has a layout
that mirrors the public-facing tree, so we can simply merge it in once tests
pass.&lt;/p&gt;
&lt;p&gt;However, this throws a spanner in the works when we try to test system upgrades
because we obviously can't upgrade to an image that hasn't been published yet!&lt;/p&gt;
&lt;p&gt;To fix this, the solution is simple. In the sysext, we simply point
&lt;code&gt;systemd-sysupdate&lt;/code&gt; to the staging directory we've already created. This has
some drawbacks, though. For the moment, we can't test delta updates through
&lt;code&gt;kde-linux-sysupdated&lt;/code&gt;. That shouldn't be too difficult to fix in the near
future, but we're waiting on KDE Linux to be entirely hosted on storage.kde.org
before we jump on that. The bigger issue here is that we really don't have a
good way of testing updates from the chunk store. A better story for this still
needs to be worked out, but for the time being the upgrade test is good enough.&lt;/p&gt;
&lt;h2 id="whats-to-come"&gt;What's to come&lt;/h2&gt;
&lt;p&gt;We have a few things we're aiming towards:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;As mentioned above, testing delta/chunked upgrades.&lt;/li&gt;
&lt;li&gt;Leveraging openQA to allow app developers to test their own apps atop KDE
Linux.&lt;/li&gt;
&lt;li&gt;Generalizing all our openQA glue so other projects can use the architecture
we've built.&lt;/li&gt;
&lt;li&gt;By extension, porting the aforementioned glue from admittedly fragile bash
scripts to Python or some other more appropriate language.&lt;/li&gt;
&lt;li&gt;Testing installs using manual partitioning and Full Disk Encryption.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;…and probably many more things that we haven't thought of yet. Exciting times!&lt;/p&gt;</description></item><item><title>Redesigning Lokalize's Translation Memory Tab - Mid-GSoC</title><link>https://blogs.kde.org/2026/07/13/mid-gsoc-blog/</link><pubDate>Mon, 13 Jul 2026 00:00:00 +0000</pubDate><author>Navya Sai Sadu</author><guid>https://blogs.kde.org/2026/07/13/mid-gsoc-blog/</guid><description>&lt;p&gt;The past three weeks were a mix of cleanup, debugging, completing the work concerning UI and understanding &lt;em&gt;TMView&lt;/em&gt;( since I did not look into it during proposal period) and &lt;em&gt;TMTab&lt;/em&gt; again to review my design choices and see if I'm going in the right direction.&lt;/p&gt;
&lt;h2 id="cleaning-up-tmmanager-and-getting-checkboxes-working"&gt;Cleaning up TMManager and getting checkboxes working&lt;/h2&gt;
&lt;p&gt;First up was cleaning &lt;code&gt;TMManagerWin&lt;/code&gt;, reformatting, removing now obsolete references and code. With that done, I resumed work on the per-project TM selection checkboxes.&lt;/p&gt;
&lt;p&gt;The checkboxes are backed directly by DBFilesModel rather than a separate proxy layer. Overriding &lt;code&gt;flags()&lt;/code&gt;, &lt;code&gt;data()&lt;/code&gt;, and &lt;code&gt;setData()&lt;/code&gt; on the existing model was the way to go. Qt's view renders the checkboxes automatically once &lt;code&gt;Qt::ItemIsUserCheckable&lt;/code&gt; is set and &lt;code&gt;Qt::CheckStateRole&lt;/code&gt; returns a value. Check state persists to &lt;code&gt;ProjectLocal::selectedTMs()&lt;/code&gt; immediately on every toggle via &lt;code&gt;saveCheckedState()&lt;/code&gt;, and reloads on project open via a &lt;code&gt;Project::loaded&lt;/code&gt; connection.&lt;/p&gt;
&lt;p&gt;One non-obvious issue I stumbled into and fixed myself was &lt;code&gt;cleanupSelectedTMs()&lt;/code&gt;, which removes stale entries for TMs that no longer exist on disk, was being called immediately when &lt;code&gt;Project::loaded&lt;/code&gt; fired. But &lt;em&gt;DBFilesModel&lt;/em&gt; populates asynchronously via &lt;em&gt;QFileSystemModel&lt;/em&gt; scanning the TM directory. The fix was deferring &lt;code&gt;cleanupSelectedTMs()&lt;/code&gt; using &lt;code&gt;QTimer::singleShot()&lt;/code&gt;, the same pattern used elsewhere in the codebase for async model population. &lt;code&gt;loadCheckedState()&lt;/code&gt; itself runs immediately since it only reads from config and doesn't need the model to be populated. This was a subtle timing issue that only surfaced when testing with an actual project and multiple TM databases. In fact, &lt;code&gt;cleanupSelectedTMs()&lt;/code&gt; itself wasn't thought of when planning.&lt;/p&gt;
&lt;p&gt;After testing this end-to-end and verifying the &lt;em&gt;.local&lt;/em&gt; config file was being written and read correctly, I merged this in.&lt;/p&gt;
&lt;h2 id="studying-tmviews-querying-and-why-it-cant-help-tmtab"&gt;Studying TMView's querying and why it can't help TMTab&lt;/h2&gt;
&lt;p&gt;Before touching TMTab's query logic, I spent time understanding how TMView (the suggestions dock widget in the editor) does its querying since my mentor suggested that it's querying might help designing something similar for TMTab's multi-TM quering.&lt;/p&gt;
&lt;p&gt;TMView uses &lt;em&gt;SelectJob&lt;/em&gt; which operates on &lt;em&gt;TMEntry&lt;/em&gt; structs, it does fuzzy word-level matching, scores results, and is designed specifically for the suggestions workflow. It fires secondary DB queries only when the primary project DB scores below a threshold.&lt;/p&gt;
&lt;p&gt;This is fundamentally different from what TMTab needs, it uses &lt;em&gt;ExecQueryJob&lt;/em&gt; which runs SQL query against a DB and hands the cursor to &lt;em&gt;QSqlQueryModel&lt;/em&gt;. The two systems aren't interchangeable, so the multi-DB approach for each has to be designed separately I guess. For TMView, the change is relatively small, loop &lt;code&gt;selectedTMs()&lt;/code&gt; and fire one SelectJob per DB. For TMTab, it might turn to be little complex.&lt;/p&gt;
&lt;h2 id="removing-the-dbname-combobox"&gt;Removing the dbName combobox&lt;/h2&gt;
&lt;p&gt;With the TM list in TMManagerWin now showing checkboxes for selection, the &lt;code&gt;dbName&lt;/code&gt; KComboBox in the search panel is redundant, users select which TMs to query via checkboxes, not a dropdown. I removed it from queryoptions.ui and cleaned up all references in tmtab.cpp, but some of them need workaround. The &lt;code&gt;openFile()&lt;/code&gt; (RemoveFileJob) gets a TODO, to be fixed properly once multi-DB results carry their source DB name.&lt;/p&gt;
&lt;h2 id="debugging-with-gdb-and-dr-konqi"&gt;Debugging with GDB and Dr Konqi&lt;/h2&gt;
&lt;p&gt;My mentor reported a crash when opening the QA dock widget in the TM tab. This was a good opportunity to learn proper debugging with GDB, Dr Konqi, and reading backtraces.&lt;/p&gt;
&lt;p&gt;After investigating, this appeared to be a preexisting bug unrelated to my changes. It's probably data-dependent and only triggers with specific content in the TM results view at the moment the QA dock repaints. It didn't reproduce on my machine. I might work on it later when I have time.&lt;/p&gt;
&lt;p&gt;The years old chats on QtForum and StackOverflow were helpful throughout. Qt itself is so well documented!&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="TM Tab Redesigned" src="https://blogs.kde.org/2026/07/13/mid-gsoc-blog/TMTabRedesign.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;I'm looking forward to see how translators would like the TMTab's glow up when the project is completed and all the changes get merged.&lt;/p&gt;</description></item><item><title>This Week in Plasma: Audio Recording in Spectacle</title><link>https://blogs.kde.org/2026/07/11/this-week-in-plasma-audio-recording-in-spectacle/</link><pubDate>Sat, 11 Jul 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/07/11/this-week-in-plasma-audio-recording-in-spectacle/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week was busy! We’ve got some great new features to share, improved theming compatibility, UI improvements, bug fixes… and lots more! This is one of those weeks with a bit of something for everyone ­— even people who are picky about software dependencies. Take a look:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Spectacle now gives you the option to record audio during screen recordings! It can grab audio from the microphone, audio that the system is outputting, or both. (Khudoberdi Abdujalilov, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=474798"&gt;KDE Bugzilla #474798&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Audio recording options in Spectacle" src="https://blogs.kde.org/2026/07/11/this-week-in-plasma-audio-recording-in-spectacle/audio-recording-in-spectacle.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;System Monitor can now measure VRAM usage as a percentage of the total, just like it can for regular RAM. (Beck Thompson, &lt;a href="https://invent.kde.org/plasma/ksystemstats/-/merge_requests/135"&gt;ksystemstats MR #135&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The 13-month Ethiopian calendar joins the growing ranks of supported alternate calendars! (Eyobed Awel, &lt;a href="https://invent.kde.org/plasma/kdeplasma-addons/-/merge_requests/1079"&gt;kdeplasma-addons MR #1079&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Ethiopian alternate calendar" src="https://blogs.kde.org/2026/07/11/this-week-in-plasma-audio-recording-in-spectacle/ethiopian-calendar.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-666"&gt;Plasma 6.6.6&lt;/h3&gt;
&lt;p&gt;Improved the responsiveness of the brightness slider in the Brightness &amp;amp; Color widget. (Marco Martin, &lt;a href="https://invent.kde.org/plasma/powerdevil/-/merge_requests/650"&gt;powerdevil MR #650&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-673"&gt;Plasma 6.7.3&lt;/h3&gt;
&lt;p&gt;The Vietnamese lunar calendar now displays its text in Vietnamese even if your system language is set to something else, which is more consistent with other alternate calendars. (Trần Nam Tuấn, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521787"&gt;KDE Bugzilla #521787&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Vietnamese alternate calendar with text written in Vietnamese" src="https://blogs.kde.org/2026/07/11/this-week-in-plasma-audio-recording-in-spectacle/vietnamese-calendar-in-vietnamese.webp"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;The feature to show alternative characters when you press and hold a key on the keyboard now triggers after 600 milliseconds of holding, rather than 200. This should make it much harder to accidentally activate. (Kristen McWilliam, &lt;a href="https://invent.kde.org/plasma/plasma-keyboard/-/merge_requests/157"&gt;plasma-keyboard MR #157&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;You can now interact with the Overview and Custom Tiling overlays using a drawing tablet stylus in a Wayland session. (Nicolas Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=468396"&gt;KDE Bugzilla #468396&lt;/a&gt; and &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522677"&gt;KDE Bugzilla #522677&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Comboboxes in Plasma now use the active Plasma theme to style their popups, rather than using a hardcoded Breeze-style appearance. And their menu highlights no longer animate in and out, either, which matches the appearance everywhere else. (Filip Fila, &lt;a href="https://invent.kde.org/plasma/libplasma/-/merge_requests/1547"&gt;libplasma MR #1547&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/libplasma/-/merge_requests/1550"&gt;libplasma MR #1550&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;System Settings’ Remote Desktop page no longer looks somewhere between “very awkward” and “broken” with a small and narrow window size, like on a phone. (Nick Haghiri, &lt;a href="https://invent.kde.org/plasma/krdp/-/merge_requests/208"&gt;krdp MR #208&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;System Settings’ “Report a Bug in the Current Page” feature now works for pages that didn’t come from KDE but still list a bug reporting URL. (Antti Savolainen, &lt;a href="https://invent.kde.org/plasma/systemsettings/-/merge_requests/412"&gt;systemsettings MR #412&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Auto-login now works in Plasma Login Manager on operating systems with older versions of systemd, like KDE neon. (David Edmundson, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522006"&gt;KDE Bugzilla #522006&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Brightness on external monitors now changes more quickly after you adjust the brightness slider in the Brightness &amp;amp; Color widget. (Kylie CT, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=498913"&gt;KDE Bugzilla #498913&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-629"&gt;Frameworks 6.29&lt;/h3&gt;
&lt;p&gt;When using the default &lt;code&gt;qqc2-desktop-style&lt;/code&gt; system (as opposed to when testing the upcoming Union system), list and grid view highlights in QML-based KDE software now respect the visual styling of the active app style, rather than having a hardcoded Breeze-style appearance. In addition, password fields no longer change in height for certain fonts when you type the first character into them. (Evgeniy Harchenko, &lt;a href="https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/521"&gt;qqc2-desktop-style MR #521&lt;/a&gt; and &lt;a href="https://invent.kde.org/frameworks/qqc2-desktop-style/-/merge_requests/524"&gt;qqc2-desktop-style MR #524&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Breeze icon theme now includes an icon for Android app bundle files. (Tobias Zwick, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=508430"&gt;KDE Bugzilla #508430&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Montage of Android app bundle icons against light and dark backgrounds" src="https://blogs.kde.org/2026/07/11/this-week-in-plasma-audio-recording-in-spectacle/android-app-bundle-icons.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;The large fancy Kirigami tab bars seen in QML-based KDE software now switch the active tab when you scroll over them or press one of the standard tab-switching keyboard shortcuts — just like tab bars in QtWidgets-based apps do. (Tobias Ozór, &lt;a href="https://invent.kde.org/frameworks/kirigami/-/merge_requests/2123"&gt;kirigami MR #2123&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-666-1"&gt;Plasma 6.6.6&lt;/h3&gt;
&lt;p&gt;The Choose Application window no longer percent-encodes some characters in filenames, which looked pretty ugly. (David Redondo, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521748"&gt;KDE Bugzilla #521748&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Media Frame widget no longer displays every other image in a somewhat sharpened and crunchy manner. (Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521534"&gt;KDE Bugzilla #521534&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-673-1"&gt;Plasma 6.7.3&lt;/h3&gt;
&lt;p&gt;Fixed a recent regression that broke closing windows in the Overview overlay by middle-clicking them. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522015"&gt;KDE Bugzilla #522015&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a few remaining minor layout regressions in the Color Picker widget, so now it should always have the same size as it did in Plasma 6.6. (Tobias Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522377"&gt;KDE Bugzilla #522377&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression in an X11 session that made icons of all running Flatpak apps appear unnecessarily in the System Tray. (David Redondo, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522864"&gt;KDE Bugzilla #522864&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Plasma no longer crashes if you disable the Calendar Events plugin in one Digital Clock widget when there are more than one of them with that plugin enabled. (Shouvik Kar, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=520465"&gt;KDE Bugzilla #520465&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;When the system is configured to automatically switch global themes at certain times of day, this switchover now takes place as expected even if the computer happened to be turned off when the transition would have taken place. (Vlad Zahorodnii, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=511740"&gt;KDE Bugzilla #511740&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Fixed a glitch related to scrolling in System Monitor’s Configure Columns popup, which is now a traditional window instead. (Arjen Hiemstra, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=517723"&gt;KDE Bugzilla #517723&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;In the Networks widget, connecting to a network you don’t have permission to edit no longer mistakenly makes all other available networks look connected. (Sergey Katunin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=461028"&gt;KDE Bugzilla #461028&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-629-1"&gt;Frameworks 6.29&lt;/h3&gt;
&lt;p&gt;Fixed a subtle regression that prevented overriding settings set at the vendor/distro level (e.g. via a &lt;code&gt;/etc/xdg/kwinrc&lt;/code&gt; file) that differed from Plasma’s own default settings. This affected Kubuntu and Fedora, which turned on Wobbly Windows and Plasma Keyboard, respectively. (Nicolas Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=519481"&gt;KDE Bugzilla #519481&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Typst documents once again show a fancy icon when using the Breeze icon theme, fixing an issue where this stopped happening after the official MIME type for Typst files was changed upstream of KDE. (Boris Jurcaga, &lt;a href="https://invent.kde.org/frameworks/breeze-icons/-/merge_requests/554"&gt;breeze-icons MR #554&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Montage of Typst icons against light and dark backgrounds" src="https://blogs.kde.org/2026/07/11/this-week-in-plasma-audio-recording-in-spectacle/typst-icons.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-666-2"&gt;Plasma 6.6.6&lt;/h3&gt;
&lt;p&gt;Using a udev rule to set the &lt;code&gt;LIBINPUT_CALIBRATION_MATRIX&lt;/code&gt; property now works as expected in a Wayland session. (Nicolas Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521464"&gt;KDE Bugzilla #521464&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-3"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Spectacle no longer requires the fairly chunky OpenCV software library; we found a way to implement an adequately-performant blur effect without it. (Noah Davis, &lt;a href="https://invent.kde.org/plasma/spectacle/-/merge_requests/561"&gt;spectacle MR #561&lt;/a&gt; and &lt;a href="https://invent.kde.org/libraries/kquickimageeditor/-/merge_requests/53"&gt;kquickimageeditor MR #53&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>This Week in Plasma: Better Animations</title><link>https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/</link><pubDate>Sat, 04 Jul 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week Plasma 6.7 received a few more stabilization bug-fixes while attention turned towards the upcoming 6.8 release. Some exciting changes are in progress, and a few have already merged, including highly visible improvements to some common animations.&lt;/p&gt;
&lt;p&gt;Check it out!&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Updated the Emoji Selector app to version 17 of the Unicode emoji standard, giving you access to derpy new emojis like “🫪️”. (Jens Jerosch, &lt;a href="https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/3849"&gt;plasma-desktop MR #3849&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="New emojis in Emoji Selector app" src="https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/new-emojis.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-672"&gt;Plasma 6.7.2&lt;/h3&gt;
&lt;p&gt;Moved the global “Move Mouse to Focus” and “Move Mouse to Center” actions out of the Zoom effect, so they still work even if you’ve globally disabled the Zoom effect. (Vlad Zahorodnii, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522070"&gt;KDE Bugzilla #522070&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-673"&gt;Plasma 6.7.3&lt;/h3&gt;
&lt;p&gt;Made KRunner’s Bookmarks search provider return results for 2-character queries (so it will match “Qt”, for example), and use fewer system resources. (Kai Uwe Broulik, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6764"&gt;plasma-workspace MR #6764&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Clipboard widget’s Actions Configuration page now uses better internal margins for the content. (Levi Leal, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6779"&gt;plasma-workspace MR #6779&lt;/a&gt;)&lt;/p&gt;



&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;div class="swiper-slide swiper-slide-active"&gt;
 &lt;img src="https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/margins-after.png" alt="After" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;After&lt;/span&gt;
 &lt;/div&gt;
 &lt;div class="swiper-slide"&gt;
 &lt;img src="https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/margins-before.png" alt="Before" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;Before&lt;/span&gt;
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;


&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;The “Bouncing app icon” launch feedback style now uses a more visually pleasing animation with a better physics model, a more appropriate easing curve, and a higher frame-rate. (The Entropyist, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9487"&gt;kwin MR #9487&lt;/a&gt;)&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/nicer-bouncing.webm" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;p&gt;The new sliding animation for notifications now uses a more natural easing curve, so it looks even better than it already did! (Thomas Duckworth, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522276"&gt;KDE Bugzilla #522276&lt;/a&gt;)&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/notification-easing-curve.webm" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;p&gt;There’s no longer a secret keyboard shortcut (previously &lt;kbd&gt;Meta&lt;/kbd&gt;+&lt;kbd&gt;Ctrl&lt;/kbd&gt;+&lt;kbd&gt;x&lt;/kbd&gt;) that turns on clipboard actions. This was easy to press by accident, and would then make weird popups appear when you copied URLs. (Tobias Fella, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6773"&gt;plasma-workspace MR #6773&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Digital Clock widget now requests “tabular numerals”, which are monospaced digits supported by some fonts. The use of these numerals prevents the clock from changing its width as time passed in a few edge cases where the existing code to prevent that wasn’t good enough. (Christoph Wolk, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6797"&gt;plasma-workspace MR #6797&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Discover’s old “CD and DVD” category is now named “Disc Burning”, because that’s what apps expect it to be, which explains why it only contained disc burning apps. (Nate Graham, &lt;a href="https://invent.kde.org/plasma/discover/-/merge_requests/1350"&gt;discover MR #1350&lt;/a&gt;)&lt;/p&gt;



&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;div class="swiper-slide swiper-slide-active"&gt;
 &lt;img src="https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/discs-after.png" alt="After" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;After&lt;/span&gt;
 &lt;/div&gt;
 &lt;div class="swiper-slide"&gt;
 &lt;img src="https://blogs.kde.org/2026/07/04/this-week-in-plasma-better-animations/discs-before.png" alt="Before" lazy class="rounded"&gt;
 &lt;span class="d-block text-center mt-2"&gt;Before&lt;/span&gt;
 &lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;


&lt;p&gt;&lt;em&gt;And before you ask: no, we couldn’t instead change the category to include all apps related to CDs and DVDs, because it’s a &lt;a href="https://specifications.freedesktop.org/menu/latest/additional-category-registry.html"&gt;standard category governed by a FreeDesktop spec&lt;/a&gt;, and to do that, &lt;a href="https://gitlab.freedesktop.org/xdg/xdg-specs/-/work_items/256"&gt;we’d need a new one&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Info Center’s Memory page now shows a busy indicator if it takes more than a moment to load. (Kai Uwe Broulik, &lt;a href="https://invent.kde.org/plasma/kinfocenter/-/merge_requests/305"&gt;kinfocenter MR #305&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;You can now more easily find the System Settings page responsible for the “press and hold a key to see alternative characters” popup, to turn it on or off or change the delay before it appears. (Kristen McWilliam, &lt;a href="https://invent.kde.org/plasma/plasma-keyboard/-/merge_requests/154"&gt;plasma-keyboard MR #154&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The DrKonqi crash reporting wizard now tells you when it’s safe to close the window. (Antti Savolainen, &lt;a href="https://invent.kde.org/plasma/drkonqi/-/merge_requests/397"&gt;drkonqi MR #397&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-666"&gt;Plasma 6.6.6&lt;/h3&gt;
&lt;p&gt;Hardened the Task Manager widget against maliciously-crafted .desktop files for apps. (David Edmundson, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6817"&gt;plasma-workspace MR #6817&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Hardened the &lt;code&gt;ksystemstats_intel_helper&lt;/code&gt; process against path traversal attacks. (Matthias Gerstner, &lt;a href="https://invent.kde.org/plasma/ksystemstats/-/merge_requests/141"&gt;ksystemstats MR #141&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-672-1"&gt;Plasma 6.7.2&lt;/h3&gt;
&lt;p&gt;Fixed a recent regression that made certain screens incorrectly notify about being disconnected and re-connected in a loop after they went to sleep. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521826"&gt;KDE Bugzilla #521826&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that produced corrupted visuals on some rotated screens and with some older AMD GPUs. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521878"&gt;KDE Bugzilla #521878&lt;/a&gt; and &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521764"&gt;KDE Bugzilla #521764&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that broke the ability to drag desktop files and folders between screens. (Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521713"&gt;KDE Bugzilla #521713&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that made SDR content look a bit de-saturated for some screens while in HDR mode. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521759"&gt;KDE Bugzilla #521759&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that made certain ICC profiles show the wrong colors. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522301"&gt;KDE Bugzilla #522301&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that made KWin lag and hang when playing certain poorly-optimized games via Proton. (Vlad Zahorodnii, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522005"&gt;KDE Bugzilla #522005&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The implementation of the new “press and hold for alternative characters” feature now prioritizes compatibility for apps, fixing a massive number of bugs. (Kristen McWilliam, &lt;a href="https://invent.kde.org/plasma/plasma-keyboard/-/merge_requests/152"&gt;plasma-keyboard MR #152&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The new Vietnamese calendar now shows the correct dates. (Trần Nam Tuấn, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522099"&gt;KDE Bugzilla #522099&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The new feature to show how much earlier or later a time zone is than your current one now correctly calculates the value for time zones with a half-hour offset that are earlier than your local time zone. Time is hard. (Michael Kohl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522037"&gt;KDE Bugzilla #522037&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Forcing the use of the software pointer no longer makes it disappear when a window pushes a panel in “Dodge Windows” mode into its hidden state. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521953"&gt;KDE Bugzilla #521953&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The Mouse page in System Settings no longer shows layout glitches in X11. (Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521992"&gt;KDE Bugzilla #521992&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Text on the Networks widget’s Details tab can no longer visually overflow when it’s really long. (Manuel Alcaraz, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522333"&gt;KDE Bugzilla #522333&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="plasma-673-1"&gt;Plasma 6.7.3&lt;/h2&gt;
&lt;p&gt;The “Kameleon” system service is now disabled by default, which prevents it from applying a color to your keyboard’s backlit keys even if the feature to apply colors to RGB keyboard backlighting is disabled. The context here is that we added support for the Steam Machine’s LED strip, and this also made it work for many keyboards, but exposed a pre-existing bug. (Oliver Beard, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521793"&gt;KDE Bugzilla #521793&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Spectacle no longer includes the tooltip showing image dimensions in the final screenshot if you accept a rectangular region by double-clicking it. (Noah Davis, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=513715"&gt;KDE Bugzilla #513715&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Fixed the most common crash in Plasma, which could happen once in a while when using multiple screens. (Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=500044"&gt;KDE Bugzilla #500044&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Minimizing the window of an RDP client no longer stops the video stream. (Shouvik Kar, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=497765"&gt;KDE Bugzilla #497765&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-628"&gt;Frameworks 6.28&lt;/h3&gt;
&lt;p&gt;XWayland-using apps no longer start to behave in a couple of weird and quirky ways after XWayland itself crashes and restarts. (Vlad Zahorodnii, &lt;a href="https://invent.kde.org/frameworks/kwindowsystem/-/merge_requests/220"&gt;kwindowsystem MR #220&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-673-2"&gt;Plasma 6.7.3&lt;/h3&gt;
&lt;p&gt;Fixed a recent performance regression that increased KWin’s CPU usage on some Intel systems using atomic mode-setting. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522075"&gt;KDE Bugzilla #522075&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-3"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Implemented support for version 1.6 of the Emulated Input system. (David Edmundson, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9112"&gt;kwin MR #9112&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;KWin now internally only uses OpenGL ES, which ensures that it will always be working since everyone will be using it — at least until Vulkan support is farther along. OpenGL ES is necessary for some old GPUs and turns out to be sufficient for everything KWin needs anyway, so we don’t anticipate any downsides from this change. (Xaver Hugl, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9488"&gt;kwin MR #9488&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>This Week in Plasma: Post-6.7 Bug-fixing</title><link>https://blogs.kde.org/2026/06/27/this-week-in-plasma-post-6.7-bug-fixing/</link><pubDate>Sat, 27 Jun 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/06/27/this-week-in-plasma-post-6.7-bug-fixing/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week members of the core Plasma team spent almost all of their time in bug-fixing mode! As usual, people unleashed their real-world setups on the new Plasma release and found some issues we missed during the development process, and that nobody reported during the two beta releases. So we made it a priority to fix those issues!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://kde.org/announcements/plasma/6/6.7.1"&gt;Plasma 6.7.1&lt;/a&gt; was released earlier this week with the first round of fixes, and 6.7.2 is scheduled for early next week with more.&lt;/p&gt;
&lt;p&gt;A few new features and UI improvements started landing, too.&lt;/p&gt;
&lt;p&gt;Check it out here:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;You can now set up wallpaper slideshows that don’t change automatically. Instead you can manually switch the wallpaper via the item in the desktop context menu or its global keyboard shortcut. (Fushan Wen, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=518669"&gt;KDE Bugzilla #518669&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Added an Esperanto keyboard layout to Plasma’s virtual keyboard. (Daniel O’Neill, &lt;a href="https://invent.kde.org/plasma/plasma-keyboard/-/merge_requests/148"&gt;plasma-keyboard MR #148&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-672"&gt;Plasma 6.7.2&lt;/h3&gt;
&lt;p&gt;Improved text alignment in System Monitor’s Processes page while using the tree view. (Arjen Hiemstra, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=442095"&gt;KDE Bugzilla #442095&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Reduced the number of visual frames in the Menu Editor app. (Levi Leal, &lt;a href="https://invent.kde.org/plasma/kmenuedit/-/merge_requests/59"&gt;kmenuedit MR #59&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-666"&gt;Plasma 6.6.6&lt;/h3&gt;
&lt;p&gt;Fixed an issue that could make KWin crash when some apps opened dialogs and popups in non-standard ways. (Vlad Zahorodnii, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9444"&gt;kwin MR #9444&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a regression introduced by Qt 6.11 that made the word “Undefined” appear next to Places entries in the Kickoff Application Launcher widget. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521799"&gt;KDE Bugzilla #521799&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a visual glitch affecting users of Deskflow that could make a clone of the pointer inappropriately remain visible on the client machine. (David Redondo, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521486"&gt;KDE Bugzilla #521486&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-671"&gt;Plasma 6.7.1&lt;/h3&gt;
&lt;p&gt;Fixed a somewhat common case where KWin could crash on the lock screen when using an NVIDIA GPU. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=520842"&gt;KDE Bugzilla #520842&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that made KWin crash when using a DisplayLink monitor. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=520361"&gt;KDE Bugzilla #520361&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed an issue that could make screens plugged into a laptop with both an NVIDIA and an AMD GPU freeze. (Xaver Hugl and SungHwan Jung, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521727"&gt;KDE Bugzilla #521727&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that broke certain shader-based KWin effects, including the popular “Burn My Windows” effects. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521774"&gt;KDE Bugzilla #521774&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that broke color-related KWin effects like color blindness correction and screen color inversion. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521737"&gt;KDE Bugzilla #521737&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="plasma-672-1"&gt;Plasma 6.7.2&lt;/h2&gt;
&lt;p&gt;Fixed the currently most common KWin crash, related to variable refresh rates with multi-monitor setups. (Vlad Zahorodnii, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521909"&gt;KDE Bugzilla #521909&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a case where Info Center could crash when trying to display information about certain NVIDIA GPUs. (Harald Sitter, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521295"&gt;KDE Bugzilla #521295&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that broke the RDP server when run using systemd. Sorry about that! (David Edmundson, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521776"&gt;KDE Bugzilla #521776&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a recent regression that could sometimes make Chromium-based apps freeze if another window was forced into “Keep Above Others” mode. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521687"&gt;KDE Bugzilla #521687&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-2"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Fixed a case where Plasma could crash after you ejected an audio CD from Dolphin or &lt;a href="https://apps.kde.org/audex"&gt;Audex&lt;/a&gt;. (Kai Uwe Broulik, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=522051"&gt;KDE Bugzilla #522051&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="flatpak-1181"&gt;Flatpak 1.18.1&lt;/h3&gt;
&lt;p&gt;Fixed an issue that made a background service for Flatpak crash if you used the KDE desktop portal dialog to allow an app to update itself while the app was still running. (Sebastian Wick, &lt;a href="https://github.com/flatpak/flatpak/issues/6686"&gt;flatpak issue #6686&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="gtk-4232"&gt;GTK 4.23.2&lt;/h3&gt;
&lt;p&gt;Made the process of selecting text to later paste it by middle-clicking more reliable in GTK 4 apps. (Vlad Zahorodnii, &lt;a href="https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/10006"&gt;gtk MR #10006&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-672-2"&gt;Plasma 6.7.2&lt;/h3&gt;
&lt;p&gt;Improved full-screen video playback performance in Chromium-based apps. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521960"&gt;KDE Bugzilla #521960&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-68-3"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Turned on triple buffering by default for NVIDIA GPUs, because the bugs blocking this from working properly in the past have since been fixed. (Xaver Hugl, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9472"&gt;kwin MR #9472&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;</description></item><item><title>Vi Mo(tiva)tions</title><link>https://blogs.kde.org/2026/06/21/vi-motivations/</link><pubDate>Sun, 21 Jun 2026 18:31:31 +0200</pubDate><author>Ismael Asensio</author><guid>https://blogs.kde.org/2026/06/21/vi-motivations/</guid><description>&lt;p&gt;It's been quite a while since I last wrote an entry in this blog. It's also been some time in which my invent gitlab graph has been feeling a bit emptier and I've also been more absent from the KDE work and community in general.&lt;/p&gt;
&lt;p&gt;Several causes have been lining up to cause this lack of time and energy &lt;em&gt;(or, in modern terms, bandwidth)&lt;/em&gt; I've had lately to dedicate to this amazing community and projects. But one could also summarize this to a lack of motivation.&lt;/p&gt;
&lt;p&gt;In order to improve the situation, I've had to resort to a last desperate meassure: &lt;strong&gt;LEARNING VI!&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;I know most people reading this might want to discourage me from such a painful path, more even at my 40+ age. But I've found myself again piked by the spark of curiosity, and wanting to learn and try new thigs. Even writing this paragraphs feel a bit easier as I'm punching characters in &lt;em&gt;INSERT MODE&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Of course, I've not jumped into a vim/neovim terminal editor, but the very same Kate editor I'm used and love to work with. Just activated the integrated VI-mode and started getting comfortable with it.&lt;/p&gt;
&lt;p&gt;On this process I've also discoverd several small issues that were not fully working, not implemented, or differ from the regular VIM experience. And as a KDE developer/enthusiast what's more enticing than pull up my sleeves and try to fix those. As we usually advice newcomers: better stratch one's own itch.&lt;/p&gt;
&lt;p&gt;And what's best, I'm enjoying the experience of simultaneously learning some new VI magic, seeing how it is implemented in Kate, and using it to potentially fix bugs or implement new functionallity. I'm aware that the VI-mode is not supposed to be a full replacement or mimick of the traditional terminal VIM experience, and it shouldn't be. But I think there is still enough room for improvement within that limit.&lt;/p&gt;
&lt;p&gt;For now, my first &lt;em&gt;junior jobs&lt;/em&gt; on the matter have been implementing &lt;a href="https://invent.kde.org/frameworks/ktexteditor/-/merge_requests/881"&gt;counted undos/redos&lt;/a&gt; (ex. &lt;code&gt;3u&lt;/code&gt; to undo the last 3 actions), and &lt;a href="https://invent.kde.org/frameworks/ktexteditor/-/merge_requests/886"&gt;save some space&lt;/a&gt; in the always crowded status bar. Also trying to &lt;a href="https://invent.kde.org/frameworks/ktexteditor/-/merge_requests/888"&gt;fix how 3rd-level symbols on my keyboard&lt;/a&gt; (those accessed with &lt;code&gt;AltGr&lt;/code&gt;) are processed on Windows.&lt;/p&gt;
&lt;p&gt;But since I've discovered VI registers, I'm having the most fun &lt;a href="https://invent.kde.org/frameworks/ktexteditor/-/merge_requests/889"&gt;fixing some usecases&lt;/a&gt;, adding new tests and implementing some of the missing ones. And I have also some new exciting (but more involved) ideas in mind.&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video loop autoplay controls&gt;&lt;source src="https://blogs.kde.org/2026/06/21/vi-motivations/vi-registers.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;p&gt;Still not sure if many users and members of the community will benefit from these. Are you a happy VIM (or VI adjacent) user? Did you know Kate had this mode completely integrated with its UI at a keystroke's distance? &lt;em&gt;(try &lt;code&gt;Ctrl-Alt-V&lt;/code&gt;)&lt;/em&gt;? Moreover, since the VI-mode code is implemented in the &lt;a href="https://invent.kde.org/frameworks/ktexteditor"&gt;KTextEditor framework&lt;/a&gt;, any application that uses it, such as KWrite or KDevelop (or even your own app) can use this mode too!&lt;/p&gt;
&lt;p&gt;This is fun!&lt;/p&gt;</description></item><item><title>New Craft cache 26.05 published</title><link>https://blogs.kde.org/2026/06/20/new-craft-cache-26.05-published/</link><pubDate>Sat, 20 Jun 2026 09:00:00 +0000</pubDate><author>Julius Künzel</author><guid>https://blogs.kde.org/2026/06/20/new-craft-cache-26.05-published/</guid><description>&lt;p&gt;A new Craft cache has been published about a week ago. The update has already been rolled out to KDE's CD and Windows CI with the update to Qt 6.11 beeing the most important change.&lt;/p&gt;
&lt;h2 id="changes-highlights"&gt;Changes (highlights)&lt;/h2&gt;
&lt;h3 id="general"&gt;General&lt;/h3&gt;
&lt;p&gt;We added updated our &lt;a href="https://invent.kde.org/sysadmin/ci-images/-/tree/master/craft-appimage-alma9?ref_type=heads"&gt;base image&lt;/a&gt; to build the Linux cache from AlmaLinux 8.10 to AlmaLinux 9.8. This implies a newer minimum required GLIBC.&lt;/p&gt;
&lt;p&gt;We did inital work on MSVC 2026 support, but given that it is not supported by Qt 6.11, we did not complete it yet.&lt;/p&gt;
&lt;h3 id="blueprints"&gt;Blueprints&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;OpenSSL 3.6.2&lt;/li&gt;
&lt;li&gt;Qt 6.11.1&lt;/li&gt;
&lt;li&gt;New Qt modules QtGraphs and QtQuick3D&lt;/li&gt;
&lt;li&gt;FFmpeg 8.1.1&lt;/li&gt;
&lt;li&gt;FFmpeg is build with libass and x264 on MSVC now&lt;/li&gt;
&lt;li&gt;tiff 4.7.1&lt;/li&gt;
&lt;li&gt;libffi 3.5.2&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="about-kde-craft"&gt;About KDE Craft&lt;/h2&gt;
&lt;p&gt;KDE Craft is an open source meta-build system and package manager. It manages dependencies and builds libraries and applications from source on Windows, macOS, Linux, FreeBSD and Android.&lt;/p&gt;
&lt;p&gt;Learn more on &lt;a href="https://community.kde.org/Craft"&gt;https://community.kde.org/Craft&lt;/a&gt; or join the Matrix room &lt;a href="https://go.kde.org/matrix/#/%23kde-craft:kde.org"&gt;#kde-craft:kde.org&lt;/a&gt;&lt;/p&gt;</description></item><item><title>KDE Goals - Call For Submissions</title><link>https://blogs.kde.org/2026/06/20/kde-goals-call-for-submissions/</link><pubDate>Sat, 20 Jun 2026 03:20:00 +0000</pubDate><author>Farid Abdelnour</author><guid>https://blogs.kde.org/2026/06/20/kde-goals-call-for-submissions/</guid><description>&lt;figure&gt;
 &lt;img class="img-fluid" alt="Call for submissions header" src="https://blogs.kde.org/2026/06/20/kde-goals-call-for-submissions/kgoals-cfs-header-web.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;In 2015, some members of the KDE community &lt;a href="https://blog.lydiapintscher.de/2017/08/20/evolving-kde-lets-set-some-goals/"&gt;began a conversation&lt;/a&gt; about where KDE was heading and how it would get there. That conversation became the seed of what is now KDE Goals - a community initiative to help guide KDE's efforts around shared objectives.&lt;/p&gt;
&lt;p&gt;KDE Goals reaches its fifth cycle at a special milestone: &lt;a href="https://kde.org/anniversaries/30/"&gt;KDE turns thirty&lt;/a&gt; this year. Thirty years of building software that puts people in control of their digital lives and enjoy freedom and privacy. The fourth cycle brought three goals that built toward this &lt;a href="https://community.kde.org/KDE/Vision"&gt;vision&lt;/a&gt;. &lt;em&gt;Streamlined Application Development Experience&lt;/em&gt; focused on making KDE development smoother and more joyful. &lt;em&gt;We Care About Your Input&lt;/em&gt; aimed to deliver a seamless out-of-the-box experience for input devices used by artists, gamers, and people with accessibility needs. &lt;em&gt;KDE Needs You!&lt;/em&gt; worked on building a sustainable community growth targeting individuals and institutions alike. Checkout the &lt;a href="https://tube.kockatoo.org/w/d1nQeNiAufRJwSnsJxJJDc"&gt;one-year recap&lt;/a&gt; at Akademy last year.&lt;/p&gt;
&lt;p&gt;Now, as that cycle draws to a close and launches us into the next upward spiral, it is time once again to ask: what matters most to KDE right now? What should the community rally behind for the next two years?&lt;/p&gt;
&lt;p&gt;The floor is open. Dream big. The fifth cycle begins!&lt;/p&gt;
&lt;h2 id="join-in"&gt;Join in&lt;/h2&gt;
&lt;p&gt;Anyone passionate about KDE and has a vision to share is welcome to submit a proposal. You do not have to be a developer to participate.&lt;/p&gt;
&lt;p&gt;Read the &lt;a href="https://community.kde.org/Goals/Goals_Process"&gt;selection process&lt;/a&gt; carefully before you send your proposal. Got any doubts? Join our &lt;a href="https://matrix.to/#/%23goals:kde.org"&gt;Matrix room&lt;/a&gt; or leave a comment at the &lt;a href="https://discuss.kde.org/c/community/5"&gt;KDE forum&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="timeline"&gt;Timeline&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Call for submissions - June 20 to August 8&lt;/li&gt;
&lt;li&gt;Refinement of proposals - August 9 to August 27&lt;/li&gt;
&lt;li&gt;Voting period - August 28 to September 11&lt;/li&gt;
&lt;li&gt;Tallying and preparation - September 12 to September 18&lt;/li&gt;
&lt;li&gt;Announcement at &lt;a href="https://akademy.kde.org/2026/"&gt;Akademy&lt;/a&gt; - September 19&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>This Week in Plasma: 6.7 is Here!</title><link>https://blogs.kde.org/2026/06/20/this-week-in-plasma-6.7-is-here/</link><pubDate>Sat, 20 Jun 2026 00:00:01 +0000</pubDate><author>Nate Graham and John Veness</author><guid>https://blogs.kde.org/2026/06/20/this-week-in-plasma-6.7-is-here/</guid><description>&lt;!-- Example wording for a change, MR version. (Developer Name, [repo-name MR #xxx](https://invent.kde.org/plasma/repo-name/-/merge_requests/xxx)) --&gt;
&lt;!-- Example wording for a change, Bugzilla version. (Developer Name, [KDE Bugzilla #xxx](https://bugs.kde.org/show_bug.cgi?id=xxx)) --&gt;
&lt;!-- ![](thumbnail.png) --&gt;
&lt;!-- 


&lt;section class="swiper d-flex mb-5" aria-label="Screenshots" role="list"&gt;
 &lt;div class="swiper-wrapper d-flex my-3" role="listitem"&gt;
 &lt;/div&gt;
 &lt;div class="swiper-pagination" style="bottom: 0"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-prev"&gt;&lt;/div&gt;
 &lt;div class="swiper-button-next"&gt;&lt;/div&gt;
&lt;/section&gt;

 --&gt;
&lt;!-- 
 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="%25!s%28%3cnil%3e%29something.mp4" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;
 --&gt;
&lt;p&gt;Welcome to a new issue of &lt;em&gt;This Week in Plasma!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This week we released Plasma 6.7, and the reviews are overwhelmingly positive so far!&lt;/p&gt;
&lt;p&gt;But the team didn’t sit on its laurels; instead we spent the week fixing a few issues that snuck past our beta testers or that developers didn’t manage to fix in time for the final release. So far it’s looking like this was a pretty smooth release.&lt;/p&gt;
&lt;p&gt;And in addition, features and UI improvements started to merge for Plasma 6.8! Check it all out:&lt;/p&gt;
&lt;h2 id="notable-new-features"&gt;Notable new features&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Feature&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-68"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Monitors are now identified with color-coded number badges in all the places they’re configured, making it easier to identify which one is which especially when using two monitors from the same product line. (Ramil Nurmanov, &lt;a href="https://invent.kde.org/plasma/kscreen/-/merge_requests/456"&gt;kscreen MR #456&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9090"&gt;kwin MR #9090&lt;/a&gt;)&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Multiple screens showing a colored number badge for each screen, making them easy to identify" src="https://blogs.kde.org/2026/06/20/this-week-in-plasma-6.7-is-here/screen-badges.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;h3 id="frameworks-628"&gt;Frameworks 6.28&lt;/h3&gt;
&lt;p&gt;KRunner-powered search fields can now convert between watt-hours, kilowatt-hours, and other similar energy units. (Levin Lhoest, &lt;a href="https://invent.kde.org/frameworks/kunitconversion/-/merge_requests/88"&gt;kunitconversion MR #88&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-ui-improvements"&gt;Notable UI improvements&lt;/h2&gt;
&lt;!-- Can find some with https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Enhancement&amp;first_page_size=20 --&gt;
&lt;h3 id="plasma-671"&gt;Plasma 6.7.1&lt;/h3&gt;
&lt;p&gt;There’s now a smooth blend effect when switching between global themes, just like there already was when switching between color schemes. (Kai Uwe Broulik, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6199"&gt;plasma-workspace MR #6199&lt;/a&gt;)&lt;/p&gt;

 


&lt;figure class="text-center ratio ratio-16x9" style=""&gt;
 &lt;video controls&gt;&lt;source src="https://blogs.kde.org/2026/06/20/this-week-in-plasma-6.7-is-here/global-theme-switch-transition.webm" type="video/mp4" /&gt;&lt;/video&gt;&lt;/figure&gt;

&lt;h3 id="plasma-68-1"&gt;Plasma 6.8&lt;/h3&gt;
&lt;p&gt;Switched to the KDE-style color picker throughout QML-based KDE apps, instead of the one provided by Qt which doesn’t respect KDE color schemes. A few apps had already hardcoded the KDE one, but now it happens universally so all benefit from it. (Tobias Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=520987"&gt;KDE Bugzilla #520987&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;When moving a window by dragging it while the &lt;kbd&gt;Meta&lt;/kbd&gt; key is held down, it is now brought in front of all other windows. (Vlad Zahorodnii, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=520339"&gt;KDE Bugzilla #520339&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Trying to delete a file on the desktop that you don’t have permission to delete now at least shows you an error message explaining what the problem is, instead of doing… nothing. (Tobias Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=515869"&gt;KDE Bugzilla #515869&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Made the “Connect” button in the VPN connection dialog a lot more visually obvious. (Kai Uwe Broulik, &lt;a href="https://invent.kde.org/plasma/plasma-nm/-/merge_requests/600"&gt;plasma-nm MR #600&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Added more symbols to the “press and hold a key to see related characters” feature of the Plasma virtual keyboard. (Jonas Harer, &lt;a href="https://invent.kde.org/plasma/plasma-keyboard/-/merge_requests/133"&gt;plasma-keyboard MR #133&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-628-1"&gt;Frameworks 6.28&lt;/h3&gt;
&lt;p&gt;Fixed multiple sources of icons and thumbnails being blurry throughout Kirigami-based KDE software when using a fractional scale factor. (Marco Martin, &lt;a href="https://invent.kde.org/frameworks/kirigami/-/merge_requests/2116"&gt;kirigami MR #2116&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Improved the way the Kicker/Kickoff/etc. menus handle the case of multiple applications with the same name being installed. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=516802"&gt;KDE Bugzilla #516802&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-bug-fixes"&gt;Notable bug fixes&lt;/h2&gt;
&lt;!--
Can find some with:
- HI and VHI bugs fixed: https://tinyurl.com/bdepnh4v
- All bugs fixed: https://invent.kde.org/groups/plasma/-/merge_requests/?sort=merged_at_desc&amp;state=merged&amp;label_name%5B%5D=Bugfix&amp;first_page_size=20
--&gt;
&lt;h3 id="plasma-666"&gt;Plasma 6.6.6&lt;/h3&gt;
&lt;p&gt;Fixed an issue that could make KWin fail to start at login with some older GPUs and GPU drivers in certain circumstances. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521333"&gt;KDE Bugzilla #521333&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a case where Plasma could crash while switching wallpapers in a slideshow. (Fushan Wen, &lt;a href="https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6753"&gt;plasma-workspace MR #6753&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed an issue in System Monitor that could make items get sorted the wrong way after changing the order or visibility of columns in the data table. (Arjen Hiemstra, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=518073"&gt;KDE Bugzilla #518073&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a regression in the icon displayed by the Networks widget for VLAN networks. (Fabian Druschke, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=516709"&gt;KDE Bugzilla #516709&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-671-1"&gt;Plasma 6.7.1&lt;/h3&gt;
&lt;p&gt;Fixed one of the most common ways that Discover could crash on operating systems using the rpm-ostree packaging technology, such as Fedora Kinoite. (Timothée Ravier, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=519672"&gt;KDE Bugzilla #519672&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a case where KWin could crash while logging into the system if an app asked for an invalid color format. (Shaun Ren, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9382"&gt;kwin MR #9382&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed an issue that could break accented text entry for some keyboard layouts while the Plasma virtual keyboard was enabled. (Kristen McWilliam, &lt;a href="https://invent.kde.org/plasma/plasma-keyboard/-/merge_requests/126"&gt;KDE plasma-keyboard MR #126&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a regression that made some network details go missing from the Networks widget. (Tobias Fella, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521415"&gt;KDE Bugzilla #521415&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a regression that made Task Manager badges displaying very large numbers of unread items visually overflow on very thin panels. (Nate Graham, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521562"&gt;KDE Bugzilla #521562&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a regression that made the Kickoff Application Launcher widget resize itself inappropriately while showing search results right after being added to a panel. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521383"&gt;KDE Bugzilla #521383&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed a regression that made the Kickoff Application Launcher widget lose its hover effect for category list items, but only when using the non-default “Switch sidebar categories when hovering over them” setting. (Christoph Wolk, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521558"&gt;KDE Bugzilla #https://bugs.kde.org/show_bug.cgi?id=521558&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Fixed two issues with clipboard syncing in remote desktop use cases. (David Redondo, &lt;a href="https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/merge_requests/588"&gt;xdg-desktop-portal-kde MR #588&lt;/a&gt; and &lt;a href="https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/merge_requests/589"&gt;xdg-desktop-portal-kde MR #589&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="frameworks-628-2"&gt;Frameworks 6.28&lt;/h3&gt;
&lt;p&gt;Fixed a regression in Kirigami that made the header of the “Manage Panels and Desktops” window overlap with the content. (Marco Martin, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=521552"&gt;KDE Bugzilla #521552&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="notable-in-performance--technical"&gt;Notable in performance &amp;amp; technical&lt;/h2&gt;
&lt;h3 id="plasma-666-1"&gt;Plasma 6.6.6&lt;/h3&gt;
&lt;p&gt;Fixed a significant memory leak that was found when using window rules to force window decorations on Firefox in CSD mode. (Xaver Hugl, &lt;a href="https://bugs.kde.org/show_bug.cgi?id=518939"&gt;KDE Bugzilla #518939&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id="plasma-671-2"&gt;Plasma 6.7.1&lt;/h3&gt;
&lt;p&gt;Turned off the game controller input plugin by default, as some issues were uncovered and it appears to need a bit more time in the metaphorical oven. (Xaver Hugl, &lt;a href="https://invent.kde.org/plasma/kwin/-/merge_requests/9424"&gt;kwin MR #9424&lt;/a&gt;)&lt;/p&gt;
&lt;h2 id="how-you-can-help"&gt;How you can help&lt;/h2&gt;
&lt;p&gt;KDE has become important in the world, and your time and contributions have helped us get there. As we grow, we need your support to keep KDE sustainable.&lt;/p&gt;
&lt;p&gt;Would you like to help put together this weekly report? Introduce yourself in &lt;a href="https://matrix.to/#/%23this-week-kde-apps:kde.org"&gt;the Matrix room&lt;/a&gt; and &lt;a href="https://community.kde.org/Promotion/This_week_in_KDE"&gt;join the team&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Beyond that, you can help KDE by directly &lt;a href="https://community.kde.org/Get_Involved"&gt;getting involved&lt;/a&gt; in any other projects. Donating time is actually more impactful than donating money. Each contributor makes a huge difference in KDE — you are not a number or a cog in a machine! You don’t have to be a programmer, either; many other opportunities exist.&lt;/p&gt;
&lt;p&gt;You can also help out by &lt;a href="https://kde.org/donate"&gt;making a donation&lt;/a&gt;! This helps cover operational costs, salaries, travel expenses for contributors, and in general just keeps KDE bringing Free Software to the world.&lt;/p&gt;
&lt;h2 id="to-get-a-new-plasma-feature-or-a-bug-fix-mentioned-here"&gt;To get a new Plasma feature or a bug fix mentioned here&lt;/h2&gt;
&lt;p&gt;Push a commit to &lt;a href="https://invent.kde.org/websites/blogs-kde-org/-/merge_requests/?label_name%5B%5D=This%20Week%20in%20Plasma"&gt;the relevant merge request on invent.kde.org&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Redesigning Lokalize's Translation Memory Tab - GSoC Week 2 and 3</title><link>https://blogs.kde.org/2026/06/20/week2-3-gsoc-blog/</link><pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate><author>Navya Sai Sadu</author><guid>https://blogs.kde.org/2026/06/20/week2-3-gsoc-blog/</guid><description>&lt;p&gt;The past two weeks went by fast. The learnings I gained while building the toy project I experimented around with Qt during Contribution Period are quite useful now. In the second week of GSoC, I ported the TM Manager from a separate dialogbox to TM Tab. It was done mainly for ease and with the reasoning that everything related to TMs can be in a single place. I kept most of the things as is. A lot of thought went into the UI Design.&lt;/p&gt;
&lt;p&gt;The TM Manager is currently a standalone window which is accesible from any tab.&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="TM Manager Before" src="https://blogs.kde.org/2026/06/20/week2-3-gsoc-blog/tm_manager_before.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;The &amp;quot;Manage Translation Memories&amp;quot; option is already available in the Tools Menu and again in the ToolBar of TM Tab since it's specific to it.&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Menu Options" src="https://blogs.kde.org/2026/06/20/week2-3-gsoc-blog/menu_options_before.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;After the changes, pressing F7 or &amp;quot;Translation Memory&amp;quot; option from Tools menu will directly lead to TM Manager too as it is set on the left of TM Tab with a QSplitter. I believe this takes away a little redundancy in the design. This change is also justified pertaing to the future changes regarding Multi-TM selection and quering.&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="TM Manager After" src="https://blogs.kde.org/2026/06/20/week2-3-gsoc-blog/tm_tab_after.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;The buttons restrict resizing the splitter horizontally. Intially I put all the actions in a QToolButton as I thought putting them in a right-click context menu might render them undiscovered. But such menus were already being used in some other parts of the app( and obviously other KDE apps).&lt;/p&gt;
&lt;p&gt;From coding perspective, all I had to do was instantiate it in TM Tab instead. Since, it was no longer being used as a window( which would also have worked), it no longer inherits from KMainWindow. It used Grid Layout which I think is not exactly needed and just used a VBoxLayout for simplicity.&lt;/p&gt;
&lt;p&gt;The splitter state is saved and restored using existing methods.&lt;/p&gt;
&lt;p&gt;The obsolete references and methods for TM Manager are cleaned up.&lt;/p&gt;
&lt;p&gt;During Week 3, I added checkboxes to DBFilesModel for TM selection which will be used in querying later in TM View for suggestions, autofill etc. and TM Tab for search. In th beginning of the project, I proposed adding another proxy layer over DBFilesModel for the checkboxes to not to disturb other things. But for ease of work, consistent architecture( couldn't find multiple proxy layers being used in the codebase) and with the solace that it won't impact other methods using DBFilesModel for their specific purpose, I went ahead to add checkboxes directly to it.&lt;/p&gt;
&lt;figure&gt;
 &lt;img class="img-fluid" alt="Multi-TM Selection" src="https://blogs.kde.org/2026/06/20/week2-3-gsoc-blog/checkboxes.png"
 style="max-width: 100%; height: auto"
 /&gt;
&lt;/figure&gt;
&lt;p&gt;This is a deviation from my GSoc Proposal wherein I proposed to replace Combo Box with a List Widget having entries with checkboxes for Multi-TM selection. Since there would be TM dbs on the left of the tab anyways, I thought of enabling selection there itself, than to have two places(TM Manager and the List Widget) listing all the TMs.&lt;/p&gt;
&lt;p&gt;Setting new flag for checking, showing checked state with &lt;code&gt;data()&lt;/code&gt; and storing selected TM names to a set is done. The checked state persistence is to be worked upon. This is where I got stuck. TM names were to be saved and loaded from global and local config based on user's selection but when my mentor reviewed that this complex setup probably is not the best, we reached back to translators who originally requested the feature.&lt;/p&gt;</description></item></channel></rss>