Friday, 10 May 2024
KDE today announces the release of KDE Frameworks 6.2.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
Attica
- Modernize: don't else after return. Commit.
- Provider: document default ctor. Commit.
- Providermanager: remove unused function with typo. Commit.
- Postfiledata: simplify private. Commit.
- Modernize: use unique_ptr for privates. Commit.
- Basejob: don't leave dangly pointers. Commit.
- Platformdependent: v3. Commit.
Breeze Icons
- Add support for media-playlist-no-shuffle icon name. Commit.
- Add audio/ogg and audio/x-vorbis+ogg icons. Commit.
- Add audio/vnd.wave MIME type. Commit.
- Remove generic non-symbolic audio and video icons. Commit.
- Add 16 and 22px symbolic versions of some Places icons that were missing. Commit. Fixes bug #486316
- Add zoom-in-map and zoom-out-map icons along with -symbolic versions. Commit.
- Longer description for the ICONS_LIBRARY option. Commit.
- Add symbolic versions for more USB device style icons. Commit.
- Fix some scale errors. Commit. Fixes bug #485479
- Fixed input-combo-on.svg colour issue. Commit.
- Add -symbolic symlinks for notification-* icons. Commit.
- Use new
dev.suyu_emu.suyu
id, add symlink for old id. Commit. - Add accessories-screenshot-tool icon/symlink. Commit.
- [webfont] enable ligatures. Commit.
- Gitignore: add VS Code dir. Commit.
- Add input-keyboard-color 22px, 32 px. Commit.
Extra CMake Modules
- API dox: KDEInstallDirs6: refer to qtpaths now as source of Qt paths. Commit.
- API dox: KDEInstallDirs6: drop outdated note about being in ALPHA state. Commit.
- Test: Increase minimum cmake version so that it works with Qt 6.7. Commit.
- ECMQmlModule6: group qml and resource file calls. Commit.
- Modules/ECMAddTests.cmake - handle unset or empty QT_PLUGIN_PATH. Commit.
KCMUtils
- KQuickConfigModule: Don't crash on null object. Commit.
- SimpleKCM: Remove remnants of footerParent. Commit.
- Use ellipsis character instead of three dots. Commit.
- GridDelegate: Port to ComponentBehavior: Bound. Commit.
- GridDelegate: Consolidate code paths for opening a menu. Commit.
- GridDelegate: Don't use qualified property access as appropriate. Commit.
- GridDelegate: Use concrete type for the popup menu. Commit.
- GridDelegate: Use somewhat more consistent ToolTip bindings, remove timeout. Commit.
- Components: Drop QML import versions, unify import aliases. Commit.
- Components: Guard nullable property access. Commit.
- Components: Explicitly specify signal handler arguments. Commit.
- KCModuleQml: Provide a fallback in case a pushed page is not one of magical KCMUtils types. Commit.
- Add API to make header and footer paddings optional. Commit.
- Round all the things consistently. Commit.
- Pluginselector: cache delegates. Commit.
KColorScheme
- Gitignore: add VS Code dir. Commit.
KConfig
- Avoid allocations while parsing int/float lists. Commit.
- Adapt kdesktopfiletest to QTemporaryFile behavior change. Commit.
- Guard header with an ifndef and include moc generates sources in the cpp file. Commit.
- Autotests: Don't use a timeout in testLocalDeletion. Commit.
- Adjust kconfig_compiler autotests to include a version without kcfgc. Commit.
- Add a CMake function to add a kcfg file without kcfgc. Commit.
- Gitignore: add VS Code dir. Commit.
KCoreAddons
- Gitignore: add VS Code dir. Commit.
KFileMetaData
- API dox: use "MIME type" and "URL" spellings consistently. Commit.
- API dox: add some minimal info to undocumented classes. Commit.
- API dox: add empty line between @brief (ends by first period) and rest. Commit.
- API dox: add some dummy info to namespaces for doxygen to cover them also. Commit.
- API dox: escape space after e.g. to work-around doxygen sentence end magic. Commit.
- UserMetadata: return errors when xattr ops fails. Commit.
- Value is already default timeout value in QT6 framework. Commit.
- [XmlExtractor] Add support for compressed SVGs. Commit.
- [XmlExtractorTest] Move Test class declaration to source file. Commit.
- [Office2007Extractor] Reuse DublinCoreExtractor, fix namespace handling. Commit.
- [DublinCoreExtractor] Add CreationDate (dc::created) support. Commit.
- [DublinCoreExtractor] Skip properties from empty elements, cleanup. Commit.
- Move date parser helper out of ExtractorPlugin, clean it up. Commit.
- [TaglibExtractor] Include vnd.audible.aaxc audio books in supported types. Commit.
- [Test] Include vnd.audible.aax audio books in coverage tests. Commit.
- [TaglibWriterTest] Move test class declaration to source file, cleanup. Commit.
- [TaglibExtractor|Writer] Fix mimetypes. Commit.
KImageformats
- Fix build with Qt 6.7 on 32 bits. Commit.
KIO
- [kfilefilter] Consider mime globs valid. Commit.
- Kfileitemtest: add basic tests for dir. Commit.
- File_unix: don't call QMimeDatabase::mimeTypeForFile for directories. Commit.
- Widgetsaskuseractionhandler prevent crash when job had no parent widget. Commit.
- PreviewJob: Add file extension to thumbnail temp files. Commit. Fixes bug #463989
- KFileItem: handle the case parent url path is empty. Commit.
- KFileItemActions: Add logic to order actions between separators. Commit. Fixes bug #466115
- KFileItem: fix getStatusBarInfo() displaying symlink target as "http:". Commit. Fixes bug #475422
- ScopedProcessRunner: support waitForStarted. Commit.
- ScopedProcessRunner: fix use of undeclared identifier 'close'. Commit.
- [ftp] Always use default timeout values. Commit.
- [http] Set error string for ERR_DOES_NOT_EXIST. Commit.
- Force test language to en. Commit.
- Knewfilemenu: Add @since 6.2 to the new signals and methods. Commit.
- Kfilefilter.h: update API docs. Commit.
- Kencodingfiledialog dox: rewrite API dox that refer to removed functions. Commit.
- Kfilewidget dox: replace references to setFilter() with setFilters(). Commit.
- Fix a few warnings. Commit.
- Add
EnableRemoteFolderThumbnail
option checking. Commit. - PreviewJob: Display preview for locally mounted remote directories. Commit.
- Knewfilemenu: add isNewDirNameJobRunning. Commit.
- KFilePlacesItem: Show teardown busy indicator during optical media eject. Commit.
- KDirModelTest.testDeleteFiles: lower debug output. Commit.
- KUrlNavigator: allow adding a badge widget after the breadcrumb. Commit.
- Set ideal case for TwoVectors. Commit.
- Udsentry_api_comparison_benchmark: update. Commit.
- Kurlnavigatorbutton: prevent. Commit.
- Add more explicit moc includes to sources for moc-covered headers. Commit.
- Connection: don't queue tasks until OOM. Commit.
- Http: Fix parsing DAV:getlastmodified. Commit. Fixes bug #484671
- Kfileitem: Linux, use statx to refresh files. Commit. Fixes bug #446858
Kirigami
- Fixed wrong navigation and dialog header button colors. Commit. Fixes bug #486163
- Card: Remove the unnecessary "reality check" binding on footer, add test. Commit.
- Card: Restrict actions type from arbitrary QObject to T.Action. Commit.
- Card: Shuffle things around a bit to make them look nicer. Commit.
- Remove linkActivated/linkHovered from Delegate types. Commit.
- InlineMessage: Improve examples in documentation, clean up QML. Commit.
- OverlayDrawer: Rework separator's code, animate transitions. Commit.
- OverlayDrawer: Hide segmented separator when the drawer is collapsed. Commit.
- OverlayDrawer: Rewrite visibility condition for segmented separator. Commit.
- OverlayDrawer: Rewrite segmented separator positioning expression. Commit.
- OverlayDrawer: Bind segmented separator's width to the real separator's width. Commit.
- GlobalDrawer: Set spacing on the default header. Commit.
- Fix null deref in OverlaySheet. Commit.
- OverlaySheet: Port layout hacks to a simple Padding with its contentItem. Commit.
- Tst_pagepool: Port testing code from verify(==) to compare. Commit.
- Tst_pagepool: Fix test properly. Commit.
- Revert "tst_pagepool: Fix test". Commit.
- CardsGridView and CheckableListItem are not a thing anymore. Commit.
- Actions.main is not a thing anymore. Commit.
- Tst_pagepool: Fix test. Commit.
- Revert "PageRow: Fix parent of Component-based pages". Commit.
- PageRow: Fix parent of Component-based pages. Commit. Fixes bug #482753
- MnemonicAttached: Fix logic when pressing Alt. Commit.
- Dialog: Always use an overlay as visual parent. Commit.
- Link Activation TitleSubtitle. Commit.
- ContextualHelpButton: remove excess space from tooltip. Commit. Fixes bug #481817
- Fix crash on teardown when QML engine is already unset. Commit.
- ListSectionHeader: Deprecate label property. Commit.
- PageRow: Remove superfluous trailing semicolon from a property alias. Commit.
- PromptDialog: Create default contentItem dynamically on demand. Commit.
- Padding: Remove old overridden contentItem from the visual hierarchy. Commit.
- Gitignore: add VS Code dir. Commit.
- Add a explicit page type check in AbstractApplictionHeader. Commit.
- Add radius unit for rounded rectangles. Commit.
KItemViews
- Add more explicit moc includes to sources for moc-covered headers. Commit.
KNotifications
- Enforce passing tests on Windows. Commit.
KTextEditor
- Fix caret painting for inline notes at the end of line. Commit.
- KateCompletionWidget: Mark function static. Commit.
- KateCompletionModel: remove useless std::as_const. Commit.
- Run more tests offscreen. Commit.
- Fix performance with many cursors in a large line. Commit.
- Fix test expectations. Commit.
- Fix crashs and OOM on load with encoding failures. Commit. Fixes bug #486195. Fixes bug #486134
- A11y: Improve tab order for "Appeareance" -> "Borders". Commit.
- A11y: Set "Line Height Multiplier" buddy. Commit.
- Fix broken navigation in completion widget with multiple views. Commit.
- Fix clicking in completion. Commit.
- Fix textInsertedRange signal for insertText behind last line. Commit. Fixes bug #483363
KTextTemplate
- Enforce passing tests on all platforms. Commit.
KUserFeedback
- Fix logging category. Commit.
QQC2 Desktop Style
- TreeViewDelegate: Fix non-observable modelIndex property getting stuck. Commit.
- [CheckIndicator] Use control as AbstractButton. Commit.
- Add missing dependency to private module. Commit.
- Add QTBUG to comment. Commit.
- Make SwitchIndicator more compiler-friendly. Commit.
- ItemBranchIndicators: Fix uninitialized member variable m_selected. Commit.
- StyleSingleton: Check whether object is qGuiApp. Commit.
- [RadioButton] Use id instead of parent lookup. Commit.
- [TabButton] Fix property type. Commit.
- Apply Kirigami.Units.cornerRadius to default list item background too. Commit.
- Gitignore: add VS Code dir. Commit.
- Use consistent radius value from Kirigami.Units.radius. Commit.
Solid
- Remove too aggressive assert. Commit. Fixes bug #464149
- [StorageAccess] Fix storageAccessFromPath returning unmounted filesystems. Commit.
- [SolidHwTest] Extend FakeHW description with encrypted volume, add tests. Commit.
- [SolidHwTest] Test Device::storageAccessFromPath. Commit.
- [DeviceManager] Remove exists() check from storageAccessFromPath. Commit.
- Udisks: Return empty string for "root" clearTextPath. Commit. Fixes bug #485507
- [SolidHwTest] Remove unnecessary slotPropertyChanged helper, fix bug. Commit.
- [SolidHwTest] Remove setenv wrapper, unnecessary qt_windows.h include. Commit.
- [SolidHwTest] Move test class declaration to source file. Commit.
- Udisks2: Add support CanCheck/Check/CanRepair/Repair. 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.2.0 may be freely downloaded. Instructions on compiling and installing are available from the KDE Frameworks 6.2.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.2.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.