Friday, 9 May 2025
KDE today announces the release of KDE Frameworks 6.14.0.
KDE Frameworks are 72 addon libraries to Qt which provide a wide variety of commonly needed functionality in mature, peer reviewed and well tested libraries with friendly licensing terms. For an introduction see the KDE Frameworks release announcement.
This release is part of a series of planned monthly releases making improvements available to developers in a quick and predictable manner.
New in this version
Breeze Icons
- Add icon for kcm_animations (preferences-desktop-animations). Commit.
- Kdeconnect-tray: Set the fill to currentColor. Commit.
- Replace preferences-kde-connect. Commit.
- Replace kdeconnect-tray icons. Commit.
- Replace kdeconnect-symbolic icons with the actual kdeconnect icon. Commit.
- Remove KDE Connect device status icons. Commit.
- Fix unintended Telegram Snap icons too. Commit. See bug #502049
- Remove Telegram icons that shouldn't have been added. Commit. See bug #502049
- Add Sober. Commit.
- Correct symlinks broken in the last commit. Commit.
- Correct names of new Snap symlinks for Telegram's tray icons. Commit. See bug #502049
- Add symlinks for new Telegram icons for the Snap too. Commit. See bug #502049
KConfig
- Kwindowstatesaver: call saveSize when window state changes. Commit. Fixes bug #502978. Fixes bug #502329
- Use QIODevice::ExistingOnly to have unified code. Commit.
- Kconfig_compiler: also add Q_ENUM when choice name is defined. Commit.
- Gui/kwindowconfig: Only look up the screen's name if it's needed. Commit.
- Add missing QML module dependency. Commit.
- Add some timezones support to QDateTiem types. Commit.
KConfigWidgets
- Remove code for no longer supported Qt versions. Commit.
KDeclarative
- Port draganddrop to declarative type registration. Commit.
KIO
- Redesign ExecutableFileOpenDialog. Commit.
- OpenUrlJob: Add getter for URL. Commit.
- WidgetsUntrustedProgramHandler: Play warning message box sound. Commit.
- Dropjob: Rename configuration option. Commit.
- Dropjob: When DndBehavior is MoveIfSameDevice, respect the ctrl modifier. Commit.
- Dropjob: Add sanity check for mount point comparison. Commit.
- Dropjob: Fix naming scheme of dndToMove -> DndToMove. Commit.
- Dropjob: Add option for alternative Drag & Drop behavior. Commit. Fixes bug #154804
- KProcessRunner: Fix launching actions without executable. Commit.
- Skip this test with wannabe 6.10.0 that exists for the moment. Commit.
- KFileItemDelegate: Set selection highlight more even in Icons view. Commit.
- KFileWidget: Do not override filename with folder name if edited. Commit. Fixes bug #502794
- Use imported targets for XML libraries. Commit.
- KFileWidget: Add quickfilter bar. Commit. Fixes bug #179483
- KFileWidget: Ignore selected folders during file selection. Commit. Fixes bug #271400
- Remove code for no longer supported Qt versions. Commit.
- KFileWidget: Fix key navigation escaping in save dialogs. Commit. Fixes bug #466206
- Show single-click selection emblem when using single-click mouse mode. Commit. Fixes bug #185793
- KFileItem/KDirLister: add test for paths with square brackets. Commit. See bug #502280
- KUrlNavigatorButton: Use arrow as separators. Commit. Fixes bug #501587. Fixes bug #501575. Fixes bug #501582. Fixes bug #501589. Fixes bug #501706. Fixes bug #501803
Kirigami
- Rework the dialog header component to not make it depend on specific parameters in Kirigami.Dialog. Commit.
- Fix left margins of the title. Commit.
- Typo--. Commit.
- Don't hide headers in layers due to clipping. Commit.
- ScrollablePage: Don't override the contentItem's width with its implicit width. Commit. Fixes bug #502948
- Constrain the FormLayout width by the available width again. Commit.
- Global toolbar: base controls visibility on presence of toolbar in the page. Commit.
- Controls/AbstractApplicationHeader: workaround for type registration. Commit.
- Small cleanup. Commit.
- Separator: Avoid flickering on fractional scaling. Commit.
- Simpler header padding calculation. Commit.
- Tst_scrolling: test on a ScrollView too. Commit.
- WheelHandler: also install event filter on ScrollViews. Commit.
- Manual WheelHandler tests: fix slider wheel input, button checking, enable keyboard navigation and focus by default. Commit.
- CI: run tests in parallel. Commit.
- AbstractApplicationWindow: fix Shortcut QML warning. Commit.
- NavigationTabButton: Make mnemonics work. Commit.
- Don't resize toolbar too much while sliding. Commit.
- PlatformTheme: Add fixedWidthFont. Commit. Fixes bug #441044
- Update application template to use ECM's APK version code logic. Commit.
- Polish layer animations. Commit.
- PageRow: Drop scroll indicator. Commit.
- WheelHandler: add horizontal smooth scrolling. Commit.
- NavigationTabButton: Drop wrapper Rectangle. Commit.
- Tst_scrolling.qml: don't set default angle delta to verticalStepSize, don't test if smooth scrolling is enabled when testing angle delta moves. Commit.
- WheelHandler: smooth scroll for a greater variety of movement sizes. Commit. Fixes bug #484309
- FormLayout: in desktop mode, center and cap width. Commit.
- NavigationTabButton: Support Action tooltip. Commit.
- Dialog: Force PlainText on header. Commit.
- Properly Align menubar when there is a sidebar drawer. Commit.
- SwipeListItem: fix visibility of actions buttons. Commit.
- Link KirigamiLayouts to KirigamiLayoutsPrivate. Commit.
- Proper lib name. Commit.
- Link private plugin in the static version. Commit.
- Use a private module. Commit.
- Another attept at fixing static builds. Commit.
- ColumnView: Move the column view separator in own qml file. Commit.
- Polish drawer handle appear/disappear. Commit. Fixes bug #502260
- Disable/enable headers too when going out of view. Commit. Fixes bug #500840
- PlatformTheme: Set the default smallFont with QFontDatabase. Commit.
- Remove duplicate icons/12 group, add missing icons/32 group. Commit.
- Re-add the top-level icon dir to the theme. Commit.
- Fix listing icon theme dirs when bundling Breeze icons. Commit.
- Controls: Remove redundant states from InlineMessage. Commit.
- Controls: Improve calculation of InlineMessage implicit height. Commit.
- Controls: Fix link activation for text of InlineMessage. Commit. Fixes bug #500578
- Layout: Set implicit width of ToolBarLayout before using its width. Commit.
- Layouts: Always relayout on geometry changes in ToolBarLayout. Commit.
- Dialog: Restore default overlay parent. Commit.
- Dialog: Allow it to be parented to something other than the main overlay. Commit.
KNotifications
- NotifyByPopup: Drop temporary image to PNG conversion. Commit.
KTextEditor
- Fix comment. Commit.
- Ensure proper parent & sizing. Commit.
- Better dialog parents. Commit.
- Less duplicated code. Commit.
- Remove code for no longer supported Qt versions. Commit.
- Less process events. Commit.
- Less waiting. Commit.
- Less waiting. Commit.
- Consolidate bug tests. Commit.
- Less waits. Commit.
- Less waits. Commit.
- Works with offscreen. Commit.
- Try if CI offscreen issue is gone. Commit.
- Be more strict with missing test data. Commit.
- Be more strict with missing test data. Commit.
- Don't skip, test that not implemented stuff fails. Commit.
- Kill tests that not even work locally. Commit.
- Try to enable more tests in CI. Commit.
- Try to relax timeout to make test more stable. Commit.
- Added margin to searchbar label. Commit.
- Add missing include mocs. Commit.
KTextWidgets
- Use QPalette instead of KColorScheme. Commit.
KWallet
- Set the KWALLETD_BIN_PATH to ksecretd. Commit.
- Fix compile without deprecated API. Commit.
- Backend folder doesn't exist. Commit.
- Fix build. Commit.
- Small config file changes. Commit.
- Use DBus calls only to avoid unstable libsecret API. Commit.
- Compatibility for binary data. Commit.
- Be very aggressive with dbus activation. Commit.
- Address some comments. Commit.
- Proxy pamOpen. Commit.
- When renaming, refuse to overwrite an already existing entry. Commit. Fixes bug #458639
- Correctly forward collection created and deleted signals. Commit.
- Minor code refactors. Commit.
- Support KeePassXC as SecretService backend. Commit.
- Compatibility for Windows. Commit.
- Fix FdoSecretsTest. Commit.
- Add support for Json encoding maps. Commit.
- Add secret service bridge. Commit. See bug #491280. Fixes bug #458644. Fixes bug #459289
- Prepare kwalletd for migration to be a bridge. Commit.
Syntax Highlighting
- Add forgotten acpi-dsdt.dsl.fold. Commit.
- Add autotest for acpi-dsl/acpi-asl. Commit.
- Fix order of two rules. Commit.
- Fix lookahead -> lookAhead and hex string escapes. Commit.
- Acpi-dsl: Copy over comment handling from acpi-asl.xml. Commit.
- Add syntax definition for ACPI Source Language. Commit.
- Make the duplicated keyword check non-fatal. Commit.
- Check for duplicated keywords in a keyword list. Commit.
- Increment version. Commit.
- Update syntax highliting tests for RET instruction for GNU Assembler. Commit.
- Moved cm.popret[z] instructions to branch/control-flow category. Commit.
- Removed extra newlines at the end of GNU Assembler syntax file. Commit.
- Syntax highlighting: Added RISC-V instructions for GNU Assembler. Commit. Implements feature #498122. See bug #498122
- Cmake.xml: update copyright years. Commit.
- Cmake.xml: updates for CMake 4.0. Commit.
- Cmake.xml: reformat the source YAML file with
yq
tool. Commit.
Installing binary packages
On Linux, using packages for your favorite distribution is the recommended way to get access to KDE Frameworks. Get KDE Software on Your Linux Distro wiki page
Compiling from sources
The complete source code for KDE Frameworks 6.14.0 may be freely downloaded. Instructions on compiling and installing are available from the KDE Frameworks 6.14.0 Info Page.
Building from source is possible using the basic cmake .; make; make install commands. For a single Tier 1 framework, this is often the easiest solution. People interested in contributing to frameworks or tracking progress in development of the entire set are encouraged to use kdesrc-build. Frameworks 6.14.0 requires Qt 6.5.0.
A detailed listing of all Frameworks with API documentation is on api.kde.org.
Get Involved
Those interested in following and contributing to the development of Frameworks can check out the git repositories and follow the discussions on the KDE Frameworks Development mailing list. Policies and the current state of the project and plans are available at the Frameworks wiki. Real-time discussions take place on the #kde-devel IRC channel on Libera Chat.
Supporting KDE
KDE is a Free Software community that exists and grows only because of the help of many volunteers that donate their time and effort. KDE is always looking for new volunteers and contributions, whether it is help with coding, bug fixing or reporting, writing documentation, translations, promotion, money, etc. All contributions are gratefully appreciated and eagerly accepted. Please read through the Supporting KDE page for further information or become a KDE e.V. supporting member through our Join the Game initiative.