KDE • Community • Announcements

Release of KDE Frameworks 5.47.0

Also available in:

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

June 09, 2018. KDE today announces the release of KDE Frameworks 5.47.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


  • Terminate query execution early if subterm returns empty result set
  • Avoid crash when reading corrupt data from document terms db (bug 392877)
  • handle string lists as input
  • Ignore more types of source files (bug 382117)

Breeze Icons

  • updated handles and overflow-menu

Extra CMake Modules

  • Android toolchain: allow to specify extra libs manually
  • Android: Don't define qml-import-paths if it's empty


  • handle zip files embedded within zip files (bug 73821)


  • [KCModuleQml] Ignore disabled controls when tabbing


  • kcfg.xsd - do not require a kcfgfile element


  • Fix the "Default" color scheme to match Breeze again


  • Set kcm context property on the correct context
  • [Plotter] Don't render if m_node is null (bug 394283)


  • Update the list of Ukrainian entities
  • add entity OSD to general.entites
  • Add entities CIFS, NFS, Samba, SMB to general.entities
  • Add Falkon, Kirigami, macOS, Solid, USB, Wayland, X11, SDDM to general entities


  • check that ffmpeg is at least version 3.1 that introduce the API we require
  • search for album artist and albumartist tags in taglibextractor
  • popplerextractor: don't try to guess the title if there isn't one


  • Make sure ungrab keyboard request is processed before emitting shortcut (bug 394689)


  • holiday_es_es - Fix day of the "Comunidad de Madrid"


  • Check if group < LastGroup, as KIconEffect doesn't handle UserGroup anyway


  • Remove duplicated mime types from json files


  • Check if destination exists also when pasting binary data (bug 394318)
  • Auth support: Return the actual length of socket buffer
  • Auth support: Unify API for file descriptor sharing
  • Auth support: Create socket file in user's runtime directory
  • Auth support: Delete socket file after use
  • Auth support: Move task of cleaning up socket file to FdReceiver
  • Auth support: In linux don't use abstract socket to share file descriptor
  • [kcoredirlister] Remove as many url.toString() as possible
  • KFileItemActions: fallback to default mimetype when selecting only files (bug 393710)
  • Introduce KFileItemListProperties::isFile()
  • KPropertiesDialogPlugin can now specify multiple supported protocols using X-KDE-Protocols
  • Preserve fragment when redirecting from http to https
  • [KUrlNavigator] Emit tabRequested when path in path selector menu is middle-clicked
  • Performance: use the new uds implementation
  • Don't redirect smb:/ to smb:// and then to smb:///
  • Allow accepting by double-click in save dialog (bug 267749)
  • Enable preview by default in the filepicker dialog
  • Hide file preview when icon is too small
  • i18n: use plural form again for plugin message
  • Use a regular dialog rather than a list dialog when trashing or deleting a single file
  • Make the warning text for deletion operations emphasize its permanency and irreversibility
  • Revert "Show view mode buttons in the open/save dialog's toolbar"


  • Show action.main more prominently on the ToolBarApplicationHeader
  • Allow Kirigami build without KWin tablet mode dependency
  • correct swipefilter on RTL
  • correct resizing of contentItem
  • fix --reverse behavior
  • share contextobject to always access i18n
  • make sure tooltip is hidden
  • make sure to not assign invalid variants to the tracked properties
  • handle not a MouseArea, dropped() signal
  • no hover effects on mobile
  • proper icons overflow-menu-left and right
  • Drag handle to reorder items in a ListView
  • Use Mnemonics on the toolbar buttons
  • Added missing files in QMake's .pri
  • [API dox] Fix Kirigami.InlineMessageType -> Kirigami.MessageType
  • fix applicationheaders in applicationitem
  • Don't allow showing/hiding the drawer when there's no handle (bug 393776)


  • KConcatenateRowsProxyModel: properly sanitize input


  • Fix crashes in NotifyByAudio when closing applications

KPackage Framework

  • kpackage_install_*package: fix missing dep between .desktop and .json
  • make sure paths in rcc are never derived from absolute paths


  • Process DBus replies in the ::match thread (bug 394272)


  • Don't use title case for the "show word count" checkbox
  • Make the word/char count a global preference


  • Increase org_kde_plasma_shell interface version
  • Add "SkipSwitcher" to API
  • Add XDG Output Protocol


  • [KCharSelect] Fix table cell size with Qt 5.11
  • [API dox] Remove usage of \overload, resulting in broken docs
  • [API dox] Tell doxygen "e.g." does not end the sentence, use ".\ "
  • [API dox] Remove unneeded HTML escaping
  • Don't automatically set the default icons for each style
  • Make KMessageWidget match Kirigami inlineMessage's style (bug 381255)


  • Make information about unhandled property just debug messages
  • WirelessSetting: implement assignedMacAddress property

Plasma Framework

  • Templates: consistent naming, fix translation catalog names & more
  • [Breeze Plasma Theme] Fix kleopatra icon to use color stylesheet (bug 394400)
  • [Dialog] Handle dialog being minimized gracefully (bug 381242)


  • Improve Telegram integration
  • Treat inner arrays as OR constraints rather than AND
  • Make it possible to constrain plugins by a desktop file presence
  • Make it possible to filter plugins by executable
  • Highlight the selected device in the KDE Connect plugin
  • fix i18n issues in frameworks/purpose/plugins
  • Add Telegram plugin
  • kdeconnect: Notify when the process fails to start (bug 389765)


  • Use pallet property only when using qtquickcontrols 2.4
  • Work with Qt<5.10
  • Fix height of tabbar
  • Use Control.palette
  • [RadioButton] Rename "control" to "controlRoot"
  • Don't set explicit spacing on RadioButton/CheckBox
  • [FocusRect] Use manual placement instead of anchors
  • It turns out the flickable in a scrollview is the contentItem
  • Show focus rect when CheckBox or RadioButton are focused
  • hacky fix to scrollview detection
  • Don't reparent the flickable to the mousearea
  • [TabBar] Switch tabs with mouse wheel
  • Control must not have children (bug 394134)
  • Constrain scroll (bug 393992)

Syntax Highlighting

  • Perl6: Add support for extensions .pl6, .p6, or .pm6 (bug 392468)
  • DoxygenLua: fix closing comment blocks (bug 394184)
  • Add pgf to the latex-ish file formats (same format as tikz)
  • Add postgresql keywords
  • Highlighting for OpenSCAD
  • debchangelog: add Cosmic Cuttlefish
  • cmake: Fix DetectChar warning about escaped backslash
  • Pony: fix identifier and keyword
  • Lua: updated for Lua5.3

Security information

The released code has been GPG-signed using the following key: pub rsa2048/58D0EE648A48B3BB 2016-09-05 David Faure <faure@kde.org> Primary key fingerprint: 53E6 B47B 45CE A3E0 D5B7 4577 58D0 EE64 8A48 B3BB

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.47.0 may be freely downloaded. Instructions on compiling and installing KDE Frameworks 5.47.0 are available from the KDE Frameworks 5.47.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.47.0 requires Qt 5.8.

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