Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package layer-shell-qt for openSUSE:Factory 
checked in at 2022-06-13 13:02:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/layer-shell-qt (Old)
 and      /work/SRC/openSUSE:Factory/.layer-shell-qt.new.1548 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "layer-shell-qt"

Mon Jun 13 13:02:19 2022 rev:19 rq:981914 version:5.25.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/layer-shell-qt/layer-shell-qt.changes    
2022-05-05 23:05:11.489467281 +0200
+++ /work/SRC/openSUSE:Factory/.layer-shell-qt.new.1548/layer-shell-qt.changes  
2022-06-13 13:02:34.573120844 +0200
@@ -1,0 +2,22 @@
+Thu Jun  9 11:15:01 UTC 2022 - Fabian Vogt <fab...@ritter-vogt.de>
+
+- Update to 5.25.0
+  * New bugfix release
+  * For more details please see:
+  * https://kde.org/announcements/plasma/5/5.25.0
+- Changes since 5.24.90:
+  * Mark required deps as required (kde#454912)
+
+-------------------------------------------------------------------
+Thu May 19 19:45:55 UTC 2022 - Fabian Vogt <fab...@ritter-vogt.de>
+
+- Update to 5.24.90
+  * New feature release
+  * For more details please see:
+  * https://kde.org/announcements/plasma/5/5.24.90
+- Changes since 5.24.5:
+  * Minor api doc improvement for api.kde.org
+  * Build with Qt6
+  * Add desiredScreen property to LayerShellQt::Window
+
+-------------------------------------------------------------------

Old:
----
  layer-shell-qt-5.24.5.tar.xz
  layer-shell-qt-5.24.5.tar.xz.sig

New:
----
  layer-shell-qt-5.25.0.tar.xz
  layer-shell-qt-5.25.0.tar.xz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ layer-shell-qt.spec ++++++
--- /var/tmp/diff_new_pack.yzq1ro/_old  2022-06-13 13:02:35.129121621 +0200
+++ /var/tmp/diff_new_pack.yzq1ro/_new  2022-06-13 13:02:35.133121626 +0200
@@ -24,15 +24,15 @@
 
 %bcond_without released
 Name:           layer-shell-qt
-Version:        5.24.5
+Version:        5.25.0
 Release:        0
 Summary:        wlr-layer-shell integration for Qt
 License:        LGPL-3.0-or-later
 Group:          Development/Libraries/KDE
 URL:            https://www.kde.org
-Source:         
https://download.kde.org/stable/plasma/%{version}/layer-shell-qt-%{version}.tar.xz
+Source:         layer-shell-qt-%{version}.tar.xz
 %if %{with released}
-Source1:        
https://download.kde.org/stable/plasma/%{version}/layer-shell-qt-%{version}.tar.xz.sig
+Source1:        layer-shell-qt-%{version}.tar.xz.sig
 Source2:        plasma.keyring
 %endif
 BuildRequires:  cmake >= 3.16

++++++ layer-shell-qt-5.24.5.tar.xz -> layer-shell-qt-5.25.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/.gitlab-ci.yml 
new/layer-shell-qt-5.25.0/.gitlab-ci.yml
--- old/layer-shell-qt-5.24.5/.gitlab-ci.yml    2022-05-03 12:13:20.000000000 
+0200
+++ new/layer-shell-qt-5.25.0/.gitlab-ci.yml    2022-06-09 11:11:37.000000000 
+0200
@@ -4,3 +4,4 @@
 include:
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux.yml
   - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/freebsd.yml
+  - 
https://invent.kde.org/sysadmin/ci-utilities/raw/master/gitlab-templates/linux-qt6.yml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/CMakeLists.txt 
new/layer-shell-qt-5.25.0/CMakeLists.txt
--- old/layer-shell-qt-5.24.5/CMakeLists.txt    2022-05-03 12:13:20.000000000 
+0200
+++ new/layer-shell-qt-5.25.0/CMakeLists.txt    2022-06-09 11:11:37.000000000 
+0200
@@ -4,20 +4,18 @@
 cmake_minimum_required(VERSION 3.16)
 
 project(layershellqt)
-set(PROJECT_VERSION "5.24.5")
+set(PROJECT_VERSION "5.25.0")
 set(PROJECT_VERSION_MAJOR 5)
 
 set(CMAKE_C_STANDARD 99)
 
 set(QT_MIN_VERSION "5.15.0")
-set(KF5_MIN_VERSION "5.86")
+set(KF5_MIN_VERSION "5.91")
 set(KDE_COMPILERSETTINGS_LEVEL "5.82")
 
 set(CMAKE_CXX_STANDARD 17)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
 
-find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS WaylandClient 
Qml)
-find_package(Qt5XkbCommonSupport REQUIRED PRIVATE)
 find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE)
 set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${ECM_MODULE_PATH})
 
@@ -32,10 +30,14 @@
 include(KDEClangFormat)
 include(ECMQtDeclareLoggingCategory)
 
-find_package(WaylandScanner)
-find_package(QtWaylandScanner)
+find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} CONFIG REQUIRED 
COMPONENTS WaylandClient Qml)
+if (QT_MAJOR_VERSION EQUAL "5")
+    find_package(Qt5XkbCommonSupport REQUIRED PRIVATE)
+    find_package(QtWaylandScanner REQUIRED)
+endif()
+find_package(WaylandScanner REQUIRED)
 find_package(Wayland 1.3 COMPONENTS Client Server)
-find_package(WaylandProtocols)
+find_package(WaylandProtocols REQUIRED)
 find_package(PkgConfig REQUIRED)
 
 pkg_check_modules(XKBCOMMON xkbcommon REQUIRED IMPORTED_TARGET)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/LayerShellQtConfig.cmake.in 
new/layer-shell-qt-5.25.0/LayerShellQtConfig.cmake.in
--- old/layer-shell-qt-5.24.5/LayerShellQtConfig.cmake.in       2022-05-03 
12:13:20.000000000 +0200
+++ new/layer-shell-qt-5.25.0/LayerShellQtConfig.cmake.in       2022-06-09 
11:11:37.000000000 +0200
@@ -4,6 +4,6 @@
 @PACKAGE_INIT@
 
 include(CMakeFindDependencyMacro)
-find_dependency(Qt5Gui "@QT_MIN_VERSION@")
+find_dependency(Qt@QT_MAJOR_VERSION@Gui "@QT_MIN_VERSION@")
 
 include("${CMAKE_CURRENT_LIST_DIR}/LayerShellQtTargets.cmake")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/metainfo.yaml 
new/layer-shell-qt-5.25.0/metainfo.yaml
--- old/layer-shell-qt-5.24.5/metainfo.yaml     1970-01-01 01:00:00.000000000 
+0100
+++ new/layer-shell-qt-5.25.0/metainfo.yaml     2022-06-09 11:11:37.000000000 
+0200
@@ -0,0 +1,14 @@
+maintainer:
+- vladz
+description: Layer Shell Qt
+platforms:
+    - name: Linux
+    - name: FreeBSD
+portingAid: false
+deprecated: false
+release: true
+
+group: Plasma
+public_lib: true
+public_source_dirs:
+    - src/interfaces
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/src/CMakeLists.txt 
new/layer-shell-qt-5.25.0/src/CMakeLists.txt
--- old/layer-shell-qt-5.24.5/src/CMakeLists.txt        2022-05-03 
12:13:20.000000000 +0200
+++ new/layer-shell-qt-5.25.0/src/CMakeLists.txt        2022-06-09 
11:11:37.000000000 +0200
@@ -3,8 +3,16 @@
 
 remove_definitions(-DQT_NO_SIGNALS_SLOTS_KEYWORDS)
 
-ecm_add_qtwayland_client_protocol(LAYER_SHELL_SOURCES PROTOCOL 
${WaylandProtocols_DATADIR}/stable/xdg-shell/xdg-shell.xml BASENAME xdg-shell)
-ecm_add_qtwayland_client_protocol(LAYER_SHELL_SOURCES PROTOCOL 
wlr-layer-shell-unstable-v1.xml BASENAME wlr-layer-shell-unstable-v1)
+add_library(LayerShellQtInterface)
+if (QT_MAJOR_VERSION EQUAL "5")
+    ecm_add_qtwayland_client_protocol(LAYER_SHELL_SOURCES PROTOCOL 
${WaylandProtocols_DATADIR}/stable/xdg-shell/xdg-shell.xml BASENAME xdg-shell)
+    ecm_add_qtwayland_client_protocol(LAYER_SHELL_SOURCES PROTOCOL 
wlr-layer-shell-unstable-v1.xml BASENAME wlr-layer-shell-unstable-v1)
+else()
+    qt6_generate_wayland_protocol_client_sources(LayerShellQtInterface FILES
+        ${WaylandProtocols_DATADIR}/stable/xdg-shell/xdg-shell.xml
+        ${CMAKE_CURRENT_SOURCE_DIR}/wlr-layer-shell-unstable-v1.xml
+    )
+endif()
 
 ecm_qt_declare_logging_category(LAYER_SHELL_SOURCES
     HEADER
@@ -15,8 +23,11 @@
         layershellqt
 )
 
-add_library(LayerShellQtInterface SHARED qwaylandlayersurface.cpp 
interfaces/window.cpp interfaces/shell.cpp qwaylandlayershellintegration.cpp 
qwaylandlayershell.cpp ${LAYER_SHELL_SOURCES})
-target_link_libraries(LayerShellQtInterface PRIVATE Qt::Gui 
Qt::WaylandClientPrivate Qt::XkbCommonSupportPrivate Wayland::Client 
PkgConfig::XKBCOMMON)
+target_sources(LayerShellQtInterface PRIVATE qwaylandlayersurface.cpp 
interfaces/window.cpp interfaces/shell.cpp qwaylandlayershellintegration.cpp 
qwaylandlayershell.cpp ${LAYER_SHELL_SOURCES})
+target_link_libraries(LayerShellQtInterface PRIVATE Qt::Gui 
Qt::WaylandClientPrivate Wayland::Client PkgConfig::XKBCOMMON)
+if (TARGET Qt::XkbCommonSupportPrivate)
+    target_link_libraries(LayerShellQtInterface PRIVATE 
Qt::XkbCommonSupportPrivate)
+endif()
 target_include_directories(LayerShellQtInterface PUBLIC 
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/LayerShellQt>"
                                               INTERFACE 
"$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR}/>"
 )
@@ -27,7 +38,10 @@
 )
 
 add_library(layer-shell SHARED qwaylandlayershellintegrationplugin.cpp)
-target_link_libraries(layer-shell LayerShellQtInterface Qt::WaylandClient 
Qt::WaylandClientPrivate Qt::XkbCommonSupportPrivate Wayland::Client 
PkgConfig::XKBCOMMON)
+target_link_libraries(layer-shell LayerShellQtInterface Qt::WaylandClient 
Qt::WaylandClientPrivate Wayland::Client PkgConfig::XKBCOMMON)
+if (TARGET Qt::XkbCommonSupportPrivate)
+    target_link_libraries(layer-shell Qt::XkbCommonSupportPrivate)
+endif()
 
 ecm_generate_headers(LayerShellQt_HEADERS
     HEADER_NAMES
@@ -45,7 +59,7 @@
 )
 
 install(TARGETS layer-shell
-        LIBRARY DESTINATION ${QT_PLUGIN_INSTALL_DIR}/wayland-shell-integration)
+        LIBRARY DESTINATION 
${KDE_INSTALL_QTPLUGINDIR}/wayland-shell-integration)
 
 install(TARGETS LayerShellQtInterface EXPORT LayerShellQtTargets 
${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/src/interfaces/window.cpp 
new/layer-shell-qt-5.25.0/src/interfaces/window.cpp
--- old/layer-shell-qt-5.24.5/src/interfaces/window.cpp 2022-05-03 
12:13:20.000000000 +0200
+++ new/layer-shell-qt-5.25.0/src/interfaces/window.cpp 2022-06-09 
11:11:37.000000000 +0200
@@ -28,6 +28,7 @@
     Window::Layer layer = Window::LayerTop;
     QMargins margins;
     QWaylandLayerSurface *getSurface() const;
+    QPointer<QScreen> desiredOutput;
 };
 
 static QMap<QWindow *, Window *> s_map;
@@ -113,6 +114,16 @@
     return d->layer;
 }
 
+QScreen *Window::desiredOutput() const
+{
+    return d->desiredOutput;
+}
+
+void Window::setDesiredOutput(QScreen *output)
+{
+    d->desiredOutput = output;
+}
+
 Window::Window(QWindow *window)
     : QObject(window)
     , d(new WindowPrivate(window))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/src/interfaces/window.h 
new/layer-shell-qt-5.25.0/src/interfaces/window.h
--- old/layer-shell-qt-5.24.5/src/interfaces/window.h   2022-05-03 
12:13:20.000000000 +0200
+++ new/layer-shell-qt-5.25.0/src/interfaces/window.h   2022-06-09 
11:11:37.000000000 +0200
@@ -9,6 +9,7 @@
 #define LAYERSHELLQTWINDOW_H
 
 #include <QObject>
+#include <QScreen>
 #include <QWindow>
 
 #include "layershellqt_export.h"
@@ -24,10 +25,10 @@
     ~Window() override;
 
     enum Anchor {
-        AnchorTop = 1, // the top edge of the anchor rectangle
-        AnchorBottom = 2, // the bottom edge of the anchor rectangle
-        AnchorLeft = 4, // the left edge of the anchor rectangle
-        AnchorRight = 8, // the right edge of the anchor rectangle
+        AnchorTop = 1, ///< The top edge of the anchor rectangle
+        AnchorBottom = 2, ///< The bottom edge of the anchor rectangle
+        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)
@@ -69,6 +70,14 @@
     Layer layer() const;
 
     /**
+     * If set, the compositor will try to put the window on the given screen.
+     * If its not set, then the compositor will decide where to put the window.
+     * Under normal circumstances, this should be the active output.
+     */
+    void setDesiredOutput(QScreen *output);
+    QScreen *desiredOutput() const;
+
+    /**
      * Sets a string based identifier for this window.
      * This may be used by a compositor to determine stacking
      * order within a given layer.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/layer-shell-qt-5.24.5/src/qwaylandlayershellintegration.cpp 
new/layer-shell-qt-5.25.0/src/qwaylandlayershellintegration.cpp
--- old/layer-shell-qt-5.24.5/src/qwaylandlayershellintegration.cpp     
2022-05-03 12:13:20.000000000 +0200
+++ new/layer-shell-qt-5.25.0/src/qwaylandlayershellintegration.cpp     
2022-06-09 11:11:37.000000000 +0200
@@ -24,7 +24,9 @@
 
 bool 
QWaylandLayerShellIntegration::initialize(QtWaylandClient::QWaylandDisplay 
*display)
 {
+#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
     QWaylandShellIntegration::initialize(display);
+#endif
     display->addRegistryListener(registryLayer, this);
     return m_layerShell != nullptr;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/layer-shell-qt-5.24.5/src/qwaylandlayersurface.cpp 
new/layer-shell-qt-5.25.0/src/qwaylandlayersurface.cpp
--- old/layer-shell-qt-5.24.5/src/qwaylandlayersurface.cpp      2022-05-03 
12:13:20.000000000 +0200
+++ new/layer-shell-qt-5.25.0/src/qwaylandlayersurface.cpp      2022-06-09 
11:11:37.000000000 +0200
@@ -6,9 +6,9 @@
  */
 
 #include "interfaces/shell.h"
+#include "layershellqt_logging.h"
 #include "qwaylandlayershell_p.h"
 #include "qwaylandlayersurface_p.h"
-#include "layershellqt_logging.h"
 
 #include <QtWaylandClient/private/qwaylandscreen_p.h>
 #include <QtWaylandClient/private/qwaylandsurface_p.h>
@@ -23,14 +23,19 @@
     LayerShellQt::Window *interface = Window::get(window->window());
     Q_ASSERT(interface);
 
-    // Qt will always assign a screen to a window, but if the compositor has 
no screens available a dummy QScreen object is created
-    // this will not cast to a QWaylandScreen
-    QtWaylandClient::QWaylandScreen *screen = window->waylandScreen();
-    if (screen->isPlaceholder()) {
-        qCWarning(LAYERSHELLQT) << "Creating a layer shell for placeholder 
screen. This will be positioned incorrectly";
+    wl_output *output = nullptr;
+    QScreen *screen = interface->desiredOutput();
+    if (screen) {
+        auto waylandScreen = dynamic_cast<QtWaylandClient::QWaylandScreen 
*>(screen->handle());
+        // Qt will always assign a screen to a window, but if the compositor 
has no screens available a dummy QScreen object is created
+        // this will not cast to a QWaylandScreen
+        if (!waylandScreen) {
+            qCWarning(LAYERSHELLQT) << "Creating a layer shell for placeholder 
screen. This will be positioned incorrectly";
+        } else {
+            output = waylandScreen->output();
+        }
     }
-
-    init(shell->get_layer_surface(window->waylandSurface()->object(), 
screen->isPlaceholder() ? nullptr : screen->output(), interface->layer(), 
interface->scope()));
+    init(shell->get_layer_surface(window->waylandSurface()->object(), output, 
interface->layer(), interface->scope()));
 
     Window::Anchors anchors = interface->anchors();
 

Reply via email to