public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtwayland/, dev-qt/qtwayland/files/
Date: Wed, 20 Nov 2019 21:21:24 +0000 (UTC)	[thread overview]
Message-ID: <1574284841.67717e9236ac04143c28b36b41acb39a3e9dc5c0.asturm@gentoo> (raw)

commit:     67717e9236ac04143c28b36b41acb39a3e9dc5c0
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 16 10:56:29 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Nov 20 21:20:41 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67717e92

dev-qt/qtwayland: Fix touch ignored if down and motion in same frame

Package-Manager: Portage-2.3.79, Repoman-2.3.17
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/qtwayland-5.13.2-fix-touch-ignored.patch | 36 +++++++++++++++++
 dev-qt/qtwayland/qtwayland-5.13.2-r1.ebuild        | 47 ++++++++++++++++++++++
 2 files changed, 83 insertions(+)

diff --git a/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-touch-ignored.patch b/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-touch-ignored.patch
new file mode 100644
index 00000000000..4a33d97bf17
--- /dev/null
+++ b/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-touch-ignored.patch
@@ -0,0 +1,36 @@
+From 57c28f461a066c03ef8ae3f823c040fa91876fb8 Mon Sep 17 00:00:00 2001
+From: Johan Klokkhammer Helsing <johan.helsing@qt.io>
+Date: Mon, 4 Nov 2019 14:21:18 +0100
+Subject: [PATCH] Fix touch being ignored when down and motion are in the same
+ frame
+
+The Wayland protocol gives no guarantees about which events are part of a
+frame, so handle the case where we receive wl_touch.down and wl_touch.motion
+within the same frame.
+
+Fixes: QTBUG-79744
+Change-Id: I5dd9302576d81da38e003c8e7e74da6a98def603
+Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
+---
+ src/client/qwaylandinputdevice.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp
+index 8f3df8e4d..193ce714b 100644
+--- a/src/client/qwaylandinputdevice.cpp
++++ b/src/client/qwaylandinputdevice.cpp
+@@ -1062,7 +1062,10 @@ void QWaylandInputDevice::handleTouchPoint(int id, Qt::TouchPointState state, co
+         tp.area.moveCenter(globalPosition);
+     }
+ 
+-    tp.state = state;
++    // If the touch point was pressed earlier this frame, we don't want to overwrite its state.
++    if (tp.state != Qt::TouchPointPressed)
++        tp.state = state;
++
+     tp.pressure = tp.state == Qt::TouchPointReleased ? 0 : 1;
+ }
+ 
+-- 
+2.16.3
+

diff --git a/dev-qt/qtwayland/qtwayland-5.13.2-r1.ebuild b/dev-qt/qtwayland/qtwayland-5.13.2-r1.ebuild
new file mode 100644
index 00000000000..23b38b6f8d7
--- /dev/null
+++ b/dev-qt/qtwayland/qtwayland-5.13.2-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit qt5-build
+
+DESCRIPTION="Wayland platform plugin for Qt"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+	KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="+libinput xcomposite"
+
+DEPEND="
+	>=dev-libs/wayland-1.6.0
+	~dev-qt/qtcore-${PV}
+	~dev-qt/qtdeclarative-${PV}
+	~dev-qt/qtgui-${PV}[egl,libinput=]
+	media-libs/mesa[egl]
+	>=x11-libs/libxkbcommon-0.2.0
+	xcomposite? (
+		x11-libs/libX11
+		x11-libs/libXcomposite
+	)
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+	"${FILESDIR}/${P}-fix-touch-ignored.patch" # QTBUG-79744
+)
+
+src_prepare() {
+	qt_use_disable_config libinput xkbcommon-evdev \
+		src/client/client.pro \
+		src/compositor/wayland_wrapper/wayland_wrapper.pri \
+		src/plugins/shellintegration/ivi-shell/ivi-shell.pro \
+		src/plugins/shellintegration/wl-shell/wl-shell.pro \
+		src/plugins/shellintegration/xdg-shell/xdg-shell.pro \
+		src/plugins/shellintegration/xdg-shell-v5/xdg-shell-v5.pro \
+		src/plugins/shellintegration/xdg-shell-v6/xdg-shell-v6.pro \
+		tests/auto/compositor/compositor/compositor.pro
+
+	use xcomposite || rm -r config.tests/xcomposite || die
+
+	qt5-build_src_prepare
+}


             reply	other threads:[~2019-11-20 21:21 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-20 21:21 Andreas Sturmlechner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2019-12-18 15:41 [gentoo-commits] repo/gentoo:master commit in: dev-qt/qtwayland/, dev-qt/qtwayland/files/ Andreas Sturmlechner
2021-01-07 16:31 Andreas Sturmlechner
2021-12-10 13:19 Andreas Sturmlechner
2022-01-22 12:20 Andreas Sturmlechner
2022-03-21 11:04 Andreas Sturmlechner
2022-03-21 11:27 Andreas Sturmlechner
2022-04-17 19:29 Sam James
2023-03-08 11:07 Andreas Sturmlechner
2023-03-09 15:02 Andreas Sturmlechner
2023-06-13 11:42 Andreas Sturmlechner
2023-08-08 20:22 Andreas Sturmlechner
2023-08-16 16:31 Andreas Sturmlechner
2023-08-17 23:21 Ionen Wolkens
2023-11-15 19:28 Ionen Wolkens
2024-07-16 17:55 Ionen Wolkens
2024-10-08 17:46 Ionen Wolkens
2025-01-06 22:51 Ionen Wolkens
2025-02-27 11:56 Ionen Wolkens

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1574284841.67717e9236ac04143c28b36b41acb39a3e9dc5c0.asturm@gentoo \
    --to=asturm@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox