Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package layer-shell-qt6 for openSUSE:Factory
checked in at 2025-10-22 12:12:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/layer-shell-qt6 (Old)
and /work/SRC/openSUSE:Factory/.layer-shell-qt6.new.18484 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "layer-shell-qt6"
Wed Oct 22 12:12:10 2025 rev:31 rq:1312767 version:6.5.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/layer-shell-qt6/layer-shell-qt6.changes
2025-10-13 17:27:49.832535541 +0200
+++
/work/SRC/openSUSE:Factory/.layer-shell-qt6.new.18484/layer-shell-qt6.changes
2025-10-22 12:13:08.687464068 +0200
@@ -1,0 +2,9 @@
+Thu Oct 16 18:13:07 UTC 2025 - Fabian Vogt <[email protected]>
+
+- Update to 6.5.0:
+ * New bugfix release
+ * For more details see https://kde.org/announcements/plasma/6/6.5.0
+- Changes since 6.4.91:
+ * Update version for new release 6.5.0
+
+-------------------------------------------------------------------
@@ -4,0 +14,23 @@
+
+-------------------------------------------------------------------
+Thu Oct 2 14:45:48 UTC 2025 - Fabian Vogt <[email protected]>
+
+- Update to 6.4.91:
+ * New bugfix release
+ * For more details see https://kde.org/announcements/plasma/6/6.4.91
+- Changes since 6.4.90:
+ * Update version for new release 6.4.91
+
+-------------------------------------------------------------------
+Tue Sep 23 06:39:07 UTC 2025 - Fabian Vogt <[email protected]>
+
+- Update to 6.4.90:
+ * New feature release
+ * For more details see https://kde.org/announcements/plasma/6/6.4.90
+- Changes since 6.4.5:
+ * Update version for new release 6.4.90
+ * Register anchors flags to QML
+ * Request activate on show
+ * When activating, also try token from XDG_ACTIVATION_TOKEN
+ * Port to declarative type registration (kde#507602)
+ * update version for new release
Old:
----
layer-shell-qt-6.4.5.tar.xz
layer-shell-qt-6.4.5.tar.xz.sig
New:
----
layer-shell-qt-6.5.0.tar.xz
layer-shell-qt-6.5.0.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ layer-shell-qt6.spec ++++++
--- /var/tmp/diff_new_pack.6eiryk/_old 2025-10-22 12:13:09.459496619 +0200
+++ /var/tmp/diff_new_pack.6eiryk/_new 2025-10-22 12:13:09.463496787 +0200
@@ -17,8 +17,8 @@
#
-%define kf6_version 6.14.0
-%define qt6_version 6.8.0
+%define kf6_version 6.18.0
+%define qt6_version 6.9.0
# Full Plasma 6 version (e.g. 6.0.0)
%{!?_plasma6_bugfix: %define _plasma6_bugfix %{version}}
@@ -27,14 +27,14 @@
%define rname layer-shell-qt
%bcond_without released
Name: layer-shell-qt6
-Version: 6.4.5
+Version: 6.5.0
Release: 0
Summary: wlr-layer-shell integration for Qt
License: LGPL-3.0-or-later
URL: https://www.kde.org
-Source:
https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz
+Source: %{rname}-%{version}.tar.xz
%if %{with released}
-Source1:
https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz.sig
+Source1: %{rname}-%{version}.tar.xz.sig
Source2: plasma.keyring
%endif
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
++++++ layer-shell-qt-6.4.5.tar.xz -> layer-shell-qt-6.5.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/CMakeLists.txt
new/layer-shell-qt-6.5.0/CMakeLists.txt
--- old/layer-shell-qt-6.4.5/CMakeLists.txt 2025-09-09 10:27:13.000000000
+0200
+++ new/layer-shell-qt-6.5.0/CMakeLists.txt 2025-10-16 11:07:07.000000000
+0200
@@ -4,13 +4,13 @@
cmake_minimum_required(VERSION 3.16)
project(layershellqt)
-set(PROJECT_VERSION "6.4.5")
+set(PROJECT_VERSION "6.5.0")
set(PROJECT_VERSION_MAJOR 6)
set(CMAKE_C_STANDARD 99)
-set(QT_MIN_VERSION "6.8.0")
-set(KF6_MIN_VERSION "6.14.0")
+set(QT_MIN_VERSION "6.9.0")
+set(KF6_MIN_VERSION "6.18.0")
set(KDE_COMPILERSETTINGS_LEVEL "5.82")
set(CMAKE_CXX_STANDARD 20)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/CMakeLists.txt
new/layer-shell-qt-6.5.0/src/CMakeLists.txt
--- old/layer-shell-qt-6.4.5/src/CMakeLists.txt 2025-09-09 10:27:13.000000000
+0200
+++ new/layer-shell-qt-6.5.0/src/CMakeLists.txt 2025-10-16 11:07:07.000000000
+0200
@@ -5,6 +5,8 @@
add_library(LayerShellQtInterface)
+qt6_extract_metatypes(LayerShellQtInterface)
+
if (Qt6_VERSION VERSION_GREATER_EQUAL "6.8.0")
set(private_code_option "PRIVATE_CODE")
endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/declarative/CMakeLists.txt
new/layer-shell-qt-6.5.0/src/declarative/CMakeLists.txt
--- old/layer-shell-qt-6.4.5/src/declarative/CMakeLists.txt 2025-09-09
10:27:13.000000000 +0200
+++ new/layer-shell-qt-6.5.0/src/declarative/CMakeLists.txt 2025-10-16
11:07:07.000000000 +0200
@@ -4,7 +4,8 @@
ecm_add_qml_module(LayerShellQtQml
URI "org.kde.layershell"
VERSION 1.0
- SOURCES layershellqtplugin.cpp)
+ SOURCES types.h types.cpp
+ GENERATE_PLUGIN_SOURCE)
target_link_libraries(LayerShellQtQml PRIVATE Qt::Qml LayerShellQtInterface)
-ecm_finalize_qml_module(LayerShellQtQml DESTINATION ${KDE_INSTALL_QMLDIR})
\ No newline at end of file
+ecm_finalize_qml_module(LayerShellQtQml DESTINATION ${KDE_INSTALL_QMLDIR})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/layer-shell-qt-6.4.5/src/declarative/layershellqtplugin.cpp
new/layer-shell-qt-6.5.0/src/declarative/layershellqtplugin.cpp
--- old/layer-shell-qt-6.4.5/src/declarative/layershellqtplugin.cpp
2025-09-09 10:27:13.000000000 +0200
+++ new/layer-shell-qt-6.5.0/src/declarative/layershellqtplugin.cpp
1970-01-01 01:00:00.000000000 +0100
@@ -1,51 +0,0 @@
-/*
- * SPDX-FileCopyrightText: 2023 Aleix Pol Gonzalez
<[email protected]>
- *
- * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR
LicenseRef-KDE-Accepted-LGPL
- */
-
-#include "../interfaces/window.h"
-#include <QQmlExtensionPlugin>
-#include <qqml.h>
-
-QML_DECLARE_TYPEINFO(LayerShellQt::Window, QML_HAS_ATTACHED_PROPERTIES)
-
-class ExtQMargins
-{
- QMargins m_margins;
- Q_GADGET
- Q_PROPERTY(int left READ left WRITE setLeft FINAL)
- Q_PROPERTY(int right READ right WRITE setRight FINAL)
- Q_PROPERTY(int top READ top WRITE setTop FINAL)
- Q_PROPERTY(int bottom READ bottom WRITE setBottom FINAL)
- QML_FOREIGN(QMargins)
- QML_EXTENDED(ExtQMargins)
-public:
- ExtQMargins(const QMargins &margins);
- int left() const { return m_margins.left(); }
- void setLeft(int left) { m_margins.setLeft(left); }
-
- int right() const { return m_margins.right(); }
- void setRight(int right) { m_margins.setRight(right); }
-
- int top() const { return m_margins.top(); }
- void setTop(int top) { m_margins.setTop(top); }
-
- int bottom() const { return m_margins.bottom(); }
- void setBottom(int bottom) { m_margins.setBottom(bottom); }
-};
-
-class Plugin : public QQmlExtensionPlugin
-{
- Q_PLUGIN_METADATA(IID "org.kde.layershellqt")
- Q_OBJECT
-public:
- void registerTypes(const char *uri) override
- {
- Q_ASSERT(QLatin1String(uri) == QLatin1String("org.kde.layershell"));
- qmlRegisterType<LayerShellQt::Window>(uri, 1, 0, "Window");
- qmlRegisterExtendedUncreatableType<QMargins, ExtQMargins>(uri, 1, 0,
"ExtQMargins", QStringLiteral("Only created from C++"));
- }
-};
-
-#include "layershellqtplugin.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/declarative/types.cpp
new/layer-shell-qt-6.5.0/src/declarative/types.cpp
--- old/layer-shell-qt-6.4.5/src/declarative/types.cpp 1970-01-01
01:00:00.000000000 +0100
+++ new/layer-shell-qt-6.5.0/src/declarative/types.cpp 2025-10-16
11:07:07.000000000 +0200
@@ -0,0 +1,49 @@
+/*
+ * SPDX-FileCopyrightText: 2023 Aleix Pol Gonzalez
<[email protected]>
+ *
+ * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR
LicenseRef-KDE-Accepted-LGPL
+ */
+
+#include "types.h"
+
+#if QT_VERSION < QT_VERSION_CHECK(6, 8, 1)
+int QQmlMarginsValueType::left() const
+{
+ return m.left();
+}
+
+int QQmlMarginsValueType::top() const
+{
+ return m.top();
+}
+
+int QQmlMarginsValueType::right() const
+{
+ return m.right();
+}
+
+int QQmlMarginsValueType::bottom() const
+{
+ return m.bottom();
+}
+
+void QQmlMarginsValueType::setLeft(int left)
+{
+ m.setLeft(left);
+}
+
+void QQmlMarginsValueType::setTop(int top)
+{
+ m.setTop(top);
+}
+
+void QQmlMarginsValueType::setRight(int right)
+{
+ m.setRight(right);
+}
+
+void QQmlMarginsValueType::setBottom(int bottom)
+{
+ m.setBottom(bottom);
+}
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/declarative/types.h
new/layer-shell-qt-6.5.0/src/declarative/types.h
--- old/layer-shell-qt-6.4.5/src/declarative/types.h 1970-01-01
01:00:00.000000000 +0100
+++ new/layer-shell-qt-6.5.0/src/declarative/types.h 2025-10-16
11:07:07.000000000 +0200
@@ -0,0 +1,55 @@
+/*
+ * SPDX-FileCopyrightText: 2023 Aleix Pol Gonzalez
<[email protected]>
+ *
+ * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR
LicenseRef-KDE-Accepted-LGPL
+ */
+
+#include "../interfaces/window.h"
+#include <qqml.h>
+
+QML_DECLARE_TYPEINFO(LayerShellQt::Window, QML_HAS_ATTACHED_PROPERTIES)
+
+class WindowForeign
+{
+ Q_GADGET
+ QML_NAMED_ELEMENT(Window)
+ QML_FOREIGN(LayerShellQt::Window)
+ QML_UNCREATABLE("")
+ QML_ATTACHED(LayerShellQt::Window)
+};
+
+// available upstream since
https://invent.kde.org/qt/qt/qtdeclarative/-/commit/a398101f715bfc447aa889fc9c58b13bfe75ab47
+#if QT_VERSION < QT_VERSION_CHECK(6, 8, 1)
+struct Q_QML_EXPORT QQmlMarginsValueType {
+ QMargins m;
+ Q_PROPERTY(int left READ left WRITE setLeft FINAL)
+ Q_PROPERTY(int right READ right WRITE setRight FINAL)
+ Q_PROPERTY(int top READ top WRITE setTop FINAL)
+ Q_PROPERTY(int bottom READ bottom WRITE setBottom FINAL)
+ Q_GADGET
+ QML_ANONYMOUS
+ QML_FOREIGN(QMargins)
+ QML_EXTENDED(QQmlMarginsValueType)
+ QML_STRUCTURED_VALUE
+
+public:
+ QQmlMarginsValueType() = default;
+ Q_INVOKABLE QQmlMarginsValueType(const QMarginsF &margins)
+ : m(margins.toMargins())
+ {
+ }
+ int left() const;
+ int right() const;
+ int top() const;
+ int bottom() const;
+ void setLeft(int);
+ void setRight(int);
+ void setTop(int);
+ void setBottom(int);
+
+ operator QMargins() const
+ {
+ return m;
+ }
+};
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/interfaces/window.cpp
new/layer-shell-qt-6.5.0/src/interfaces/window.cpp
--- old/layer-shell-qt-6.4.5/src/interfaces/window.cpp 2025-09-09
10:27:13.000000000 +0200
+++ new/layer-shell-qt-6.5.0/src/interfaces/window.cpp 2025-10-16
11:07:07.000000000 +0200
@@ -35,6 +35,7 @@
QSize desiredSize = QSize(0, 0);
Window::ScreenConfiguration screenConfiguration =
Window::ScreenFromQWindow;
bool closeOnDismissed = true;
+ bool activateOnShow = true;
};
static QMap<QWindow *, Window *> s_map;
@@ -170,6 +171,16 @@
d->closeOnDismissed = close;
}
+bool Window::activateOnShow() const
+{
+ return d->activateOnShow;
+}
+
+void Window::setActivateOnShow(bool activateOnShow)
+{
+ d->activateOnShow = activateOnShow;
+}
+
Window::Window(QWindow *window)
: QObject(window)
, d(new WindowPrivate(window))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/interfaces/window.h
new/layer-shell-qt-6.5.0/src/interfaces/window.h
--- old/layer-shell-qt-6.4.5/src/interfaces/window.h 2025-09-09
10:27:13.000000000 +0200
+++ new/layer-shell-qt-6.5.0/src/interfaces/window.h 2025-10-16
11:07:07.000000000 +0200
@@ -28,6 +28,7 @@
Q_PROPERTY(Layer layer READ layer WRITE setLayer NOTIFY layerChanged)
Q_PROPERTY(KeyboardInteractivity keyboardInteractivity READ
keyboardInteractivity WRITE setKeyboardInteractivity NOTIFY
keyboardInteractivityChanged)
Q_PROPERTY(ScreenConfiguration screenConfiguration READ
screenConfiguration WRITE setScreenConfiguration)
+ Q_PROPERTY(bool activateOnShow READ activateOnShow WRITE setActivateOnShow)
public:
~Window() override;
@@ -39,8 +40,8 @@
AnchorLeft = 4, ///< The left edge of the anchor rectangle
AnchorRight = 8, ///< The right edge of the anchor rectangle
};
- Q_ENUM(Anchor);
Q_DECLARE_FLAGS(Anchors, Anchor)
+ Q_FLAG(Anchors)
/**
* This enum type is used to specify the layer where a surface can be put
in.
@@ -118,6 +119,18 @@
bool closeOnDismissed() const;
/**
+ * Whether the window should requestActivate on show.
+ *
+ * Normally, you want this enabled but in case of e.g. a desktop window,
this can be disabled.
+ *
+ * It does nothing when KeyboardInteractivity is KeyboardInteractivityNone.
+ *
+ * The default is true.
+ */
+ void setActivateOnShow(bool activateOnShow);
+ bool activateOnShow() const;
+
+ /**
* Gets the LayerShell Window for a given Qt Window
* Ownership is not transferred
*/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/qwaylandlayersurface.cpp
new/layer-shell-qt-6.5.0/src/qwaylandlayersurface.cpp
--- old/layer-shell-qt-6.4.5/src/qwaylandlayersurface.cpp 2025-09-09
10:27:13.000000000 +0200
+++ new/layer-shell-qt-6.5.0/src/qwaylandlayersurface.cpp 2025-10-16
11:07:07.000000000 +0200
@@ -230,6 +230,23 @@
return false;
}
+bool QWaylandLayerSurface::requestActivateOnShow()
+{
+ if (!m_interface->activateOnShow()) {
+ return false;
+ }
+
+ if (m_interface->keyboardInteractivity() ==
Window::KeyboardInteractivityNone) {
+ return false;
+ }
+
+ if (m_window->window()->property("_q_showWithoutActivating").toBool()) {
+ return false;
+ }
+
+ return requestActivate();
+}
+
void QWaylandLayerSurface::setXdgActivationToken(const QString &token)
{
m_activationToken = token;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/src/qwaylandlayersurface_p.h
new/layer-shell-qt-6.5.0/src/qwaylandlayersurface_p.h
--- old/layer-shell-qt-6.4.5/src/qwaylandlayersurface_p.h 2025-09-09
10:27:13.000000000 +0200
+++ new/layer-shell-qt-6.5.0/src/qwaylandlayersurface_p.h 2025-10-16
11:07:07.000000000 +0200
@@ -50,6 +50,7 @@
#endif
bool requestActivate() override;
+ bool requestActivateOnShow() override;
void setXdgActivationToken(const QString &token) override;
void requestXdgActivationToken(quint32 serial) override;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/layer-shell-qt-6.4.5/tests/main.cpp
new/layer-shell-qt-6.5.0/tests/main.cpp
--- old/layer-shell-qt-6.4.5/tests/main.cpp 2025-09-09 10:27:13.000000000
+0200
+++ new/layer-shell-qt-6.5.0/tests/main.cpp 2025-10-16 11:07:07.000000000
+0200
@@ -53,7 +53,7 @@
QGuiApplication app(argc, argv);
const auto layerMetaEnum = QMetaEnum::fromType<Window::Layer>();
- const auto anchorMetaEnum = QMetaEnum::fromType<Window::Anchor>();
+ const auto anchorMetaEnum = QMetaEnum::fromType<Window::Anchors>();
QCommandLineParser parser;
QCommandLineOption marginsOption(QStringLiteral("margins"),
QStringLiteral("Window margins"), QStringLiteral("pixels"),
QStringLiteral("0"));