KDE • Community • Announcements

Release of KDE Frameworks 5.18.0

Also available in:

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

January 09, 2016. KDE today announces the release of KDE Frameworks 5.18.0.

KDE Frameworks are 60 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


  • Fix several issue of mtime related search
  • PostingDB Iter: Do not assert on MDB_NOTFOUND
  • Balooctl status: Avoid showing 'Content indexing' about folders
  • StatusCommand: Show the correct status for folders
  • SearchStore: Gracefully handle empty term values (bug 356176)

Breeze Icons

  • icon updates and additions
  • 22px size status icons for 32px too as you need it in the system tray
  • Changed Fixed to Scalable value to 32px folders in Breeze Dark

Extra CMake Modules

  • Make the KAppTemplate CMake module global
  • Silence CMP0063 warnings with KDECompilerSettings
  • ECMQtDeclareLoggingCategory: Include <QDebug> with the generated file
  • Fix CMP0054 warnings


  • Streamlined the QML loading for KCM (bug 356832)
  • Work-around for the Qt SQL bug that does not clean up connections properly (bug 348194)
  • Merged a plugin that executes applications on activity state change
  • Port from KService to KPluginLoader
  • Port plugins to use kcoreaddons_desktop_to_json()


  • Fully initialize DynMenuInfo in return value


  • KPluginSelector::addPlugins: fix assert if 'config' parameter is default (bug 352471)


  • Avoid deliberately overflowing a full buffer


  • Ensure group is unescaped properly in kconf_update


  • Add KAboutData::fromPluginMetaData(const KPluginMetaData &plugin)
  • Add KPluginMetaData::copyrightText(), extraInformation() and otherContributors()
  • Add KPluginMetaData::translators() and KAboutPerson::fromJson()
  • Fix use-after-free in desktop file parser
  • Make KPluginMetaData constructible from a json path
  • desktoptojson: make missing service type file an error for the binary
  • make calling kcoreaddons_add_plugin without SOURCES an error


  • Adapt to Qt 5.6's dbus-in-secondary-thread


  • [DragArea] Add dragActive property
  • [KQuickControlsAddons MimeDatabase] Expose QMimeType comment


  • kded: adapt to Qt 5.6's threaded dbus: messageFilter must trigger module loading in the main thread

KDELibs 4 Support

  • kdelibs4support requires kded (for kdedmodule.desktop)
  • Fix CMP0064 warning by setting policy CMP0054 to NEW
  • Don't export symbols that also exist in KWidgetsAddons


  • Don't leak fd when creating socket


  • Windows: remove kdewin dependency


  • Document the first argument rule for plurals in QML
  • Reduce unwanted type changes
  • Make it possible to use doubles as index for i18np*() calls in QML


  • Fix kiod for Qt 5.6's threaded dbus: messageFilter must wait until the module is loaded before returning
  • Change the error code when pasting/moving into a subdirectory
  • Fix emptyTrash blocked issue
  • Fix wrong button in KUrlNavigator for remote URLs
  • KUrlComboBox: fix returning an absolute path from urls()
  • kiod: disable session management
  • Add autocompletion for '.' input which offers all hidden files/folders* (bug 354981)
  • ktelnetservice: fix off by one in argc check, patch by Steven Bromley


  • [Notify By Popup] Send along event ID
  • Set default non-empty reason for screen saver inhibition; (bug 334525)
  • Add a hint to skip notifications grouping (bug 356653)


  • [KNotifyConfigWidget] Allow selecting a specific event

Package Framework

  • Make it possible to provide the metadata in json


  • Fix possible double deletion in DeclarativePersonData


  • Syntax h/l for pli: builtin functions added, expandable regions added

KWallet Framework

  • kwalletd: Fix FILE* leak


  • Add xcb variant for static KStartupInfo::sendFoo methods


  • make it work with older NM versions

Plasma Framework

  • [ToolButtonStyle] Always indicate activeFocus
  • Use the SkipGrouping flag for the "widget deleted" notification (bug 356653)
  • Deal properly with symlinks in path to packages
  • Add HiddenStatus for plasmoid self-hiding
  • Stop redirecting windows when item is disabled or hidden. (bug 356938)
  • Don't emit statusChanged if it hasn't changed
  • Fix element ids for east orientation
  • Containment: Don't emit appletCreated with null applet (bug 356428)
  • [Containment Interface] Fix erratic high precision scrolling
  • Read KPluginMetada's property X-Plasma-ComponentTypes as a stringlist
  • [Window Thumbnails] Don't crash if Composite is disabled
  • Let containments override CompactApplet.qml

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.18.0 may be freely downloaded. Instructions on compiling and installing KDE Frameworks 5.18.0 are available from the KDE Frameworks 5.18.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.18.0 requires Qt 5.3.

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 macOS.

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