KDE • Community • Announcements

Release of KDE Frameworks 5.39.0

Also available in:

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

October 14, 2017. KDE today announces the release of KDE Frameworks 5.39.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


  • Only match real MIME types, not e.g. "raw CD image" (bug 364884)
  • Remove pf.path() from container before the reference got screwed up by it.remove()
  • Fix tags KIO-slave protocol description
  • Consider markdown files to be Documents

Breeze Icons

  • add overflow-menu icon (bug 385171)

Extra CMake Modules

  • Fix python bindings compilation after 7af93dd23873d0b9cdbac192949e7e5114940aa6

Framework Integration

  • Make KStandardGuiItem::discard match QDialogButtonBox::Discard


  • Changed the default query limit to zero
  • Added the option to enable model tester


  • Make KCMultiDialog scrollable (bug 354227)


  • Deprecate KStandardShortcut::SaveOptions


  • Deprecate KStandardAction::PasteText and KPasteTextAction


  • desktoptojson: Improve legacy service type detection heuristic (bug 384037)


  • Relicense to LGPL2.1+
  • Added openService() method to KRunProxy


  • fix crash when more than one instances of ExtractorCollection are destructed


  • Revert "KGlobalAccel: port to KKeyServer's new method symXModXToKeyQt, to fix numpad keys" (bug 384597)


  • add a method to reset the custom palette
  • use qApp->palette() when no custom one is set
  • allocate the proper buffer size
  • allow to set a custom palette instead of colorSets
  • expose the colorset for the stylesheet


  • Windows: Fix 'klauncher uses absolute compile time install path for finding kioslave.exe'


  • kioexec: Watch the file when it has finished copying (bug 384500)
  • KFileItemDelegate: Always reserve space for icons (bug 372207)


  • don't instantiate Theme file in BasicTheme
  • add a new Forward button
  • less contrast to the sheet scrollbar background
  • more reliable insert and remove from overflow menu
  • better context icon rendering
  • more careful to center the action button
  • use iconsizes for action buttons
  • pixel perfect icon sizes on desktop
  • selected effect to fake handle icon
  • fix color of handles
  • better color for the main action button
  • fix context menu for desktop style
  • better "more" menu for the toolbar
  • a proper menu for the intermediate pages context menu
  • add a text field which should bring up a keypad
  • don't crash when launched with non existent styles
  • ColorSet concept in Theme
  • simplify wheel management (bug 384704)
  • new example app with desktop/mobile main qml files
  • ensure currentIndex is valid
  • Generate the appstream metadata of the gallery app
  • Look for QtGraphicalEffects, so packagers don't forget it
  • Don't include the control over the bottom decoration (bug 384913)
  • lighter coloring when listview has no activeFocus
  • some support for RTL layouts
  • Disable shortcuts when an action is disabled
  • create the whole plugin structure in the build directory
  • fix accessibility for the gallery main page
  • If plasma isn't available, KF5Plasma isn't either. Should fix the CI error


  • Require Kirigami 2.1 instead of 1.0 for KNewStuffQuick
  • Properly create KPixmapSequence
  • Don't complain the knsregistry file is not present before it's useful

KPackage Framework

  • kpackage: bundle a copy of servicetypes/kpackage-generic.desktop
  • kpackagetool: bundle a copy of servicetypes/kpackage-generic.desktop


  • KPartsApp template: fix install location of kpart desktop file


  • Ignore default mark in icon border for single selectable mark
  • Use QActionGroup for input mode selection
  • Fix missing spell check bar (bug 359682)
  • Fix the fall-back "blackness" value for unicode > 255 characters (bug 385336)
  • Fix trailing space visualization for RTL lines


  • Only send OutputConfig sendApplied / sendFailed to the right resource
  • Don't crash if a client (legally) uses deleted global contrast manager
  • Support XDG v6


  • KAcceleratorManager: set icon text on actions to remove CJK markers (bug 377859)
  • KSqueezedTextLabel: Squeeze text when changing indent or margin
  • Use edit-delete icon for destructive discard action (bug 385158)
  • Fix Bug 306944 - Using the mousewheel to increment/decrement the dates (bug 306944)
  • KMessageBox: Use question mark icon for question dialogs
  • KSqueezedTextLabel: Respect indent, margin and frame width


  • Fix KToolBar repaint loop (bug 377859)

Plasma Framework

  • Fix org.kde.plasma.calendar with Qt 5.10
  • [FrameSvgItem] Iterate child nodes properly
  • [Containment Interface] Don't add containment actions to applet actions on desktop
  • Add new component for the greyed out labels in Item Delegates
  • Fix FrameSVGItem with the software renderer
  • Don't animate IconItem in software mode
  • [FrameSvg] Use new-style connect
  • possibility to set an attached colorscope to not inherit
  • Add extra visual indicator for Checkbox/Radio keyboard focus
  • don't recreate a null pixmap
  • Pass item to rootObject() since it's now a singleton (bug 384776)
  • Don't list tab names twice
  • don't accept active focus on tab
  • register revision 1 for QQuickItem
  • [Plasma Components 3] Fix RTL in some widgets
  • Fix invalid id in viewitem
  • update mail notification icon for better contrast (bug 365297)


New module: QtQuickControls 2 style that uses QWidget's QStyle for painting This makes it possible to achieve an higher deree of consistency between QWidget-based and QML-based apps.


  • [solid/fstab] Add support for x-gvfs style options in fstab
  • [solid/fstab] Swap vendor and product properties, allow i18n of description

Syntax Highlighting

  • Fix invalid itemData references of 57 highlighting files
  • Add support for custom search paths for application-specific syntax and theme definitions
  • AppArmor: fix DBus rules
  • Highlighting indexer: factor out checks for smaller while loop
  • ContextChecker: support '!' context switching and fallthroughContext
  • Highlighting indexer: check existence of referenced context names
  • Relicense qmake highlighting to MIT license
  • Let qmake highlighting win over Prolog for .pro files (bug 383349)
  • Support clojure's "@" macro with brackets
  • Add syntax highlighting for AppArmor Profiles
  • Highlighting indexer: Catch invalid a-Z/A-z ranges in regexps
  • Fixing incorrectly capitalized ranges in regexps
  • add missing reference files for tests, looks ok, I think
  • Added Intel HEX file support for the Syntax highlighting database
  • Disable spell checking for strings in Sieve scripts


  • Fix memory leak

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.39.0 may be freely downloaded. Instructions on compiling and installing KDE Frameworks 5.39.0 are available from the KDE Frameworks 5.39.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.39.0 requires Qt 5.7.

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