diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2024-08-10 13:03:52 +0200 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2024-08-11 08:52:55 +0200 |
commit | c8fbaf4ed30ec52079eb79458e71cacc450a8217 (patch) | |
tree | 36e84d3c2354a35c16c32bf0aac5c76834d32184 /kde-plasma | |
parent | net-p2p/ncdc: Stabilize 1.24-r1 x86, #937715 (diff) | |
download | gentoo-c8fbaf4ed30ec52079eb79458e71cacc450a8217.tar.gz gentoo-c8fbaf4ed30ec52079eb79458e71cacc450a8217.tar.bz2 gentoo-c8fbaf4ed30ec52079eb79458e71cacc450a8217.zip |
kde-plasma/kwin: Depend on ECM 6.5.0 w/ fixed FindWaylandScanner
Also backporting commit d85dd623d7315f2e620c2c37e635f2fd3737a684
KDE-bug: https://bugs.kde.org/show_bug.cgi?id=450579
Bug: https://bugs.gentoo.org/933271
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-plasma')
-rw-r--r-- | kde-plasma/kwin/files/kwin-6.1.4-screenedge-dnd.patch | 34 | ||||
-rw-r--r-- | kde-plasma/kwin/kwin-6.1.4-r1.ebuild | 145 |
2 files changed, 179 insertions, 0 deletions
diff --git a/kde-plasma/kwin/files/kwin-6.1.4-screenedge-dnd.patch b/kde-plasma/kwin/files/kwin-6.1.4-screenedge-dnd.patch new file mode 100644 index 000000000000..864835bee661 --- /dev/null +++ b/kde-plasma/kwin/files/kwin-6.1.4-screenedge-dnd.patch @@ -0,0 +1,34 @@ +From d85dd623d7315f2e620c2c37e635f2fd3737a684 Mon Sep 17 00:00:00 2001 +From: Yifan Zhu <fanzhuyifan@gmail.com> +Date: Wed, 7 Aug 2024 16:54:44 +0000 +Subject: [PATCH] screenedge: allow activating clients in drag and drop + +In particular, this allows dragging onto autohide and dogde-window +panels. + +BUG: 450579 + + +(cherry picked from commit 7752db3a882b5432d7d5c0b118acf42eeb3a8aee) + +Co-authored-by: Yifan Zhu <fanzhuyifan@gmail.com> +--- + src/screenedge.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/screenedge.cpp b/src/screenedge.cpp +index de9f55dcb69..b1b2a29f9e3 100644 +--- a/src/screenedge.cpp ++++ b/src/screenedge.cpp +@@ -244,7 +244,7 @@ bool Edge::activatesForPointer() const + // Most actions do not handle drag and drop properly yet + // but at least allow "show desktop" and "application launcher". + if (waylandServer() && waylandServer()->seat()->isDragPointer()) { +- if (!m_edges->isDesktopSwitching() && m_action != ElectricActionShowDesktop && m_action != ElectricActionApplicationLauncher) { ++ if (!m_edges->isDesktopSwitching() && m_action != ElectricActionNone && m_action != ElectricActionShowDesktop && m_action != ElectricActionApplicationLauncher) { + return false; + } + // Don't activate edge when a mouse button is pressed, except when +-- +GitLab + diff --git a/kde-plasma/kwin/kwin-6.1.4-r1.ebuild b/kde-plasma/kwin/kwin-6.1.4-r1.ebuild new file mode 100644 index 000000000000..b759cc819a2d --- /dev/null +++ b/kde-plasma/kwin/kwin-6.1.4-r1.ebuild @@ -0,0 +1,145 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ECM_HANDBOOK="optional" +ECM_TEST="true" +KFMIN=6.5.0 # bug 933271 +PVCUT=$(ver_cut 1-3) +QTMIN=6.7.2 +inherit ecm plasma.kde.org + +DESCRIPTION="Flexible, composited Window Manager for windowing systems on Linux" + +LICENSE="GPL-2+" +SLOT="6" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="accessibility +caps gles2-only lock screencast +shortcuts systemd" + +RESTRICT="test" + +# qtbase slot op: GuiPrivate use in tabbox +COMMON_DEPEND=" + dev-libs/libei + >=dev-libs/libinput-1.19:= + >=dev-libs/wayland-1.22.0 + >=dev-qt/qt5compat-${QTMIN}:6[qml] + >=dev-qt/qtbase-${QTMIN}:6=[accessibility=,gles2-only=,gui,libinput,opengl,widgets] + >=dev-qt/qtdeclarative-${QTMIN}:6 + >=dev-qt/qtsensors-${QTMIN}:6 + >=dev-qt/qtshadertools-${QTMIN}:6 + >=kde-frameworks/kauth-${KFMIN}:6 + >=kde-frameworks/kcmutils-${KFMIN}:6 + >=kde-frameworks/kcolorscheme-${KFMIN}:6 + >=kde-frameworks/kconfig-${KFMIN}:6[qml] + >=kde-frameworks/kconfigwidgets-${KFMIN}:6 + >=kde-frameworks/kcoreaddons-${KFMIN}:6 + >=kde-frameworks/kcrash-${KFMIN}:6 + >=kde-frameworks/kdbusaddons-${KFMIN}:6 + >=kde-frameworks/kdeclarative-${KFMIN}:6 + >=kde-frameworks/kglobalaccel-${KFMIN}:6=[X(+)] + >=kde-frameworks/kguiaddons-${KFMIN}:6[wayland] + >=kde-frameworks/ki18n-${KFMIN}:6 + >=kde-frameworks/kidletime-${KFMIN}:6=[wayland] + >=kde-frameworks/knewstuff-${KFMIN}:6 + >=kde-frameworks/knotifications-${KFMIN}:6 + >=kde-frameworks/kpackage-${KFMIN}:6 + >=kde-frameworks/kservice-${KFMIN}:6 + >=kde-frameworks/ksvg-${KFMIN}:6 + >=kde-frameworks/kwidgetsaddons-${KFMIN}:6 + >=kde-frameworks/kwindowsystem-${KFMIN}:6=[wayland,X] + >=kde-frameworks/kxmlgui-${KFMIN}:6 + >=kde-plasma/breeze-${PVCUT}:6 + >=kde-plasma/kdecoration-${PVCUT}:6 + >=kde-plasma/kwayland-${PVCUT}:6 + >=kde-plasma/plasma-activities-${PVCUT}:6 + media-libs/fontconfig + media-libs/freetype + media-libs/lcms:2 + media-libs/libdisplay-info:= + media-libs/libepoxy + media-libs/libglvnd + >=media-libs/mesa-21.3[egl(+),gbm(+),wayland,X] + virtual/libudev:= + x11-libs/libX11 + x11-libs/libXi + >=x11-libs/libdrm-2.4.116 + >=x11-libs/libxcb-1.10:= + >=x11-libs/libxcvt-0.1.1 + >=x11-libs/libxkbcommon-1.5.0 + x11-libs/xcb-util-cursor + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-wm + accessibility? ( media-libs/libqaccessibilityclient:6 ) + gles2-only? ( || ( + >=media-libs/mesa-24.1.0_rc1[opengl] + <media-libs/mesa-24.1.0_rc1[gles2] + ) ) + lock? ( >=kde-plasma/kscreenlocker-${PVCUT}:6 ) + screencast? ( >=media-video/pipewire-0.3:= ) + shortcuts? ( >=kde-plasma/kglobalacceld-${PVCUT}:6 ) +" +RDEPEND="${COMMON_DEPEND} + !kde-plasma/kdeplasma-addons:5 + !kde-plasma/kwayland-server + >=dev-qt/qtmultimedia-${QTMIN}:6[qml] + || ( + dev-qt/qtmultimedia:6[ffmpeg] + ( + dev-qt/qtmultimedia:6[gstreamer] + media-plugins/gst-plugins-soup:1.0 + ) + ) + >=kde-frameworks/kirigami-${KFMIN}:6 + >=kde-frameworks/kitemmodels-${KFMIN}:6 + >=kde-plasma/libplasma-${PVCUT}:6[wayland(+)] + sys-apps/hwdata + x11-base/xwayland[libei] +" +DEPEND="${COMMON_DEPEND} + >=dev-libs/plasma-wayland-protocols-1.13.0 + >=dev-libs/wayland-protocols-1.34 + >=dev-qt/qttools-${QTMIN}:6[widgets] + >=dev-qt/qtbase-${QTMIN}:6[concurrent] + >=dev-qt/qtwayland-${QTMIN}:6 + x11-base/xorg-proto + x11-libs/xcb-util-image + caps? ( sys-libs/libcap ) + test? ( screencast? ( >=kde-plasma/kpipewire-${PVCUT}:6 ) ) +" +BDEPEND=" + >=dev-qt/qtwayland-${QTMIN}:6 + dev-util/wayland-scanner + >=kde-frameworks/kcmutils-${KFMIN}:6 +" +PDEPEND=">=kde-plasma/kde-cli-tools-${PVCUT}:*" + +PATCHES=( "${FILESDIR}/${P}-screenedge-dnd.patch" ) # KDE-bug 450579, in 6.1.5 + +src_prepare() { + ecm_src_prepare + + # TODO: try to get a build switch upstreamed + if ! use screencast; then + sed -e "s/^pkg_check_modules.*PipeWire/#&/" -i CMakeLists.txt || die + fi + + # TODO: try to get a build switch upstreamed + if ! use systemd; then + sed -e "s/^pkg_check_modules.*libsystemd/#&/" -i CMakeLists.txt || die + fi +} + +src_configure() { + local mycmakeargs=( + # TODO: KWIN_BUILD_X11? + # KWIN_BUILD_NOTIFICATIONS exists, but kdeclarative still hard-depends on it + $(cmake_use_find_package accessibility QAccessibilityClient6) + $(cmake_use_find_package caps Libcap) + -DKWIN_BUILD_SCREENLOCKER=$(usex lock) + -DKWIN_BUILD_GLOBALSHORTCUTS=$(usex shortcuts) + ) + + ecm_src_configure +} |