forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-qt/qtwayland: 5.15.10 version bump
Signed-off-by: Andreas Sturmlechner <[email protected]>
- Loading branch information
Showing
3 changed files
with
124 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
DIST qtwayland-5.15.10-gentoo-kde-1.tar.xz 42480 BLAKE2B 3902ecb713b8f35922b0d19bef0b2ec340ca52feb4b61de629dfa6b344d7f550de3e509e265f4476eb907f78b55d5c50c21d9dfeeb7e2e8f680a43fffc911ed4 SHA512 6a131ca2db008a2d224ee6733f47d05a455a8487d38b45cf63882e98e2c29d8163ac5d2f2c2e043f03103bada6e212b5d33cbf11677f8ca2b86fdbf02fc2b239 | ||
DIST qtwayland-5.15.9-gentoo-kde-1.tar.xz 44312 BLAKE2B be255e0d292ce6555473d4ad92b656ea0f3bd7c0d4041f92e2ccfe1e456c984ff3d9307e3ff1ebe8da5d40b6a6c938e116856ff1c392171f3157cc734461e8a7 SHA512 bf099acf0cb21c3402f38dcec8a3b2f9411e8d307e303bb2eb772e5dc5872cbdb456a7d37628d72bcf4f258f3e8f9baa53081bf5c061d6338f7431f016c0e27b | ||
DIST qtwayland-everywhere-opensource-src-5.15.10.tar.xz 568552 BLAKE2B c5cd4ed5ff78befb5bb49f9eb809562c418b2469aa0fa23728a1de46d57f42788bba3f87a54c8dda2ee0900c76b84213d1111fd86159dc5e6707f7b67ed386de SHA512 214b1fec7dfd815d148a7485f7811e623b06d172e58e4ee3167264a4e4b8f4aeec11474e574f91652a0bd3a48476a6747cad468f1e5035c49a55a96fc1400899 | ||
DIST qtwayland-everywhere-opensource-src-5.15.9.tar.xz 567564 BLAKE2B c5a0d39cdd746e2aa6cd011ce04baa7f1f30e21c935877a684f07d5c2a0d3446e80569fa33c3fa0953b1bea86aefd64f80fda5164f3ee5648b74c2e0e8d369b9 SHA512 d108d63ceeb3b1a8905ad7f53a7271fca6a3506679d352b7290cdf8c00e1c180b6c561ee013a674002b89e23f58cfb7b909dfc5a8fdec6cece7e0a782be77978 | ||
DIST qtwayland-everywhere-src-6.5.1.tar.xz 1059936 BLAKE2B 5b54804df8106b0585fa44612c3d688b89aaea7bd49f2420e2a44472ced9ed51c2aba1d0baf2e4636a58937e7393e6d4b1ad8c7d937dfbf96e5a90bba5393cca SHA512 9074adfb5ea9cc18896dade6706ef5a863033130f23aa11e0a7b2ae6e4df2fb64b636815e2489debb1032919a8ad20d39813d40b3ba7a87cebd801c9fae0d4f0 |
68 changes: 68 additions & 0 deletions
68
dev-qt/qtwayland/files/qtwayland-5.15.10-send-release-button-event-on-pointer-leave.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
From 90995b07d2d4dbd12b7e527a881bf9d6158e277b Mon Sep 17 00:00:00 2001 | ||
From: Ilya Fedin <[email protected]> | ||
Date: Sun, 19 Mar 2023 10:24:59 +0400 | ||
Subject: [PATCH] Client: Send release button event on pointer leave | ||
|
||
Fixes: QTBUG-97037 | ||
Pick-to: 6.6 6.5 6.2 5.15 | ||
Change-Id: I151239b276ab5aefe166f5615baf43dab428ce0c | ||
Reviewed-by: David Edmundson <[email protected]> | ||
(cherry picked from commit 8235fa65fe033a94e7a44322d3502f25940092ec) | ||
--- | ||
src/client/qwaylandinputdevice.cpp | 9 +++++++-- | ||
src/client/qwaylandinputdevice_p.h | 1 + | ||
2 files changed, 8 insertions(+), 2 deletions(-) | ||
|
||
diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp | ||
index bc05583a..e562c7a7 100644 | ||
--- a/src/client/qwaylandinputdevice.cpp | ||
+++ b/src/client/qwaylandinputdevice.cpp | ||
@@ -688,8 +688,8 @@ public: | ||
|
||
void QWaylandInputDevice::Pointer::pointer_leave(uint32_t time, struct wl_surface *surface) | ||
{ | ||
+ releaseButtons(); | ||
invalidateFocus(); | ||
- mButtons = Qt::NoButton; | ||
|
||
mParent->mTime = time; | ||
|
||
@@ -804,6 +804,8 @@ void QWaylandInputDevice::Pointer::pointer_button(uint32_t serial, uint32_t time | ||
default: return; // invalid button number (as far as Qt is concerned) | ||
} | ||
|
||
+ mLastButton = qt_button; | ||
+ | ||
if (state) | ||
mButtons |= qt_button; | ||
else | ||
@@ -842,10 +844,13 @@ void QWaylandInputDevice::Pointer::invalidateFocus() | ||
|
||
void QWaylandInputDevice::Pointer::releaseButtons() | ||
{ | ||
+ if (mButtons == Qt::NoButton) | ||
+ return; | ||
+ | ||
mButtons = Qt::NoButton; | ||
|
||
if (auto *window = focusWindow()) { | ||
- ReleaseEvent e(focusWindow(), mParent->mTime, mSurfacePos, mGlobalPos, mButtons, Qt::NoButton, mParent->modifiers()); | ||
+ ReleaseEvent e(focusWindow(), mParent->mTime, mSurfacePos, mGlobalPos, mButtons, mLastButton, mParent->modifiers()); | ||
window->handleMouse(mParent, e); | ||
} | ||
} | ||
diff --git a/src/client/qwaylandinputdevice_p.h b/src/client/qwaylandinputdevice_p.h | ||
index 5795f138..bafe3db2 100644 | ||
--- a/src/client/qwaylandinputdevice_p.h | ||
+++ b/src/client/qwaylandinputdevice_p.h | ||
@@ -346,6 +346,7 @@ public: | ||
QPointF mSurfacePos; | ||
QPointF mGlobalPos; | ||
Qt::MouseButtons mButtons = Qt::NoButton; | ||
+ Qt::MouseButton mLastButton = Qt::NoButton; | ||
#if QT_CONFIG(cursor) | ||
wl_buffer *mCursorBuffer = nullptr; | ||
Qt::CursorShape mCursorShape = Qt::BitmapCursor; | ||
-- | ||
2.41.0 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
# Copyright 1999-2023 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=8 | ||
|
||
if [[ ${PV} != *9999* ]]; then | ||
QT5_KDEPATCHSET_REV=1 | ||
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" | ||
fi | ||
|
||
inherit qt5-build | ||
|
||
DESCRIPTION="Wayland platform plugin for Qt" | ||
|
||
SLOT=5/${QT5_PV} # bug 815646 | ||
IUSE="vulkan X" | ||
|
||
DEPEND=" | ||
dev-libs/wayland | ||
=dev-qt/qtcore-${QT5_PV}*:5= | ||
=dev-qt/qtdeclarative-${QT5_PV}*:5= | ||
=dev-qt/qtgui-${QT5_PV}*:5=[egl,libinput,vulkan=,X?] | ||
media-libs/libglvnd | ||
vulkan? ( dev-util/vulkan-headers ) | ||
X? ( | ||
=dev-qt/qtgui-${QT5_PV}*[-gles2-only] | ||
x11-libs/libX11 | ||
x11-libs/libXcomposite | ||
) | ||
" | ||
RDEPEND="${DEPEND}" | ||
BDEPEND="dev-util/wayland-scanner" | ||
|
||
PATCHES=( | ||
# QTBUG-97037, pending upstream: | ||
# https://invent.kde.org/qt/qt/qtwayland/-/merge_requests/71 | ||
"${FILESDIR}/${PN}-5.15.9-fix-mouse-stuck-in-pressed-state-after-DnD.patch" | ||
"${FILESDIR}/${P}-send-release-button-event-on-pointer-leave.patch" | ||
) | ||
|
||
src_configure() { | ||
local myqmakeargs=( | ||
-- | ||
$(qt_use vulkan feature-wayland-vulkan-server-buffer) | ||
$(qt_use X feature-xcomposite-egl) | ||
$(qt_use X feature-xcomposite-glx) | ||
) | ||
qt5-build_src_configure | ||
} | ||
|
||
src_install() { | ||
qt5-build_src_install | ||
rm "${D}${QT5_BINDIR}"/qtwaylandscanner || die | ||
} |