summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kde-plasma/kwin/Manifest1
-rw-r--r--kde-plasma/kwin/files/kwin-5.23.3-enable-window-rules-for-all-xdg-toplevel.patch132
-rw-r--r--kde-plasma/kwin/files/kwin-5.23.3-fix-xwayland-abstract-socket-addr.patch49
-rw-r--r--kde-plasma/kwin/files/kwin-5.23.3-revert-2560288e.patch35
-rw-r--r--kde-plasma/kwin/kwin-5.23.3-r1.ebuild140
5 files changed, 0 insertions, 357 deletions
diff --git a/kde-plasma/kwin/Manifest b/kde-plasma/kwin/Manifest
index 6f6bb745dc7e..6adab4bef8f7 100644
--- a/kde-plasma/kwin/Manifest
+++ b/kde-plasma/kwin/Manifest
@@ -1,3 +1,2 @@
DIST kwin-5.22.5.tar.xz 6459916 BLAKE2B caaec435be180fd4c359bea2d1f4a9a0e3e5854f73b91b83d62ad4e488e9d779a7f6bc5620dfb2ebcf5629b2f90c958d4a4a126df34c9734220c64262e751fba SHA512 4e466f3961279610c16d24c1dbc6368862308ee7bf677bf9f8ed1898465aa31263a34362b1beaad451b6c5e94068d908718c7bb37d12b814f2af9a1eccf417d2
-DIST kwin-5.23.3.tar.xz 6333892 BLAKE2B fd84fefafb51e3979a270688ad5b33ed1bb3067a1d2406382b18c1f08cc31c5b5f74725a741b3a569082ff8c9964f254915401e7c7034fae1b550c50659b6235 SHA512 d440b1510e22cefb8ae60d337efec4aa04deb186319b9c655a7a217c73fb18e486baced8268f99d7f88c9cfdc4a67ab7018c4f2c13a307841cfa01be12282b1c
DIST kwin-5.23.4.tar.xz 6341720 BLAKE2B 5dd984c0ff4c62f9d3e4915be5f5423477314a79c4e8fa9a0c306f99be968ca99e61ab9f23ee1b866e171c40c0ad173c96f6de49a28b2eea3a2c62bf5c9a20b3 SHA512 82da0883cf5e900c2278351e815453e25052edfb6534e4be015636dcc2c4051f154c6685eb2542e851d48bf8026bf2b359189864dda336b266208344dcfc851d
diff --git a/kde-plasma/kwin/files/kwin-5.23.3-enable-window-rules-for-all-xdg-toplevel.patch b/kde-plasma/kwin/files/kwin-5.23.3-enable-window-rules-for-all-xdg-toplevel.patch
deleted file mode 100644
index fa52bd7a3481..000000000000
--- a/kde-plasma/kwin/files/kwin-5.23.3-enable-window-rules-for-all-xdg-toplevel.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 1ba7b5ec63b61fa00b7eac59a1beca12323fefb3 Mon Sep 17 00:00:00 2001
-From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
-Date: Wed, 17 Nov 2021 18:36:00 +0200
-Subject: [PATCH] wayland: Enable window rules for all xdg-toplevel
-
-If a window wants to be initially shown in fullscreen mode, it will
-issue an xdg_toplevel.set_fullscreen request before the first surface
-commit.
-
-If a window wants to be shown in fullscreen mode and there hasn't been
-any first surface commit, kwin will cache the request and apply
-fullscreen mode when checking window rules in the initialize() function.
-
-On the other hand, window rules are disabled for plasma surfaces. The
-motivation behind that was to forbid user from messing with plasma's
-surfaces (this change was suggested during redesign of xdg-shell
-implementation).
-
-As it turns out, there are cases where plasma may ask to show a window
-in fullscreen mode, which also has a plasma surface installed, e.g.
-fullscreen application dashboard.
-
-In order to fix the dashboard, this change allows window rules to be
-applied to xdg-toplevel windows that also have plasma surfaces installed.
-
-As is, xdg-toplevel surfaces and plasma surfaces are very different in
-nature. Adding more quirks to handle plasma surfaces in
-XdgToplevelClient is not worth the effort and there are better
-alternatives, e.g. layer-shell.
-
-
-(cherry picked from commit 039b1d031e3e30c238c8d67ade376c6d52297d81)
----
- src/xdgshellclient.cpp | 65 +++++++++++++++++++++---------------------
- 1 file changed, 32 insertions(+), 33 deletions(-)
-
-diff --git a/src/xdgshellclient.cpp b/src/xdgshellclient.cpp
-index 9e8216a3a0..b4427b8cf7 100644
---- a/src/xdgshellclient.cpp
-+++ b/src/xdgshellclient.cpp
-@@ -647,7 +647,7 @@ void XdgToplevelClient::updateDecoration(bool check_workspace_pos, bool force)
-
- bool XdgToplevelClient::supportsWindowRules() const
- {
-- return !m_plasmaShellSurface;
-+ return true;
- }
-
- StrutRect XdgToplevelClient::strutRect(StrutArea area) const
-@@ -946,7 +946,7 @@ void XdgToplevelClient::handleWindowClassChanged()
- {
- const QByteArray applicationId = m_shellSurface->windowClass().toUtf8();
- setResourceClass(resourceName(), applicationId);
-- if (shellSurface()->isConfigured() && supportsWindowRules()) {
-+ if (shellSurface()->isConfigured()) {
- evaluateWindowRules();
- }
- setDesktopFileName(applicationId);
-@@ -1196,40 +1196,39 @@ void XdgToplevelClient::initialize()
- // is sent if the client has called the set_mode() request with csd mode.
- updateDecoration(false, true);
-
-- if (supportsWindowRules()) {
-- setupWindowRules(false);
--
-- moveResize(rules()->checkGeometry(frameGeometry(), true));
-- maximize(rules()->checkMaximize(initialMaximizeMode(), true));
-- setFullScreen(rules()->checkFullScreen(initialFullScreenMode(), true), false);
-- setOnActivities(rules()->checkActivity(activities(), true));
-- setDesktops(rules()->checkDesktops(desktops(), true));
-- setDesktopFileName(rules()->checkDesktopFile(desktopFileName(), true).toUtf8());
-- if (rules()->checkMinimize(isMinimized(), true)) {
-- minimize(true); // No animation.
-- }
-- setSkipTaskbar(rules()->checkSkipTaskbar(skipTaskbar(), true));
-- setSkipPager(rules()->checkSkipPager(skipPager(), true));
-- setSkipSwitcher(rules()->checkSkipSwitcher(skipSwitcher(), true));
-- setKeepAbove(rules()->checkKeepAbove(keepAbove(), true));
-- setKeepBelow(rules()->checkKeepBelow(keepBelow(), true));
-- setShortcut(rules()->checkShortcut(shortcut().toString(), true));
-- setNoBorder(rules()->checkNoBorder(noBorder(), true));
-+ setupWindowRules(false);
-+
-+ moveResize(rules()->checkGeometry(frameGeometry(), true));
-+ maximize(rules()->checkMaximize(initialMaximizeMode(), true));
-+ setFullScreen(rules()->checkFullScreen(initialFullScreenMode(), true), false);
-+ setOnActivities(rules()->checkActivity(activities(), true));
-+ setDesktops(rules()->checkDesktops(desktops(), true));
-+ setDesktopFileName(rules()->checkDesktopFile(desktopFileName(), true).toUtf8());
-+ if (rules()->checkMinimize(isMinimized(), true)) {
-+ minimize(true); // No animation.
-+ }
-+ setSkipTaskbar(rules()->checkSkipTaskbar(skipTaskbar(), true));
-+ setSkipPager(rules()->checkSkipPager(skipPager(), true));
-+ setSkipSwitcher(rules()->checkSkipSwitcher(skipSwitcher(), true));
-+ setKeepAbove(rules()->checkKeepAbove(keepAbove(), true));
-+ setKeepBelow(rules()->checkKeepBelow(keepBelow(), true));
-+ setShortcut(rules()->checkShortcut(shortcut().toString(), true));
-+ setNoBorder(rules()->checkNoBorder(noBorder(), true));
-+
-+ // Don't place the client if its position is set by a rule.
-+ if (rules()->checkPosition(invalidPoint, true) != invalidPoint) {
-+ needsPlacement = false;
-+ }
-
-- // Don't place the client if its position is set by a rule.
-- if (rules()->checkPosition(invalidPoint, true) != invalidPoint) {
-- needsPlacement = false;
-- }
-+ // Don't place the client if the maximize state is set by a rule.
-+ if (requestedMaximizeMode() != MaximizeRestore) {
-+ needsPlacement = false;
-+ }
-
-- // Don't place the client if the maximize state is set by a rule.
-- if (requestedMaximizeMode() != MaximizeRestore) {
-- needsPlacement = false;
-- }
-+ discardTemporaryRules();
-+ RuleBook::self()->discardUsed(this, false); // Remove Apply Now rules.
-+ updateWindowRules(Rules::All);
-
-- discardTemporaryRules();
-- RuleBook::self()->discardUsed(this, false); // Remove Apply Now rules.
-- updateWindowRules(Rules::All);
-- }
- if (isRequestedFullScreen()) {
- needsPlacement = false;
- }
---
-GitLab
-
diff --git a/kde-plasma/kwin/files/kwin-5.23.3-fix-xwayland-abstract-socket-addr.patch b/kde-plasma/kwin/files/kwin-5.23.3-fix-xwayland-abstract-socket-addr.patch
deleted file mode 100644
index 7cd8d135ab28..000000000000
--- a/kde-plasma/kwin/files/kwin-5.23.3-fix-xwayland-abstract-socket-addr.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 5a9a3e96898bd29ccbf31d9ff92dfb80274ce265 Mon Sep 17 00:00:00 2001
-From: Weng Xuetian <wengxt@gmail.com>
-Date: Thu, 11 Nov 2021 12:25:13 -0800
-Subject: [PATCH] Fix XWayland abstract socket address.
-
-NUL-termination byte is not needed for abstract socket. This leads to
-XWayland listening to a wrong address.
-
-Confirmed with lsof.
-
-BUG: 442362
-
-
-(cherry picked from commit 83a036e9d40475d5c07177bf2e8bba9bc0fd4aa5)
----
- src/xwl/lib/xwaylandsocket.cpp | 9 ++++-----
- 1 file changed, 4 insertions(+), 5 deletions(-)
-
-diff --git a/src/xwl/lib/xwaylandsocket.cpp b/src/xwl/lib/xwaylandsocket.cpp
-index 786ab5cbbf..7cf9310584 100644
---- a/src/xwl/lib/xwaylandsocket.cpp
-+++ b/src/xwl/lib/xwaylandsocket.cpp
-@@ -42,19 +42,18 @@ UnixSocketAddress::UnixSocketAddress(const QString &socketPath, Type type)
- const QByteArray encodedSocketPath = QFile::encodeName(socketPath);
-
- int byteCount = offsetof(sockaddr_un, sun_path) + encodedSocketPath.size() + 1;
-- if (type == Type::Abstract) {
-- byteCount++; // For the first '\0'.
-- }
- m_buffer.resize(byteCount);
-
- sockaddr_un *address = reinterpret_cast<sockaddr_un *>(m_buffer.data());
- address->sun_family = AF_UNIX;
-
- if (type == Type::Unix) {
-- qstrcpy(address->sun_path, encodedSocketPath);
-+ memcpy(address->sun_path, encodedSocketPath.data(), encodedSocketPath.size());
-+ address->sun_path[encodedSocketPath.size()] = '\0';
- } else {
-+ // Abstract domain socket does not need the NUL-termination byte.
- *address->sun_path = '\0';
-- qstrcpy(address->sun_path + 1, encodedSocketPath);
-+ memcpy(address->sun_path + 1, encodedSocketPath.data(), encodedSocketPath.size());
- }
- }
-
---
-GitLab
-
diff --git a/kde-plasma/kwin/files/kwin-5.23.3-revert-2560288e.patch b/kde-plasma/kwin/files/kwin-5.23.3-revert-2560288e.patch
deleted file mode 100644
index db91c918ec3d..000000000000
--- a/kde-plasma/kwin/files/kwin-5.23.3-revert-2560288e.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 325208347c40d7311aea83572b5150ba3750cba9 Mon Sep 17 00:00:00 2001
-From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
-Date: Tue, 16 Nov 2021 22:37:26 +0200
-Subject: [PATCH] Revert "wayland: Check workspace position when preferred deco
- mode changes"
-
-This reverts commit 2560288e4b66acfdbb8a8f4daafd2d600aeb525a.
-
-It broke alacricitty. The fix is not obvious, so revert the commit for
-the time being.
-
-BUG: 445444
-
-
-(cherry picked from commit 068d60e36a112c6b901010331ef3a995019c97cb)
----
- src/xdgshellclient.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/xdgshellclient.cpp b/src/xdgshellclient.cpp
-index af1bd57ac7..9e8216a3a0 100644
---- a/src/xdgshellclient.cpp
-+++ b/src/xdgshellclient.cpp
-@@ -1317,7 +1317,7 @@ void XdgToplevelClient::installXdgDecoration(XdgToplevelDecorationV1Interface *d
- connect(m_xdgDecoration, &XdgToplevelDecorationV1Interface::preferredModeChanged, this, [this] {
- if (m_isInitialized) {
- // force is true as we must send a new configure response.
-- updateDecoration(/* check_workspace_pos */ true, /* force */ true);
-+ updateDecoration(/* check_workspace_pos */ false, /* force */ true);
- }
- });
- }
---
-GitLab
-
diff --git a/kde-plasma/kwin/kwin-5.23.3-r1.ebuild b/kde-plasma/kwin/kwin-5.23.3-r1.ebuild
deleted file mode 100644
index 24a401f083d2..000000000000
--- a/kde-plasma/kwin/kwin-5.23.3-r1.ebuild
+++ /dev/null
@@ -1,140 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_HANDBOOK="optional"
-ECM_TEST="optional"
-KFMIN=5.86.0
-PVCUT=$(ver_cut 1-3)
-QTMIN=5.15.2
-VIRTUALX_REQUIRED="test"
-inherit ecm kde.org optfeature
-
-DESCRIPTION="Flexible, composited Window Manager for windowing systems on Linux"
-
-LICENSE="GPL-2+"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
-IUSE="accessibility caps gles2-only multimedia plasma screencast"
-
-RESTRICT="test"
-
-COMMON_DEPEND="
- >=dev-libs/libinput-1.14
- >=dev-libs/wayland-1.2
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5=[gles2-only=,libinput]
- >=dev-qt/qtwidgets-${QTMIN}:5
- >=dev-qt/qtx11extras-${QTMIN}:5
- >=kde-frameworks/kactivities-${KFMIN}:5
- >=kde-frameworks/kauth-${KFMIN}:5
- >=kde-frameworks/kcmutils-${KFMIN}:5
- >=kde-frameworks/kcompletion-${KFMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/kconfigwidgets-${KFMIN}:5
- >=kde-frameworks/kcoreaddons-${KFMIN}:5
- >=kde-frameworks/kcrash-${KFMIN}:5
- >=kde-frameworks/kdeclarative-${KFMIN}:5
- >=kde-frameworks/kglobalaccel-${KFMIN}:5=
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kiconthemes-${KFMIN}:5
- >=kde-frameworks/kidletime-${KFMIN}:5=
- >=kde-frameworks/knewstuff-${KFMIN}:5
- >=kde-frameworks/knotifications-${KFMIN}:5
- >=kde-frameworks/kpackage-${KFMIN}:5
- >=kde-frameworks/kservice-${KFMIN}:5
- >=kde-frameworks/ktextwidgets-${KFMIN}:5
- >=kde-frameworks/kwayland-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kwindowsystem-${KFMIN}:5=[X]
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- >=kde-frameworks/plasma-${KFMIN}:5
- >=kde-plasma/breeze-${PVCUT}:5
- >=kde-plasma/kdecoration-${PVCUT}:5
- >=kde-plasma/kscreenlocker-${PVCUT}:5
- >=kde-plasma/kwayland-server-${PVCUT}:5
- media-libs/fontconfig
- media-libs/freetype
- media-libs/lcms:2
- media-libs/libepoxy
- >=media-libs/mesa-21.1[egl(+),gbm(+),wayland,X]
- virtual/libudev:=
- x11-libs/libX11
- x11-libs/libXi
- x11-libs/libdrm
- >=x11-libs/libxcb-1.10
- >=x11-libs/libxkbcommon-0.7.0
- x11-libs/xcb-util-cursor
- x11-libs/xcb-util-image
- x11-libs/xcb-util-keysyms
- x11-libs/xcb-util-wm
- accessibility? ( media-libs/libqaccessibilityclient:5 )
- caps? ( sys-libs/libcap )
- gles2-only? ( media-libs/mesa[gles2] )
- plasma? ( >=kde-frameworks/krunner-${KFMIN}:5 )
- screencast? ( >=media-video/pipewire-0.3:= )
-"
-# TODO: sys-apps/hwdata? not packaged yet; commit 33a1777a, Gentoo-bug 717216
-RDEPEND="${COMMON_DEPEND}
- >=dev-qt/qtquickcontrols-${QTMIN}:5
- >=dev-qt/qtquickcontrols2-${QTMIN}:5
- >=dev-qt/qtvirtualkeyboard-${QTMIN}:5
- >=kde-frameworks/kirigami-${KFMIN}:5
- >=kde-frameworks/kitemmodels-${KFMIN}:5[qml]
- || (
- x11-base/xwayland
- x11-base/xorg-server[wayland(-)]
- )
- multimedia? ( >=dev-qt/qtmultimedia-${QTMIN}:5[gstreamer,qml] )
-"
-DEPEND="${COMMON_DEPEND}
- >=dev-qt/designer-${QTMIN}:5
- >=dev-qt/qtconcurrent-${QTMIN}:5
- x11-base/xorg-proto
- test? (
- >=dev-libs/wayland-protocols-1.19
- >=dev-qt/qtwayland-${QTMIN}:5
- )
-"
-PDEPEND=">=kde-plasma/kde-cli-tools-${PVCUT}:5"
-
-PATCHES=(
- "${FILESDIR}/${P}-fix-xwayland-abstract-socket-addr.patch" # KDE-bug 442362, bug 813888
- "${FILESDIR}/${P}-revert-2560288e.patch" # KDE-bug 445444
- "${FILESDIR}/${P}-enable-window-rules-for-all-xdg-toplevel.patch"
-)
-
-src_prepare() {
- ecm_src_prepare
- use multimedia || eapply "${FILESDIR}/${PN}-5.21.80-gstreamer-optional.patch"
-
- # TODO: try to get a build switch upstreamed
- if ! use screencast; then
- sed -e "s/^pkg_check_modules.*PipeWire/#&/" -i CMakeLists.txt || die
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- $(cmake_use_find_package accessibility QAccessibilityClient)
- $(cmake_use_find_package caps Libcap)
- $(cmake_use_find_package plasma KF5Runner)
- )
-
- ecm_src_configure
-}
-
-pkg_postinst() {
- ecm_pkg_postinst
- optfeature "color management support" x11-misc/colord
- elog
- elog "In Plasma 5.20, default behavior of the Task Switcher to move minimised"
- elog "windows to the end of the list was changed so that it remains in the"
- elog "original order. To revert to the well established behavior:"
- elog
- elog " - Edit ~/.config/kwinrc"
- elog " - Find [TabBox] section"
- elog " - Add \"MoveMinimizedWindowsToEndOfTabBoxFocusChain=true\""
-}