Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package kf6-kwindowsystem for
openSUSE:Factory checked in at 2026-01-12 10:12:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kf6-kwindowsystem (Old)
and /work/SRC/openSUSE:Factory/.kf6-kwindowsystem.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kf6-kwindowsystem"
Mon Jan 12 10:12:22 2026 rev:23 rq:1326457 version:6.22.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/kf6-kwindowsystem/kf6-kwindowsystem.changes
2025-12-16 15:58:18.728032987 +0100
+++
/work/SRC/openSUSE:Factory/.kf6-kwindowsystem.new.1928/kf6-kwindowsystem.changes
2026-01-12 10:17:18.619597830 +0100
@@ -1,0 +2,13 @@
+Sun Jan 4 14:47:21 UTC 2026 - Christophe Marin <[email protected]>
+
+- Update to 6.22.0
+ * New feature release
+ * For more details please see:
+ * https://kde.org/announcements/frameworks/6/6.22.0
+- Changes since 6.21.0:
+ * Update dependency version to 6.22.0
+ * Add KWaylandExtras::{setXdgToplevelTag,setXdgToplevelDescription}
+ * Use ECM_TEST_NAME_PREFIX
+ * Update version to 6.22.0
+
+-------------------------------------------------------------------
Old:
----
kwindowsystem-6.21.0.tar.xz
kwindowsystem-6.21.0.tar.xz.sig
New:
----
kwindowsystem-6.22.0.tar.xz
kwindowsystem-6.22.0.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kf6-kwindowsystem.spec ++++++
--- /var/tmp/diff_new_pack.9OVnyn/_old 2026-01-12 10:17:19.723643267 +0100
+++ /var/tmp/diff_new_pack.9OVnyn/_new 2026-01-12 10:17:19.723643267 +0100
@@ -19,11 +19,11 @@
%define qt6_version 6.8.0
%define rname kwindowsystem
-# Full KF6 version (e.g. 6.21.0)
+# Full KF6 version (e.g. 6.22.0)
%{!?_kf6_version: %global _kf6_version %{version}}
%bcond_without released
Name: kf6-kwindowsystem
-Version: 6.21.0
+Version: 6.22.0
Release: 0
Summary: KDE Access to window manager
License: LGPL-2.1-or-later
++++++ kwindowsystem-6.21.0.tar.xz -> kwindowsystem-6.22.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/kwindowsystem-6.21.0/CMakeLists.txt
new/kwindowsystem-6.22.0/CMakeLists.txt
--- old/kwindowsystem-6.21.0/CMakeLists.txt 2025-12-05 14:27:08.000000000
+0100
+++ new/kwindowsystem-6.22.0/CMakeLists.txt 2026-01-02 18:44:54.000000000
+0100
@@ -1,11 +1,11 @@
cmake_minimum_required(VERSION 3.16)
-set(KF_VERSION "6.21.0") # handled by release scripts
+set(KF_VERSION "6.22.0") # handled by release scripts
project(KWindowSystem VERSION ${KF_VERSION})
# ECM setup
include(FeatureSummary)
-find_package(ECM 6.21.0 NO_MODULE)
+find_package(ECM 6.22.0 NO_MODULE)
set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake
Modules." URL "https://commits.kde.org/extra-cmake-modules")
feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND
FATAL_ON_MISSING_REQUIRED_PACKAGES)
@@ -89,7 +89,7 @@
ecm_install_po_files_as_qm(poqm)
ecm_set_disabled_deprecation_versions(
- QT 6.10.0
+ QT 6.11.0
)
add_subdirectory(src)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/kwindowsystem-6.21.0/autotests/CMakeLists.txt
new/kwindowsystem-6.22.0/autotests/CMakeLists.txt
--- old/kwindowsystem-6.21.0/autotests/CMakeLists.txt 2025-12-05
14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/autotests/CMakeLists.txt 2026-01-02
18:44:54.000000000 +0100
@@ -6,6 +6,8 @@
include(ECMMarkAsTest)
include(ECMAddTests)
+set(ECM_TEST_NAME_PREFIX "kwindowsystem-")
+
find_package(Qt6 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Test Widgets)
add_subdirectory(helper)
@@ -18,7 +20,7 @@
list(APPEND libs XCB::XCB XCB::KEYSYMS XCB::ICCCM)
endif()
- ecm_add_test(${_testname}.cpp LINK_LIBRARIES ${libs} NAME_PREFIX
"kwindowsystem-" GUI)
+ ecm_add_test(${_testname}.cpp LINK_LIBRARIES ${libs} GUI)
endforeach(_testname)
endmacro(KWINDOWSYSTEM_UNIT_TESTS)
macro(KWINDOWSYSTEM_EXECUTABLE_TESTS)
@@ -56,4 +58,8 @@
)
endif()
-ecm_add_test(kwindowsystem_platform_wayland_test.cpp LINK_LIBRARIES
KF6::WindowSystem Qt6::Test TEST_NAME kwindowsystemplatformwaylandtest
NAME_PREFIX "kwindowsystem-" GUI)
+ecm_add_test(kwindowsystem_platform_wayland_test.cpp
+ LINK_LIBRARIES KF6::WindowSystem Qt6::Test
+ TEST_NAME kwindowsystemplatformwaylandtest
+ GUI
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/kwindowsystem-6.21.0/poqm/ga/kwindowsystem6_qt.po
new/kwindowsystem-6.22.0/poqm/ga/kwindowsystem6_qt.po
--- old/kwindowsystem-6.21.0/poqm/ga/kwindowsystem6_qt.po 2025-12-05
14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/poqm/ga/kwindowsystem6_qt.po 2026-01-02
18:44:54.000000000 +0100
@@ -4,26 +4,25 @@
# Sean V. Kelley <[email protected]>, 1999
# Séamus Ó Ciardhuáin <seoc at iolfree.ie>, 2003,2004
# Kevin Scannell <[email protected]>, 2004-2009
+# SPDX-FileCopyrightText: 2025 Charlotte <[email protected]>
msgid ""
msgstr ""
"Project-Id-Version: kdelibs4\n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
"POT-Creation-Date: 2014-03-23 01:50+0000\n"
-"PO-Revision-Date: 2004-12-14 09:11-0600\n"
-"Last-Translator: Kevin Scannell <[email protected]>\n"
+"PO-Revision-Date: 2025-12-18 21:43+0000\n"
+"Last-Translator: Charlotte <[email protected]>\n"
"Language-Team: Irish <[email protected]>\n"
"Language: ga\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n < 11 ? "
"3 : 4\n"
"X-Qt-Contexts: true\n"
#: kx11extras.cpp:994
-#, fuzzy, qt-format
-#| msgid "Desktop %1"
+#, qt-format
msgctxt "KWindowSystem|"
msgid "Desktop %1"
msgstr "Deasc %1"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/kwindowsystem-6.21.0/src/kwaylandextras.cpp
new/kwindowsystem-6.22.0/src/kwaylandextras.cpp
--- old/kwindowsystem-6.21.0/src/kwaylandextras.cpp 2025-12-05
14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/kwaylandextras.cpp 2026-01-02
18:44:54.000000000 +0100
@@ -97,4 +97,18 @@
return xdgActivationToken(window, lastInputSerial(window), appId);
}
+void KWaylandExtras::setXdgToplevelTag(QWindow *window, const QString &tag)
+{
+ if (auto dv4 = dynamic_cast<KWindowSystemPrivateV4
*>(KWindowSystem::d_func())) {
+ dv4->setXdgToplevelTag(window, tag);
+ }
+}
+
+void KWaylandExtras::setXdgToplevelDescription(QWindow *window, const QString
&description)
+{
+ if (auto dv4 = dynamic_cast<KWindowSystemPrivateV4
*>(KWindowSystem::d_func())) {
+ dv4->setXdgToplevelDescription(window, description);
+ }
+}
+
#include "moc_kwaylandextras.cpp"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/kwindowsystem-6.21.0/src/kwaylandextras.h
new/kwindowsystem-6.22.0/src/kwaylandextras.h
--- old/kwindowsystem-6.21.0/src/kwaylandextras.h 2025-12-05
14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/kwaylandextras.h 2026-01-02
18:44:54.000000000 +0100
@@ -86,6 +86,20 @@
*/
static QFuture<QString> xdgActivationToken(QWindow *window, const QString
&appId);
+ /*!
+ * Assigns the specified \a tag to the given \a window.
+ *
+ * \since 6.22
+ */
+ static void setXdgToplevelTag(QWindow *window, const QString &tag);
+
+ /*!
+ * Assigns the specified \a description to the given \a window.
+ *
+ * \since 6.22
+ */
+ static void setXdgToplevelDescription(QWindow *window, const QString
&description);
+
Q_SIGNALS:
#if KWINDOWSYSTEM_ENABLE_DEPRECATED_SINCE(6, 19)
/*!
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/kwindowsystem-6.21.0/src/kwindowsystem_p.h
new/kwindowsystem-6.22.0/src/kwindowsystem_p.h
--- old/kwindowsystem-6.21.0/src/kwindowsystem_p.h 2025-12-05
14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/kwindowsystem_p.h 2026-01-02
18:44:54.000000000 +0100
@@ -43,4 +43,11 @@
virtual QFuture<QString> xdgActivationToken(QWindow *window, uint32_t
serial, const QString &appId) = 0;
};
+class KWINDOWSYSTEM_EXPORT KWindowSystemPrivateV4 : public
KWindowSystemPrivateV3
+{
+public:
+ virtual void setXdgToplevelTag(QWindow *window, const QString &tag) = 0;
+ virtual void setXdgToplevelDescription(QWindow *window, const QString
&description) = 0;
+};
+
#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/kwindowsystem-6.21.0/src/platforms/wayland/CMakeLists.txt
new/kwindowsystem-6.22.0/src/platforms/wayland/CMakeLists.txt
--- old/kwindowsystem-6.21.0/src/platforms/wayland/CMakeLists.txt
2025-12-05 14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/platforms/wayland/CMakeLists.txt
2026-01-02 18:44:54.000000000 +0100
@@ -8,6 +8,7 @@
waylandxdgactivationv1.cpp
waylandxdgdialogv1.cpp
waylandxdgforeignv2.cpp
+ waylandxdgtopleveltagv1.cpp
plugin.h
windoweffects.h
windowshadow.h
@@ -25,6 +26,7 @@
${WaylandProtocols_DATADIR}/staging/xdg-activation/xdg-activation-v1.xml
${WaylandProtocols_DATADIR}/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml
${WaylandProtocols_DATADIR}/staging/xdg-dialog/xdg-dialog-v1.xml
+
${WaylandProtocols_DATADIR}/staging/xdg-toplevel-tag/xdg-toplevel-tag-v1.xml
${WaylandProtocols_DATADIR}/stable/xdg-shell/xdg-shell.xml
${PLASMA_WAYLAND_PROTOCOLS_DIR}/blur.xml
${PLASMA_WAYLAND_PROTOCOLS_DIR}/contrast.xml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/kwindowsystem-6.21.0/src/platforms/wayland/waylandxdgtopleveltagv1.cpp
new/kwindowsystem-6.22.0/src/platforms/wayland/waylandxdgtopleveltagv1.cpp
--- old/kwindowsystem-6.21.0/src/platforms/wayland/waylandxdgtopleveltagv1.cpp
1970-01-01 01:00:00.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/platforms/wayland/waylandxdgtopleveltagv1.cpp
2026-01-02 18:44:54.000000000 +0100
@@ -0,0 +1,30 @@
+/*
+ SPDX-FileCopyrightText: 2025 Vlad Zahorodnii <[email protected]>
+
+ SPDX-License-Identifier: LGPL-2.0-or-later
+*/
+
+#include "waylandxdgtopleveltagv1_p.h"
+
+#include <QGuiApplication>
+
+WaylandXdgToplevelTagManagerV1::WaylandXdgToplevelTagManagerV1()
+ : QWaylandClientExtensionTemplate<WaylandXdgToplevelTagManagerV1>(1)
+{
+ initialize();
+}
+
+WaylandXdgToplevelTagManagerV1::~WaylandXdgToplevelTagManagerV1()
+{
+ if (qGuiApp && isActive()) {
+ destroy();
+ }
+}
+
+WaylandXdgToplevelTagManagerV1 *WaylandXdgToplevelTagManagerV1::self()
+{
+ static WaylandXdgToplevelTagManagerV1 *instance = new
WaylandXdgToplevelTagManagerV1;
+ return instance;
+}
+
+#include "moc_waylandxdgtopleveltagv1_p.cpp"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/kwindowsystem-6.21.0/src/platforms/wayland/waylandxdgtopleveltagv1_p.h
new/kwindowsystem-6.22.0/src/platforms/wayland/waylandxdgtopleveltagv1_p.h
--- old/kwindowsystem-6.21.0/src/platforms/wayland/waylandxdgtopleveltagv1_p.h
1970-01-01 01:00:00.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/platforms/wayland/waylandxdgtopleveltagv1_p.h
2026-01-02 18:44:54.000000000 +0100
@@ -0,0 +1,24 @@
+/*
+ SPDX-FileCopyrightText: 2025 Vlad Zahorodnii <[email protected]>
+
+ SPDX-License-Identifier: LGPL-2.0-or-later
+*/
+
+#pragma once
+
+#include "qwayland-xdg-toplevel-tag-v1.h"
+
+#include <QtWaylandClient/QWaylandClientExtension>
+
+class WaylandXdgToplevelTagManagerV1 : public
QWaylandClientExtensionTemplate<WaylandXdgToplevelTagManagerV1>, public
QtWayland::xdg_toplevel_tag_manager_v1
+{
+ Q_OBJECT
+
+public:
+ ~WaylandXdgToplevelTagManagerV1() override;
+
+ static WaylandXdgToplevelTagManagerV1 *self();
+
+private:
+ WaylandXdgToplevelTagManagerV1();
+};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/kwindowsystem-6.21.0/src/platforms/wayland/windowsystem.cpp
new/kwindowsystem-6.22.0/src/platforms/wayland/windowsystem.cpp
--- old/kwindowsystem-6.21.0/src/platforms/wayland/windowsystem.cpp
2025-12-05 14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/platforms/wayland/windowsystem.cpp
2026-01-02 18:44:54.000000000 +0100
@@ -10,6 +10,7 @@
#include "waylandxdgactivationv1_p.h"
#include "waylandxdgdialogv1_p.h"
#include "waylandxdgforeignv2_p.h"
+#include "waylandxdgtopleveltagv1_p.h"
#include <KWaylandExtras>
#include <KWindowSystem>
@@ -31,6 +32,8 @@
constexpr const char
*c_kdeXdgForeignExportedProperty("_kde_xdg_foreign_exported_v2");
constexpr const char
*c_kdeXdgForeignImportedProperty("_kde_xdg_foreign_imported_v2");
constexpr const char
*c_kdeXdgForeignPendingHandleProperty("_kde_xdg_foreign_pending_handle");
+constexpr const char
*c_kdeXdgToplevelTagCookieName("_kde_xdg_toplevel_tag_cookie");
+constexpr const char
*c_kdeXdgToplevelDescriptionCookieName("_kde_xdg_toplevel_description_cookie");
constexpr const char *c_xdgActivationTokenEnv("XDG_ACTIVATION_TOKEN");
class WindowManagement : public
QWaylandClientExtensionTemplate<WindowManagement>, public
QtWayland::org_kde_plasma_window_management
@@ -303,4 +306,54 @@
return token->future();
}
+void WindowSystem::setXdgToplevelTag(QWindow *window, const QString &tag)
+{
+ Q_ASSERT(window);
+
+ window->create();
+ auto waylandWindow =
window->nativeInterface<QNativeInterface::Private::QWaylandWindow>();
+ if (!waylandWindow) {
+ return;
+ }
+
+ delete window->findChild<QObject *>(c_kdeXdgToplevelTagCookieName,
Qt::FindDirectChildrenOnly);
+
+ auto cookie = new QObject(window);
+ cookie->setObjectName(c_kdeXdgToplevelTagCookieName);
+
+ auto tryAssignTag = [waylandWindow, tag]() {
+ if (auto xdgToplevel = waylandWindow->surfaceRole<xdg_toplevel>()) {
+
WaylandXdgToplevelTagManagerV1::self()->set_toplevel_tag(xdgToplevel, tag);
+ }
+ };
+
+ tryAssignTag();
+ connect(waylandWindow,
&QNativeInterface::Private::QWaylandWindow::surfaceRoleCreated, cookie,
tryAssignTag);
+}
+
+void WindowSystem::setXdgToplevelDescription(QWindow *window, const QString
&description)
+{
+ Q_ASSERT(window);
+
+ window->create();
+ auto waylandWindow =
window->nativeInterface<QNativeInterface::Private::QWaylandWindow>();
+ if (!waylandWindow) {
+ return;
+ }
+
+ delete window->findChild<QObject *>(c_kdeXdgToplevelDescriptionCookieName,
Qt::FindDirectChildrenOnly);
+
+ auto cookie = new QObject(window);
+ cookie->setObjectName(c_kdeXdgToplevelDescriptionCookieName);
+
+ auto tryAssignDescription = [waylandWindow, description]() {
+ if (auto xdgToplevel = waylandWindow->surfaceRole<xdg_toplevel>()) {
+
WaylandXdgToplevelTagManagerV1::self()->set_toplevel_description(xdgToplevel,
description);
+ }
+ };
+
+ tryAssignDescription();
+ connect(waylandWindow,
&QNativeInterface::Private::QWaylandWindow::surfaceRoleCreated, cookie,
tryAssignDescription);
+}
+
#include "moc_windowsystem.cpp"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/kwindowsystem-6.21.0/src/platforms/wayland/windowsystem.h
new/kwindowsystem-6.22.0/src/platforms/wayland/windowsystem.h
--- old/kwindowsystem-6.21.0/src/platforms/wayland/windowsystem.h
2025-12-05 14:27:08.000000000 +0100
+++ new/kwindowsystem-6.22.0/src/platforms/wayland/windowsystem.h
2026-01-02 18:44:54.000000000 +0100
@@ -12,7 +12,7 @@
class WindowManagement;
-class WindowSystem : public QObject, public KWindowSystemPrivateV3
+class WindowSystem : public QObject, public KWindowSystemPrivateV4
{
Q_OBJECT
public:
@@ -30,6 +30,8 @@
void unexportWindow(QWindow *window) override;
void setMainWindow(QWindow *window, const QString &handle) override;
QFuture<QString> xdgActivationToken(QWindow *window, uint32_t serial,
const QString &appId) override;
+ void setXdgToplevelTag(QWindow *window, const QString &tag) override;
+ void setXdgToplevelDescription(QWindow *window, const QString
&description) override;
private:
static void doSetMainWindow(QWindow *window, const QString &handle);