summaryrefslogtreecommitdiff
path: root/dev-qt/qtwayland
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
commit7bc9c63c9da678a7e6fceb095d56c634afd22c56 (patch)
tree4a67d50a439e9af63947e5f8b6ba3719af98b6c9 /dev-qt/qtwayland
parentb284a3168fa91a038925d2ecf5e4791011ea5e7d (diff)
gentoo resync : 15.12.2019
Diffstat (limited to 'dev-qt/qtwayland')
-rw-r--r--dev-qt/qtwayland/Manifest5
-rw-r--r--dev-qt/qtwayland/files/qtwayland-5.13.2-fix-crash.patch55
-rw-r--r--dev-qt/qtwayland/files/qtwayland-5.13.2-fix-linuxdmabuf-build.patch29
-rw-r--r--dev-qt/qtwayland/files/qtwayland-5.13.2-fix-touch-ignored.patch36
-rw-r--r--dev-qt/qtwayland/qtwayland-5.13.2-r1.ebuild (renamed from dev-qt/qtwayland/qtwayland-5.13.2.ebuild)7
5 files changed, 131 insertions, 1 deletions
diff --git a/dev-qt/qtwayland/Manifest b/dev-qt/qtwayland/Manifest
index 72d09446bdd8..deb1e55497ce 100644
--- a/dev-qt/qtwayland/Manifest
+++ b/dev-qt/qtwayland/Manifest
@@ -1,7 +1,10 @@
+AUX qtwayland-5.13.2-fix-crash.patch 2173 BLAKE2B 80e797f7ce25085cddd4d9721e61cc94c48ab7310a9cd7f357bc0e6467f759a5c313564af808d4f5d6ffd1b5231731df5a69a6c01f876be6d9e53eb73084b23b SHA512 0071413c1bac608ad7591bb6e6b329424ed3dfac6cf1826cb9cedb512df83563fa995964fffb6e0b8ca47063b52835ffa8aeaf5612dbc72c0e916bd353c03965
+AUX qtwayland-5.13.2-fix-linuxdmabuf-build.patch 1052 BLAKE2B 7b184cbc66f5dab2dc8b640ae307f647bc4aea4772a5e74c5ee2be652ed2a90d6e682c4fafb9944d027022686f2be0cc666b2266051134ad57d7194f18eb48c3 SHA512 3c1c2b13c2ff632469f0e1f6c2d642303d359368343e679726d61357d8e104c483b6b3259f5e3b11961f64257f9d10b50d0bb2aa7d166eed5ffa5aaebcf58132
+AUX qtwayland-5.13.2-fix-touch-ignored.patch 1274 BLAKE2B a643a7df480ddf24939406a6479edb10a615ce031e249325c8509140c65c1377d58d37d29056fbd92cb0b943a01c4be0ec1408c5924e3bde8d07d8a100ae8554 SHA512 abdb8201873652510615e4d4db7ec3b415ba8f4f9db5b6258a4548101a25ea46c131d8bbb7d0d615aa4de384546f3d8ba6f299fa3fde3b0fbe5427b9e48103a9
DIST qtwayland-everywhere-src-5.12.3.tar.xz 432304 BLAKE2B eb2ba520c651467c8ed5f0d870a69c9b07047cb4c05a0c889b36abeab30149861b83ca693efb0bb93dce4f5da5913afc3c8b61933ef0e8307d22b64fce530d87 SHA512 e66f9f41c15cf84165e559a1ff09e20ec21bb3f909b57fab08b0e3f8f9eeacf75d49541b499b1a6514a34d1ba5dd426ec1ce77719910588afa12cb3a7980dc90
DIST qtwayland-everywhere-src-5.12.5.tar.xz 448064 BLAKE2B e9ec631d1ec0f19cc5ef9f3c9e9e12d327da8ad896e40bb172b98191947ff20ba33b0fc747a9009d4d9147dd1cdea2d5376a12f25362bfa499eca6d0c838f2d2 SHA512 19e19b3d6226839856f8e8792665eda1f09f0bbf95a38077bdf2831205ee09254c8df6a521ba3f5a228bcd98c4d1929a2bd9e9aa2f6f14c218d4d7458d1a866c
DIST qtwayland-everywhere-src-5.13.2.tar.xz 495536 BLAKE2B eb4352d76caba9ff1d217950b8be40edee1b963a085ca129938ade0d3a68569856bc1a745951d3731c81182b341704568a5036551693cad5926a239587dd506b SHA512 5eb895c2ef8e2e72b71fed027f760913bf754da213e488a6103d9034170a6333f034b3488115a87a5a4e90761425487b9a8ab8e84a68e2e614c159d747408d53
EBUILD qtwayland-5.12.3.ebuild 1137 BLAKE2B 91803151e658e54b23668c5ae4d387a2510d26ae42fb204cd6b5e3fc9649293ea90da44cb4243c0df686d42ba29f5b4875b9c2fc193e87a3e53f9bb1d5373996 SHA512 83d2ae87f67d4937bfbe1d24ac621afe0134c307479660e35aa4a4195b8879b6e891432c7e4a93e8822ea7b44c7a024c6cf38504526dba3ed9d4bcaa33b2ac48
EBUILD qtwayland-5.12.5.ebuild 1139 BLAKE2B e60cfaa7752e389c1cbec992043903bb0f948621ea3afb6e55352de083c5b45189247451675856ae801e27cfaab6cd2ba6a8439e01c0909fe29a3dc2528a8fc8 SHA512 ffe06bcce71e01b74ee745b0a1b28b8f8c09e97461f0fca7428d6e103f3b3ef13056535a8513459a2e684041e59a4d7f9d0074325d6410fe751403cf10ad08f9
-EBUILD qtwayland-5.13.2.ebuild 1142 BLAKE2B c8c396f29cddee68c7612898769452304f3887c2c8d6037a321156fcf145c9d179eb5fc15bcb0012454a2235cfded99f0fb00ede1b8436ce699c692924b280af SHA512 26335eab9d60c8612d79d4462f3512e9b98607b756be06130fbd9d6c0b3eddb46372bc50fe410f5354d205ca33b73a5b12b1a186f8d1b03960adf1a1a3f02c1e
+EBUILD qtwayland-5.13.2-r1.ebuild 1358 BLAKE2B a793e0341d297620cc00573f81b61f8aeb5b00be7729d5c66939cd26b8d7363b1036d1bd7e66293b200b974eb03ef4d5dcfc9d7dfff6400f7491e253dcb9baf9 SHA512 4f6de1e03d17c679ed229878f297eeed2dfa689e44248230c044c2c5e97bc8c7056d2c20047c404dac04c0a9101646985ed27626dda1a5a4e00fdb0f73c5fb69
MISC metadata.xml 593 BLAKE2B a6af5855403e860ee4a4900cef3019fea4552e8c9edc02ada1de5edc467ae9a8f9d86aff6bc656c4154ddb8018c8c8599b75f92d7b766c48e05e56e37999a009 SHA512 2603bc1d30993bf0d0b94784c7dca7c2cd2d15ff5fce4ca4bbdad4b2dc65a8ab7b7bb8cf207649ca4717ca6e4caaa8c75e079db81f0598511a1355c0f325a00d
diff --git a/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-crash.patch b/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-crash.patch
new file mode 100644
index 000000000000..b4e78684bb61
--- /dev/null
+++ b/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-crash.patch
@@ -0,0 +1,55 @@
+From 962b9be7992cef672cb6307af5653c97382c334f Mon Sep 17 00:00:00 2001
+From: Johan Klokkhammer Helsing <johan.helsing@qt.io>
+Date: Fri, 1 Nov 2019 11:24:26 +0100
+Subject: [PATCH] Client: Fix crash when showing a child window with a hidden
+ parent
+
+[ChangeLog][QPA plugin] Fixed a crash when showing a window with a hidden
+parent.
+
+Now we just avoid creating the subsurface, so nothing is shown. Seems to be
+the same behavior as on xcb.
+
+Fixes: QTBUG-79674
+Change-Id: Ia46fcd9a0da5aad4704816a41515cb1e128ac65f
+Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
+---
+ src/client/qwaylanddisplay.cpp | 4 ++++
+ src/client/qwaylandwindow.cpp | 7 ++++---
+ 2 files changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/src/client/qwaylanddisplay.cpp b/src/client/qwaylanddisplay.cpp
+index 78524f6fc..27e38ccf7 100644
+--- a/src/client/qwaylanddisplay.cpp
++++ b/src/client/qwaylanddisplay.cpp
+@@ -109,6 +109,10 @@ struct ::wl_region *QWaylandDisplay::createRegion(const QRegion &qregion)
+ return nullptr;
+ }
+
++ // Make sure we don't pass NULL surfaces to libwayland (crashes)
++ Q_ASSERT(parent->object());
++ Q_ASSERT(window->object());
++
+ return mSubCompositor->get_subsurface(window->object(), parent->object());
+ }
+
+diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
+index 8d34afd1f..7098568b4 100644
+--- a/src/client/qwaylandwindow.cpp
++++ b/src/client/qwaylandwindow.cpp
+@@ -124,9 +124,10 @@ void QWaylandWindow::initWindow()
+ if (shouldCreateSubSurface()) {
+ Q_ASSERT(!mSubSurfaceWindow);
+
+- QWaylandWindow *p = static_cast<QWaylandWindow *>(QPlatformWindow::parent());
+- if (::wl_subsurface *ss = mDisplay->createSubSurface(this, p)) {
+- mSubSurfaceWindow = new QWaylandSubSurface(this, p, ss);
++ auto *parent = static_cast<QWaylandWindow *>(QPlatformWindow::parent());
++ if (parent->object()) {
++ if (::wl_subsurface *subsurface = mDisplay->createSubSurface(this, parent))
++ mSubSurfaceWindow = new QWaylandSubSurface(this, parent, subsurface);
+ }
+ } else if (shouldCreateShellSurface()) {
+ Q_ASSERT(!mShellSurface);
+--
+2.16.3
diff --git a/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-linuxdmabuf-build.patch b/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-linuxdmabuf-build.patch
new file mode 100644
index 000000000000..f9b6b6571182
--- /dev/null
+++ b/dev-qt/qtwayland/files/qtwayland-5.13.2-fix-linuxdmabuf-build.patch
@@ -0,0 +1,29 @@
+From 23ea5504200ff5f7e40bd264280a78db09c1bc5b Mon Sep 17 00:00:00 2001
+From: Johan Klokkhammer Helsing <johan.helsing@qt.io>
+Date: Fri, 8 Nov 2019 13:58:04 +0100
+Subject: [PATCH] WIP: Fix compilation of linuxdmabuf compositor plugin
+
+WIP, because I'm not sure if this is the way to go, but it fixes
+compilation on my machine.
+
+Fixes: QTBUG-79709
+Change-Id: I3190ef56e0e162636efea440dff7e760cf11fcd0
+---
+ .../compositor/linux-dmabuf-unstable-v1/linuxdmabuf.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/hardwareintegration/compositor/linux-dmabuf-unstable-v1/linuxdmabuf.h b/src/hardwareintegration/compositor/linux-dmabuf-unstable-v1/linuxdmabuf.h
+index 2abc2ce6b..d1f4a3039 100644
+--- a/src/hardwareintegration/compositor/linux-dmabuf-unstable-v1/linuxdmabuf.h
++++ b/src/hardwareintegration/compositor/linux-dmabuf-unstable-v1/linuxdmabuf.h
+@@ -53,6 +53,7 @@
+
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
++#include <EGL/eglmesaext.h>
+
+ // compatibility with libdrm <= 2.4.74
+ #ifndef DRM_FORMAT_RESERVED
+--
+2.16.3
+
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 000000000000..4a33d97bf17e
--- /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.ebuild b/dev-qt/qtwayland/qtwayland-5.13.2-r1.ebuild
index ac4fdc112362..5cc773676a7c 100644
--- a/dev-qt/qtwayland/qtwayland-5.13.2.ebuild
+++ b/dev-qt/qtwayland/qtwayland-5.13.2-r1.ebuild
@@ -26,6 +26,13 @@ DEPEND="
"
RDEPEND="${DEPEND}"
+PATCHES=(
+ "${FILESDIR}/${P}-fix-touch-ignored.patch" # QTBUG-79744
+ "${FILESDIR}/${P}-fix-crash.patch" # QTBUG-79674
+ # Pending upstream:
+ "${FILESDIR}/${P}-fix-linuxdmabuf-build.patch" # bug 699190, QTBUG-79709
+)
+
src_prepare() {
qt_use_disable_config libinput xkbcommon-evdev \
src/client/client.pro \