Hello community, here is the log from the commit of package kwin5 for openSUSE:Factory checked in at 2020-10-13 15:30:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kwin5 (Old) and /work/SRC/openSUSE:Factory/.kwin5.new.3486 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kwin5" Tue Oct 13 15:30:57 2020 rev:127 rq:841337 version:5.20.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kwin5/kwin5.changes 2020-09-04 11:07:33.806893576 +0200 +++ /work/SRC/openSUSE:Factory/.kwin5.new.3486/kwin5.changes 2020-10-13 15:31:22.060911619 +0200 @@ -1,0 +2,53 @@ +Thu Oct 8 16:55:22 UTC 2020 - Fabian Vogt <[email protected]> + +- Update to 5.20.0 + * New bugfix release + * For more details please see: + * https://kde.org/announcements/plasma-5.20.0 +- Changes since 5.19.90: + * wayland: Fix initialization of dmabuf textures + * 3rdparty: Synchronize xcursor.{c,h} + * Fix kwin_rules_dialog not showing translated strings + * scripting: Fix initialization of WorkspaceWrapper + * scripting: Make ClientFilterModel work for Wayland windows + * scripting: Properly initialize clients model for Wayland windows + * scene: prefer calling mapToGlobal just once + * Place internal osd windows according to placement policies (kde#400675) + * Properly test internal window flags + * Use better window placement heuristics for internal clients + * screencast: Replace EGLFence with a glFinish() + * Allow calling setFrameGeometry() while the client is being resized (kde#426988) + * Fix ghost shadows left by context menus (kde#425294) + * Schedule workspace repaint for destroyed clients + * x11: Make removal of X11 event filters safe (kde#423319) + * Enable shadow protocol support for all Wayland clients + * screencast: Ensure that there is current OpenGL context when recording a window (kde#425869) + * Expose KWIN_XWL logging category to kdebugsettings + * Revert "[effects/slidingpopups] Start the animation on only windowAdded or windowClosed" (kde#426686) + * Fix invalidation of cached x stacking order in wayland only mode + * Fix for PlasmaSurfaceTest broken in a3b50500 + * Fix for potential use-after-free introduced in a3b50500 + * effects/flipswitch: Port away from deprecated QTimeline curve shape prop + * effects/cubeslide: Port away from deprecated QTimeline curve shape prop + * effects/desktopgrid: Port away from deprecated QTimeline curve shape prop + * Fix use-after-free when the user hovers over an auto-hide plasma panel in wayland... + * libkwineffects: Bump API version + +------------------------------------------------------------------- +Thu Sep 17 20:03:02 UTC 2020 - Fabian Vogt <[email protected]> + +- Update to 5.19.90 + * New bugfix release + * For more details please see: + * https://kde.org/announcements/plasma-5.19.90 +- Too many changes to list here + +------------------------------------------------------------------- +Thu Sep 17 19:26:45 UTC 2020 - Fabian Vogt <[email protected]> + +- Refresh patches: + * 0001-Bypass-wayland-interface-blacklisting.patch + * 0001-Revert-Make-WindowSwitching-Alt-Tab-the-default-left.patch + * 0001-Use-Xauthority-for-Xwayland.patch + +------------------------------------------------------------------- Old: ---- kwin-5.19.5.tar.xz kwin-5.19.5.tar.xz.sig New: ---- kwin-5.20.0.tar.xz kwin-5.20.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kwin5.spec ++++++ --- /var/tmp/diff_new_pack.Kr87q6/_old 2020-10-13 15:31:24.180912519 +0200 +++ /var/tmp/diff_new_pack.Kr87q6/_new 2020-10-13 15:31:24.188912523 +0200 @@ -21,7 +21,7 @@ %global wayland (0%{?suse_version} >= 1330) %bcond_without lang Name: kwin5 -Version: 5.19.5 +Version: 5.20.0 Release: 0 # Full Plasma 5 version (e.g. 5.8.95) %{!?_plasma5_bugfix: %define _plasma5_bugfix %{version}} @@ -31,9 +31,9 @@ License: GPL-2.0-or-later AND GPL-3.0-or-later Group: System/GUI/KDE URL: http://www.kde.org -Source: https://download.kde.org/stable/plasma/%{version}/kwin-%{version}.tar.xz +Source: kwin-%{version}.tar.xz %if %{with lang} -Source1: https://download.kde.org/stable/plasma/%{version}/kwin-%{version}.tar.xz.sig +Source1: kwin-%{version}.tar.xz.sig Source2: plasma.keyring %endif # PATCH-FIX-OPENSUSE @@ -54,6 +54,7 @@ BuildRequires: libcap-progs BuildRequires: libepoxy-devel BuildRequires: pkgconfig +BuildRequires: systemd-rpm-macros BuildRequires: xz BuildRequires: cmake(Breeze) >= 5.9.0 BuildRequires: cmake(KDecoration2) >= %{_plasma5_version} @@ -83,7 +84,7 @@ BuildRequires: cmake(KF5WindowSystem) >= %{kf5_version} BuildRequires: cmake(KF5XmlGui) >= %{kf5_version} BuildRequires: cmake(KScreenLocker) >= %{_plasma5_version} -BuildRequires: cmake(KWaylandServer) +BuildRequires: cmake(KWaylandServer) >= %{_plasma5_version} BuildRequires: cmake(Qt5Concurrent) >= %{qt5_version} BuildRequires: cmake(Qt5Core) >= %{qt5_version} BuildRequires: cmake(Qt5DBus) >= %{qt5_version} @@ -125,6 +126,8 @@ BuildRequires: pkgconfig(libinput) >= 1.9 BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(wayland-egl) +# Don't use pkgconfig here as that would cause unresolvables on 0.1 -> 0.2 -> 0.3 bumps +BuildRequires: pipewire-devel # xorg-x11-server-wayland is required by plasma5-session-wayland and kwin5 can run with just X11 Recommends: xorg-x11-server-wayland %endif @@ -184,13 +187,20 @@ %fdupes %{buildroot}%{_kf5_libdir} %fdupes %{buildroot}%{_datadir} +%preun +%systemd_user_preun plasma-kwin_wayland.service +%systemd_user_preun plasma-kwin_x11.service + %post /sbin/ldconfig %if %{wayland} %set_permissions %{_kf5_bindir}/kwin_wayland %endif +%systemd_user_post plasma-kwin_wayland.service plasma-kwin_x11.service -%postun -p /sbin/ldconfig +%postun +/sbin/ldconfig +%systemd_user_postun plasma-kwin_wayland.service plasma-kwin_x11.service %if %{wayland} %verifyscript @@ -198,14 +208,13 @@ %endif %files -%license COPYING* +%license LICENSES/* %if %{wayland} %verify(not caps) %{_kf5_bindir}/kwin_wayland %endif %{_kf5_bindir}/kwin_x11 %{_kf5_debugdir}/org_kde_kwin.categories %{_kf5_knsrcfilesdir}/*.knsrc - %{_kf5_libdir}/kconf_update_bin/ %{_kf5_libdir}/libexec/ %{_kf5_libdir}/libkwin.so.* @@ -228,8 +237,8 @@ %dir %{_kf5_plugindir}/kf5/ %dir %{_kf5_plugindir}/kf5/org.kde.kidletime.platforms/ %{_kf5_plugindir}/kf5/org.kde.kidletime.platforms/KF5IdleTimeKWinWaylandPrivatePlugin.so -%dir %{_kf5_plugindir}/kf5/org.kde.kwindowsystem.platforms/ -%{_kf5_plugindir}/kf5/org.kde.kwindowsystem.platforms/KF5WindowSystemKWinPrivatePlugin.so +%dir %{_kf5_plugindir}/kf5/kwindowsystem/ +%{_kf5_plugindir}/kf5/kwindowsystem/KF5WindowSystemKWinPrivatePlugin.so %dir %{_kf5_plugindir}/kpackage/ %dir %{_kf5_plugindir}/kpackage/packagestructure/ %{_kf5_plugindir}/kpackage/packagestructure/kwin_packagestructure_aurorae.so @@ -306,9 +315,11 @@ %{_kf5_sharedir}/kpackage/kcms/kcm_kwindecoration %{_kf5_sharedir}/kpackage/kcms/kcm_kwin_effects %{_kf5_sharedir}/kpackage/kcms/kcm_kwinrules +%{_userunitdir}/plasma-kwin_wayland.service +%{_userunitdir}/plasma-kwin_x11.service %files devel -%license COPYING* +%license LICENSES/* %{_kf5_prefix}/include/*.h %{_kf5_libdir}/libkwin4_effect_builtins.so %{_kf5_libdir}/libkwineffects.so @@ -319,7 +330,7 @@ %if %{with lang} %files lang -f %{name}.lang -%license COPYING* +%license LICENSES/* %endif %changelog ++++++ 0001-Bypass-wayland-interface-blacklisting.patch ++++++ --- /var/tmp/diff_new_pack.Kr87q6/_old 2020-10-13 15:31:24.204912529 +0200 +++ /var/tmp/diff_new_pack.Kr87q6/_new 2020-10-13 15:31:24.208912531 +0200 @@ -1,4 +1,4 @@ -From 8ede8942dd8919b33d60ede365ae5d7a2f3818d8 Mon Sep 17 00:00:00 2001 +From fa990bdf47418968fd939636b84a43d0a4696f3c Mon Sep 17 00:00:00 2001 From: Fabian Vogt <[email protected]> Date: Tue, 12 Nov 2019 13:18:26 +0100 Subject: [PATCH] Bypass wayland interface blacklisting @@ -6,15 +6,15 @@ Currently the check isn't worth anything and it breaks some applications. See discussion on https://phabricator.kde.org/D22571 and https://phabricator.kde.org/T4437#207062. --- - wayland_server.cpp | 2 ++ - 1 file changed, 2 insertions(+) + wayland_server.cpp | 1 + + 1 file changed, 1 insertion(+) -Index: kwin-5.15.80git.20200430T125608~3a9d7a6e9/wayland_server.cpp +Index: kwin-5.15.80git.20200912T061110~f5900a5fd/wayland_server.cpp =================================================================== ---- kwin-5.15.80git.20200430T125608~3a9d7a6e9.orig/wayland_server.cpp 2020-05-01 10:53:51.577581219 +0200 -+++ kwin-5.15.80git.20200430T125608~3a9d7a6e9/wayland_server.cpp 2020-05-01 10:54:55.020576994 +0200 -@@ -238,6 +238,7 @@ - QSet<QByteArray> interfacesBlackList = {"org_kde_kwin_remote_access_manager", "org_kde_plasma_window_management", "org_kde_kwin_fake_input", "org_kde_kwin_keystate"}; +--- kwin-5.15.80git.20200912T061110~f5900a5fd.orig/wayland_server.cpp 2020-09-12 06:11:10.000000000 +0200 ++++ kwin-5.15.80git.20200912T061110~f5900a5fd/wayland_server.cpp 2020-09-12 11:27:55.728309874 +0200 +@@ -270,6 +270,7 @@ + QSet<QString> m_reported; bool allowInterface(KWaylandServer::ClientConnection *client, const QByteArray &interfaceName) override { + return true; ++++++ 0001-Revert-Make-WindowSwitching-Alt-Tab-the-default-left.patch ++++++ --- /var/tmp/diff_new_pack.Kr87q6/_old 2020-10-13 15:31:24.220912536 +0200 +++ /var/tmp/diff_new_pack.Kr87q6/_new 2020-10-13 15:31:24.220912536 +0200 @@ -15,10 +15,10 @@ tabbox/tabbox.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) -diff --git a/kcmkwin/kwinscreenedges/kwintouchscreensettings.kcfg b/kcmkwin/kwinscreenedges/kwintouchscreensettings.kcfg -index 49a253edc..feca5cb0c 100644 ---- a/kcmkwin/kwinscreenedges/kwintouchscreensettings.kcfg -+++ b/kcmkwin/kwinscreenedges/kwintouchscreensettings.kcfg +Index: kwin-5.15.80git.20200807T195756~c8433e519/kcmkwin/kwinscreenedges/kwintouchscreensettings.kcfg +=================================================================== +--- kwin-5.15.80git.20200807T195756~c8433e519.orig/kcmkwin/kwinscreenedges/kwintouchscreensettings.kcfg 2020-08-07 21:57:56.000000000 +0200 ++++ kwin-5.15.80git.20200807T195756~c8433e519/kcmkwin/kwinscreenedges/kwintouchscreensettings.kcfg 2020-08-07 22:21:56.023358131 +0200 @@ -47,7 +47,7 @@ </group> <group name="TabBox"> @@ -28,11 +28,11 @@ </entry> <entry key="TouchBorderAlternativeActivate" type="IntList"> <default>ElectricNone</default> -diff --git a/tabbox/tabbox.cpp b/tabbox/tabbox.cpp -index 87de23fc5..e13640c38 100644 ---- a/tabbox/tabbox.cpp -+++ b/tabbox/tabbox.cpp -@@ -793,7 +793,7 @@ void TabBox::reconfigure() +Index: kwin-5.15.80git.20200807T195756~c8433e519/tabbox/tabbox.cpp +=================================================================== +--- kwin-5.15.80git.20200807T195756~c8433e519.orig/tabbox/tabbox.cpp 2020-08-07 21:57:56.000000000 +0200 ++++ kwin-5.15.80git.20200807T195756~c8433e519/tabbox/tabbox.cpp 2020-08-07 22:21:56.023358131 +0200 +@@ -782,7 +782,7 @@ actions.insert(ElectricBorder(i), a); } }; @@ -41,6 +41,3 @@ touchConfig(QStringLiteral("TouchBorderAlternativeActivate"), m_touchAlternativeActivate, TabBoxWindowsAlternativeMode); } --- -2.25.1 - ++++++ 0001-Use-Xauthority-for-Xwayland.patch ++++++ --- /var/tmp/diff_new_pack.Kr87q6/_old 2020-10-13 15:31:24.232912541 +0200 +++ /var/tmp/diff_new_pack.Kr87q6/_new 2020-10-13 15:31:24.232912541 +0200 @@ -17,11 +17,11 @@ xwl/xwayland.h | 3 ++ 3 files changed, 105 insertions(+), 2 deletions(-) -Index: kwin-5.15.80git.20200430T125608~3a9d7a6e9/CMakeLists.txt +Index: kwin-5.15.80git.20200912T061110~f5900a5fd/CMakeLists.txt =================================================================== ---- kwin-5.15.80git.20200430T125608~3a9d7a6e9.orig/CMakeLists.txt 2020-04-30 12:56:08.000000000 +0200 -+++ kwin-5.15.80git.20200430T125608~3a9d7a6e9/CMakeLists.txt 2020-05-01 10:53:29.546483491 +0200 -@@ -624,6 +624,7 @@ +--- kwin-5.15.80git.20200912T061110~f5900a5fd.orig/CMakeLists.txt 2020-09-12 06:11:10.000000000 +0200 ++++ kwin-5.15.80git.20200912T061110~f5900a5fd/CMakeLists.txt 2020-09-12 11:27:06.232054780 +0200 +@@ -668,6 +668,7 @@ ${X11_ICE_LIB} ${X11_SM_LIB} ${X11_X11_LIB} @@ -29,21 +29,21 @@ ) set(kwin_XCB_LIBS -Index: kwin-5.15.80git.20200430T125608~3a9d7a6e9/xwl/xwayland.cpp +Index: kwin-5.15.80git.20200912T061110~f5900a5fd/xwl/xwayland.cpp =================================================================== ---- kwin-5.15.80git.20200430T125608~3a9d7a6e9.orig/xwl/xwayland.cpp 2020-04-30 12:56:08.000000000 +0200 -+++ kwin-5.15.80git.20200430T125608~3a9d7a6e9/xwl/xwayland.cpp 2020-05-01 10:53:29.546483491 +0200 -@@ -48,6 +48,8 @@ +--- kwin-5.15.80git.20200912T061110~f5900a5fd.orig/xwl/xwayland.cpp 2020-09-12 06:11:10.000000000 +0200 ++++ kwin-5.15.80git.20200912T061110~f5900a5fd/xwl/xwayland.cpp 2020-09-12 11:27:25.688155051 +0200 +@@ -39,6 +39,8 @@ #include <sys/socket.h> - #include <iostream> - + #include <cerrno> + #include <cstring> ++#include <iostream> +#include <X11/Xauth.h> -+ - static void readDisplay(int pipe) + + static QByteArray readDisplay(int pipe) { - QFile readPipe; -@@ -107,8 +109,84 @@ - s_self = nullptr; +@@ -77,6 +79,72 @@ + stop(); } +static QByteArray getRandomData(qint64 bytes) @@ -112,8 +112,13 @@ + return success; +} + - void Xwayland::init() + QProcess *Xwayland::process() const { + return m_xwaylandProcess; +@@ -88,6 +156,16 @@ + return; + } + + QString dir = QStandardPaths::writableLocation(QStandardPaths::RuntimeLocation); + if (!dir.isEmpty()) { + m_xwaylandAuthority.setFileTemplate(dir + QStringLiteral("/xauth_XXXXXX")); @@ -126,8 +131,8 @@ + int pipeFds[2]; if (pipe(pipeFds) != 0) { - std::cerr << "FATAL ERROR failed to create pipe to start Xwayland " << std::endl; -@@ -150,11 +228,15 @@ + qCWarning(KWIN_XWL, "Failed to create pipe to start Xwayland: %s", strerror(errno)); +@@ -130,11 +208,15 @@ env.insert("WAYLAND_SOCKET", QByteArray::number(wlfd)); env.insert("EGL_PLATFORM", QByteArrayLiteral("DRM")); m_xwaylandProcess->setProcessEnvironment(env); @@ -142,12 +147,12 @@ + args << QStringLiteral("-auth") << m_xwaylandAuthority.fileName(); + } + m_xwaylandProcess->setArguments(args); - m_xwaylandFailConnection = connect(m_xwaylandProcess, &QProcess::errorOccurred, this, - [this] (QProcess::ProcessError error) { - if (error == QProcess::FailedToStart) { -@@ -186,6 +268,23 @@ + connect(m_xwaylandProcess, &QProcess::errorOccurred, this, &Xwayland::handleXwaylandError); + connect(m_xwaylandProcess, &QProcess::started, this, &Xwayland::handleXwaylandStarted); + connect(m_xwaylandProcess, QOverload<int, QProcess::ExitStatus>::of(&QProcess::finished), +@@ -328,6 +410,23 @@ - void Xwayland::createX11Connection() + bool Xwayland::createX11Connection() { + if (!m_xwaylandAuthority.fileName().isEmpty()) { + QString hostname; @@ -166,27 +171,26 @@ + } + } + - int screenNumber = 0; - xcb_connection_t *c = nullptr; - if (m_xcbConnectionFd == -1) { -Index: kwin-5.15.80git.20200430T125608~3a9d7a6e9/xwl/xwayland.h -=================================================================== ---- kwin-5.15.80git.20200430T125608~3a9d7a6e9.orig/xwl/xwayland.h 2020-04-30 12:56:08.000000000 +0200 -+++ kwin-5.15.80git.20200430T125608~3a9d7a6e9/xwl/xwayland.h 2020-05-01 10:53:29.546483491 +0200 -@@ -23,6 +23,7 @@ - #include "xwayland_interface.h" + xcb_connection_t *connection = xcb_connect_to_fd(m_xcbConnectionFd, nullptr); - #include <xcb/xproto.h> + const int errorCode = xcb_connection_has_error(connection); +Index: kwin-5.15.80git.20200912T061110~f5900a5fd/xwl/xwayland.h +=================================================================== +--- kwin-5.15.80git.20200912T061110~f5900a5fd.orig/xwl/xwayland.h 2020-09-12 06:11:10.000000000 +0200 ++++ kwin-5.15.80git.20200912T061110~f5900a5fd/xwl/xwayland.h 2020-09-12 11:27:06.232054780 +0200 +@@ -15,6 +15,7 @@ + #include <QFutureWatcher> + #include <QProcess> + #include <QSocketNotifier> +#include <QTemporaryFile> - class QProcess; - -@@ -74,6 +75,8 @@ - const xcb_query_extension_reply_t *m_xfixes = nullptr; - DataBridge *m_dataBridge = nullptr; - + namespace KWin + { +@@ -102,6 +103,7 @@ + QProcess *m_xwaylandProcess = nullptr; + QSocketNotifier *m_socketNotifier = nullptr; + QTimer *m_resetCrashCountTimer = nullptr; + QTemporaryFile m_xwaylandAuthority; -+ + QByteArray m_displayName; + QFutureWatcher<QByteArray> *m_watcher = nullptr; ApplicationWaylandAbstract *m_app; - - Q_DISABLE_COPY(Xwayland) ++++++ kwin-5.19.5.tar.xz -> kwin-5.20.0.tar.xz ++++++ /work/SRC/openSUSE:Factory/kwin5/kwin-5.19.5.tar.xz /work/SRC/openSUSE:Factory/.kwin5.new.3486/kwin-5.20.0.tar.xz differ: char 26, line 1
