KDE • Community • Announcements

Release of KDE Frameworks 5.25.0

Also available in:

English | Català | Galician | Nederlands | Português | Svenska | Українська

August 13, 2016. KDE today announces the release of KDE Frameworks 5.25.0.

KDE Frameworks are 70 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 Frameworks 5.0 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


  • Qt >= 5.5 is now required


  • Follow HTTP redirects

Breeze Icons

  • update mail- 16px icons to recognize the icons better
  • update mic and audio status icons to have the same layout and size
  • New System Settings app icon
  • add symbolic status gnome icons
  • add gnome 3 symbolic icon support
  • Added icons for Diaspora and Vector, see phabricator.kde.org/M59
  • New icons for Dolphin and Gwenview
  • weather icons are status icons no app icons
  • add some links to xliff thanks gnastyle
  • add kig icon
  • add mimetype icons, krdc icon, other app icons from gnastyle
  • add certificate mimetype icon (bug 365094)
  • update gimp icons thanks gnastyle (bug 354370)
  • globe action icon is now no linked file please use it in digikam
  • update labplot icons according to mail 13.07. from Alexander Semke
  • add app icons from gnastyle
  • add kruler icon from Yuri Fabirovsky
  • fix broken svg files thanks fuchs (bug 365035)

Extra CMake Modules

  • Fix inclusion when there's no Qt5
  • Add a fallback method for query_qmake() when there's no Qt5 installation
  • Make sure ECMGeneratePriFile.cmake behaves like the rest of ECM
  • Appstream data changed its preferred location


  • [KActivities-CLI] commands for starting and stopping an activity
  • [KActivities-CLI] setting and getting activity name, icon and description
  • Added a CLI application for controlling activities
  • Adding scripts to switch to previous and next activities
  • Method for inserting into QFlatSet now returns index along with the iterator (bug 365610)
  • Adding ZSH functions for stopping and deleting non-current activities
  • Added isCurrent property to KActivities::Info
  • Using constant iterators when searching for activity

KDE Doxygen Tools

  • Many improvements to the output formatting
  • Mainpage.dox has now higher priority than README.md


  • Handle multiple gzip streams (bug 232843)
  • Assume a directory is a directory, even if the permission bit is set wrong (bug 364071)


  • KBookmarkGroup::moveBookmark: fix return value when item is already at the right position


  • Add DeleteFile and RenameFile standard shortcut


  • Add DeleteFile and RenameFile standard action
  • The config page has now scroll bars when needed (bug 362234)


  • Install known licenses and find them at runtime (regression fix) (bug 353939)


  • Actually emit valueChanged


  • Check for xattr during config step, otherwise the build might fail (if xattr.h is missing)


  • Use klauncher dbus instead of KRun (bug 366415)
  • Launch jumplist actions via KGlobalAccel
  • KGlobalAccel: Fix deadlock on exit under Windows


  • Support percentage unit in border radius
  • Removed prefixed version of background and border radius properties
  • Fixes in 4-values shorthand constructor function
  • Create string objects only if they will be used


  • Greatly improve the performance of makeCacheKey, as it is a critical code path in icon lookup
  • KIconLoader: reduce number of lookups when doing fallbacks
  • KIconLoader: massive speed improvement for loading unavailable icons
  • Do not clear search line when switching category
  • KIconEngine: Fix QIcon::hasThemeIcon always returning true (bug 365130)


  • Adapt KInit to Mac OS X


  • Fix KIO::linkAs() to work as advertised, i.e. fail if dest already exists
  • Fix KIO::put("file:///path") to respect the umask (bug 359581)
  • Fix KIO::pasteActionText for null dest item and for empty URL
  • Add support for undoing symlink creation
  • GUI option to configure global MarkPartial for KIO slaves
  • Fix MaxCacheSize limited to 99 KiB
  • Add clipboard buttons to checksums tab
  • KNewFileMenu: fix copying template file from embedded resource (bug 359581)
  • KNewFileMenu: Fix creating link to application (bug 363673)
  • KNewFileMenu: Fix suggestion of new filename when file already exist in desktop
  • KNewFileMenu: ensure fileCreated() is emitted for app desktop files too
  • KNewFileMenu: fix creating symlinks with a relative target
  • KPropertiesDialog: simplify button box usage, fix behavior on Esc
  • KProtocolInfo: refill cache to find newly installed protocols
  • KIO::CopyJob: port to qCDebug (with its own area, since this can be quite verbose)
  • KPropertiesDialog: add Checksums tab
  • Clean url's path before initializing KUrlNavigator


  • KRearrangeColumnsProxyModel: fix assert in index(0, 0) on empty model
  • Fix KDescendantsProxyModel::setSourceModel() not clearing internal caches
  • KRecursiveFilterProxyModel: fix QSFPM corruption due to filtering out rowsRemoved signal (bug 349789)
  • KExtraColumnsProxyModel: implement hasChildren()


  • Don't set parent of sublayout manually, silences warning

Package Framework

  • Infer the ParentApp from the PackageStructure plugin
  • Let kpackagetool5 generate appstream information for kpackage components
  • Make it possible to load metadata.json file from kpackagetool5


  • Remove unused KF5 dependencies


  • applications.menu: remove references to unused categories
  • Always update the Trader parser from yacc/lex sources


  • Do not ask for overwriting a file twice with native dialogs
  • added FASTQ syntax


  • [client] Use a QPointer for the enteredSurface in Pointer
  • Expose Geometry in PlasmaWindowModel
  • Add a geometry event to PlasmaWindow
  • [src/server] Verify that surface has a resource before sending pointer enter
  • Add support for xdg-shell
  • [server] Properly send a selection clear prior to keyboard focus enter
  • [server] Handle no XDG_RUNTIME_DIR situation more gracefully


  • [KCharSelect] Fix crash when searching with no present data file (bug 300521)
  • [KCharSelect] Handle characters outside BMP (bug 142625)
  • [KCharSelect] Update kcharselect-data to Unicode 9.0.0 (bug 336360)
  • KCollapsibleGroupBox: Stop animation in destructor if still running
  • Update to Breeze palette (sync from KColorScheme)


  • [xcb] Ensure the compositingChanged signal is emitted if NETEventFilter is recreated (bug 362531)
  • Add a convenience API to query the windowing system/platform used by Qt


  • Fix minimum size hint (cut-off text) (bug 312667)
  • [KToggleToolBarAction] Honor action/options_show_toolbar restriction


  • Default to WPA2-PSK and WPA2-EAP when getting security type from connection settings

Oxygen Icons

  • add application-menu to oxygen (bug 365629)

Plasma Framework

  • Keep compatiable slot createApplet with Frameworks 5.24
  • Don't delete gl texture twice in thumbnail (bug 365946)
  • Add translation domain to wallpaper QML object
  • Don't manually delete applets
  • Add a kapptemplate for Plasma Wallpaper
  • Templates: register templates in own toplevel category "Plasma/"
  • Templates: Update techbase wiki links in READMEs
  • Define what Plasma packagestructures extend plasmashell
  • support a size for adding applets
  • Define Plasma PackageStructure as regular KPackage PackageStructure plugins
  • Fix: update wallpaper example Autumn's config.qml to QtQuick.Controls
  • Use KPackage to install Plasma Packages
  • If we pass a QIcon as an argument to IconItem::Source, use it
  • Add overlay support to Plasma IconItem
  • Add Qt::Dialog to default flags to make QXcbWindow::isTransient() happy (bug 366278)
  • [Breeze Plasma Theme] Add network-flightmode-on/off icons
  • Emit contextualActionsAboutToShow before showing the applet's contextualActions menu (bug 366294)
  • [TextField] Bind to TextField length instead of text
  • [Button Styles] Horizontally center in icon-only mode (bug 365947)
  • [Containment] Treat HiddenStatus as low status
  • Add kruler system tray icon from Yuri Fabirovsky
  • Fix the infamous 'dialogs show up on the Task Manager' bug once more
  • fix network wireless available icon with an ? emblem (bug 355490)
  • IconItem: Use better approach to disable animation when going from invisible to visible
  • Set Tooltip window type on ToolTipDialog through KWindowSystem API


  • Always update the Predicate parser from yacc/lex sources


  • hunspell: Clean up code for searching for dictionaries, add XDG dirs (bug 361409)
  • Try to fix language filter usage of language detection a bit

Installing binary packages

On Linux, using packages for your favorite distribution is the recommended way to get access to KDE Frameworks. Binary package distro install instructions.

Compiling from sources

The complete source code for KDE Frameworks 5.25.0 may be freely downloaded. Instructions on compiling and installing KDE Frameworks 5.25.0 are available from the KDE Frameworks 5.25.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 5.25.0 requires Qt 5.5.

A detailed listing of all Frameworks and other third party Qt libraries is at inqlude.org, the curated archive of Qt libraries. A complete list with API documentation is on api.kde.org.


Those interested in following and contributing to the development of Frameworks can check out the git repositories, follow the discussions on the KDE Frameworks Development mailing list and contribute patches through review board. 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 freenode.net.

You can discuss and share ideas on this release in the comments section of the dot article.

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 Donations page for further information or become a KDE e.V. supporting member through our new Join the Game initiative.

About KDE

KDE is an international technology team that creates free and open source software for desktop and portable computing. Among KDE's products are a modern desktop system for Linux and UNIX platforms, comprehensive office productivity and groupware suites and hundreds of software titles in many categories including Internet and web applications, multimedia, entertainment, educational, graphics and software development. KDE software is translated into more than 60 languages and is built with ease of use and modern accessibility principles in mind. KDE's full-featured applications run natively on Linux, BSD, Solaris, Windows and Mac OS X.

Trademark Notices. KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. Linux is a registered trademark of Linus Torvalds. UNIX is a registered trademark of The Open Group in the United States and other countries. All other trademarks and copyrights referred to in this announcement are the property of their respective owners.

Press Contacts

For more information send us an email:

Global navigation links