5.15.10
This commit is contained in:
parent
e28cdd45e6
commit
7d96c3c45e
1
.gitignore
vendored
1
.gitignore
vendored
@ -17,3 +17,4 @@
|
|||||||
/qtwayland-everywhere-opensource-src-5.15.7.tar.xz
|
/qtwayland-everywhere-opensource-src-5.15.7.tar.xz
|
||||||
/qtwayland-everywhere-opensource-src-5.15.8.tar.xz
|
/qtwayland-everywhere-opensource-src-5.15.8.tar.xz
|
||||||
/qtwayland-everywhere-opensource-src-5.15.9.tar.xz
|
/qtwayland-everywhere-opensource-src-5.15.9.tar.xz
|
||||||
|
/qtwayland-everywhere-opensource-src-5.15.10.tar.xz
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 4ddf70b1ed7c5baddef41c549d04917b9dec7d0f Mon Sep 17 00:00:00 2001
|
From d7ea7592e47828d2f806bb372db705a1f3b9f948 Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Wed, 5 May 2021 20:49:26 +0300
|
Date: Wed, 5 May 2021 20:49:26 +0300
|
||||||
Subject: [PATCH 01/55] Client: Announce an output after receiving more
|
Subject: [PATCH 01/51] Client: Announce an output after receiving more
|
||||||
complete state
|
complete state
|
||||||
|
|
||||||
Output initialization is not atomic, meaning that the compositor may
|
Output initialization is not atomic, meaning that the compositor may
|
||||||
@ -142,5 +142,5 @@ index df1c94f2..050cfdc0 100644
|
|||||||
|
|
||||||
#if QT_CONFIG(cursor)
|
#if QT_CONFIG(cursor)
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From a9bcc5dc553b5a307a5bdcb6e1d92058e0257c7c Mon Sep 17 00:00:00 2001
|
From e08bb6ed336b4bd2f3e85b0d2f43f1b49cdaf7b0 Mon Sep 17 00:00:00 2001
|
||||||
From: Jaeyoon Jung <jaeyoon.jung@lge.com>
|
From: Jaeyoon Jung <jaeyoon.jung@lge.com>
|
||||||
Date: Mon, 15 Feb 2021 08:31:06 +0900
|
Date: Mon, 15 Feb 2021 08:31:06 +0900
|
||||||
Subject: [PATCH 02/55] Fix issue with repeated window size changes
|
Subject: [PATCH 02/51] Fix issue with repeated window size changes
|
||||||
|
|
||||||
Check if the new window size is different from the size requested
|
Check if the new window size is different from the size requested
|
||||||
previously before calling wl_egl_window_resize. It addresses the issue
|
previously before calling wl_egl_window_resize. It addresses the issue
|
||||||
@ -54,5 +54,5 @@ index 6c8f04ec..94c56325 100644
|
|||||||
|
|
||||||
}
|
}
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From eb8e933841d66f0ebe071a170a9af995c2b07b0d Mon Sep 17 00:00:00 2001
|
From 40965d23e170cb02b184cda5962352acd415542e Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Tue, 9 Feb 2021 16:09:21 +0000
|
Date: Tue, 9 Feb 2021 16:09:21 +0000
|
||||||
Subject: [PATCH 03/55] Client: Connect drags being accepted to updating the
|
Subject: [PATCH 03/51] Client: Connect drags being accepted to updating the
|
||||||
source drag icon
|
source drag icon
|
||||||
|
|
||||||
Currently in a multi-process drag and drop when the other client accepts
|
Currently in a multi-process drag and drop when the other client accepts
|
||||||
@ -35,5 +35,5 @@ index 7e2e3308..bbd2d568 100644
|
|||||||
start_drag(m_dragSource->object(), origin->wlSurface(), icon->wlSurface(), m_display->currentInputDevice()->serial());
|
start_drag(m_dragSource->object(), origin->wlSurface(), icon->wlSurface(), m_display->currentInputDevice()->serial());
|
||||||
return true;
|
return true;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 9d16197f5e888b68cdf98165f46dcc9ac4dd9820 Mon Sep 17 00:00:00 2001
|
From 1474fd12afbc6c9850872801c70252c425d4280b Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Fri, 14 May 2021 13:23:24 +0100
|
Date: Fri, 14 May 2021 13:23:24 +0100
|
||||||
Subject: [PATCH 04/55] Client: Disconnect registry listener on destruction
|
Subject: [PATCH 04/51] Client: Disconnect registry listener on destruction
|
||||||
|
|
||||||
If a display outlives a QWaylandClientExtension and a new global is
|
If a display outlives a QWaylandClientExtension and a new global is
|
||||||
announced we end up delivering an event to a now deleted extension which
|
announced we end up delivering an event to a now deleted extension which
|
||||||
@ -45,5 +45,5 @@ index 98272e57..5bd28398 100644
|
|||||||
QtWaylandClient::QWaylandIntegration *integration() const;
|
QtWaylandClient::QWaylandIntegration *integration() const;
|
||||||
int version() const;
|
int version() const;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 8256c6d8bb0f456ad27031bad1cce916c0c29740 Mon Sep 17 00:00:00 2001
|
From f5e0a5773064636b6802a4f8f7fb0cb3cec46a68 Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Mon, 3 May 2021 23:01:53 +0100
|
Date: Mon, 3 May 2021 23:01:53 +0100
|
||||||
Subject: [PATCH 05/55] Client: Set XdgShell size hints before the first commit
|
Subject: [PATCH 05/51] Client: Set XdgShell size hints before the first commit
|
||||||
|
|
||||||
propagateSizeHints is only called in QWindow we have platform window and
|
propagateSizeHints is only called in QWindow we have platform window and
|
||||||
minimumSizeHint is then sent. We also need to send existing hints when
|
minimumSizeHint is then sent. We also need to send existing hints when
|
||||||
@ -20,7 +20,7 @@ Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
|
|||||||
2 files changed, 2 insertions(+), 3 deletions(-)
|
2 files changed, 2 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
index f50e1c0e..1f51562b 100644
|
index fa9c01aa..c3d2d3ea 100644
|
||||||
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
@@ -105,8 +105,6 @@ void QWaylandXdgSurface::Toplevel::applyConfigure()
|
@@ -105,8 +105,6 @@ void QWaylandXdgSurface::Toplevel::applyConfigure()
|
||||||
@ -32,7 +32,7 @@ index f50e1c0e..1f51562b 100644
|
|||||||
m_applied = m_pending;
|
m_applied = m_pending;
|
||||||
qCDebug(lcQpaWayland) << "Applied pending xdg_toplevel configure event:" << m_applied.size << m_applied.states;
|
qCDebug(lcQpaWayland) << "Applied pending xdg_toplevel configure event:" << m_applied.size << m_applied.states;
|
||||||
}
|
}
|
||||||
@@ -257,6 +255,7 @@ QWaylandXdgSurface::QWaylandXdgSurface(QWaylandXdgShell *shell, ::xdg_surface *s
|
@@ -267,6 +265,7 @@ QWaylandXdgSurface::QWaylandXdgSurface(QWaylandXdgShell *shell, ::xdg_surface *s
|
||||||
m_toplevel->set_parent(parentXdgSurface->m_toplevel->object());
|
m_toplevel->set_parent(parentXdgSurface->m_toplevel->object());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -54,5 +54,5 @@ index 2277bbb8..2fdd0a7c 100644
|
|||||||
QCOMPOSITOR_TRY_COMPARE(xdgToplevel()->m_committed.minSize, QSize(100, 100));
|
QCOMPOSITOR_TRY_COMPARE(xdgToplevel()->m_committed.minSize, QSize(100, 100));
|
||||||
QCOMPOSITOR_TRY_COMPARE(xdgToplevel()->m_committed.maxSize, QSize(1000, 1000));
|
QCOMPOSITOR_TRY_COMPARE(xdgToplevel()->m_committed.maxSize, QSize(1000, 1000));
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From bea02a7b4bce8cc3b2a7bce10c53fccc9aedef1e Mon Sep 17 00:00:00 2001
|
From 27108c290bf0f12bb032827e5c01cc94e330d547 Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Mon, 14 Jun 2021 12:45:37 +0100
|
Date: Mon, 14 Jun 2021 12:45:37 +0100
|
||||||
Subject: [PATCH 06/55] Fix build
|
Subject: [PATCH 06/51] Fix build
|
||||||
|
|
||||||
1b5e43a593e917610e6245f7a272ac081c508ba4 relied on a patch that we can't
|
1b5e43a593e917610e6245f7a272ac081c508ba4 relied on a patch that we can't
|
||||||
backport.
|
backport.
|
||||||
@ -42,5 +42,5 @@ index 69cc46a0..9091efbe 100644
|
|||||||
|
|
||||||
class Q_WAYLAND_CLIENT_EXPORT QWaylandClientExtensionTemplatePrivate : public QWaylandClientExtensionPrivate
|
class Q_WAYLAND_CLIENT_EXPORT QWaylandClientExtensionTemplatePrivate : public QWaylandClientExtensionPrivate
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 418580420c34c1a81fd5a4d872e41dc467c124d0 Mon Sep 17 00:00:00 2001
|
From 07a83b80d7c1b90146d9c6b6339bf4e730ca50b9 Mon Sep 17 00:00:00 2001
|
||||||
From: Zhang Liang <zhanglianga@uniontech.com>
|
From: Zhang Liang <zhanglianga@uniontech.com>
|
||||||
Date: Mon, 1 Feb 2021 19:29:43 +0800
|
Date: Mon, 1 Feb 2021 19:29:43 +0800
|
||||||
Subject: [PATCH 07/55] Fix: remove listener
|
Subject: [PATCH 07/51] Fix: remove listener
|
||||||
|
|
||||||
Add the operation for removing the listener form listener list
|
Add the operation for removing the listener form listener list
|
||||||
|
|
||||||
@ -29,5 +29,5 @@ index 78e387bc..280e63bd 100644
|
|||||||
|
|
||||||
uint32_t QWaylandDisplay::currentTimeMillisec()
|
uint32_t QWaylandDisplay::currentTimeMillisec()
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 0bd8b57955c74fd7cadc3ceb1409c1705208f91e Mon Sep 17 00:00:00 2001
|
From 218aa4f1fb91a1dfe892111a45376091dd34ec06 Mon Sep 17 00:00:00 2001
|
||||||
From: David Redondo <qt@david-redondo.de>
|
From: David Redondo <qt@david-redondo.de>
|
||||||
Date: Wed, 26 May 2021 14:49:40 +0200
|
Date: Wed, 26 May 2021 14:49:40 +0200
|
||||||
Subject: [PATCH 08/55] Hook up queryKeyboardModifers
|
Subject: [PATCH 08/51] Hook up queryKeyboardModifers
|
||||||
|
|
||||||
Can be useful when upon enter a modifiers event is received but no key
|
Can be useful when upon enter a modifiers event is received but no key
|
||||||
event so no QKeyEvent is generated.
|
event so no QKeyEvent is generated.
|
||||||
@ -51,5 +51,5 @@ index ff70ae25..73b80658 100644
|
|||||||
|
|
||||||
QStringList themeNames() const override;
|
QStringList themeNames() const override;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 046a799372b78ab843b26c2312bb563c0d50adcb Mon Sep 17 00:00:00 2001
|
From cedb1d0987486f0162d8a10defb3705f5e3b3a45 Mon Sep 17 00:00:00 2001
|
||||||
From: Jan Blackquill <uhhadd@gmail.com>
|
From: Jan Blackquill <uhhadd@gmail.com>
|
||||||
Date: Tue, 24 Aug 2021 14:36:34 -0400
|
Date: Tue, 24 Aug 2021 14:36:34 -0400
|
||||||
Subject: [PATCH 09/55] Correctly detect if image format is supported by
|
Subject: [PATCH 09/51] Correctly detect if image format is supported by
|
||||||
QImageWriter
|
QImageWriter
|
||||||
|
|
||||||
The code queries potential image formats by stripping a mimetype of its
|
The code queries potential image formats by stripping a mimetype of its
|
||||||
@ -64,5 +64,5 @@ index a5fdd34d..051a91dc 100644
|
|||||||
fmt = imgFmt;
|
fmt = imgFmt;
|
||||||
}
|
}
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 3bb880d6b828f934f69608af958963c9eedc4e74 Mon Sep 17 00:00:00 2001
|
From 39f76fba46ff2a6bd4aca6c2abea501d56bed62e Mon Sep 17 00:00:00 2001
|
||||||
From: Georges Basile Stavracas Neto <gbsneto@gnome.org>
|
From: Georges Basile Stavracas Neto <gbsneto@gnome.org>
|
||||||
Date: Thu, 27 May 2021 19:55:04 -0300
|
Date: Thu, 27 May 2021 19:55:04 -0300
|
||||||
Subject: [PATCH 10/55] Client: Don't always recreate frame callbacks
|
Subject: [PATCH 10/51] Client: Don't always recreate frame callbacks
|
||||||
|
|
||||||
The main QWaylandWindow method that is executed when handling updates is
|
The main QWaylandWindow method that is executed when handling updates is
|
||||||
QWaylandWindow::handleUpdate(). This method always, unconditionally queues
|
QWaylandWindow::handleUpdate(). This method always, unconditionally queues
|
||||||
@ -73,5 +73,5 @@ index 2fdd0a7c..e2593314 100644
|
|||||||
|
|
||||||
void tst_xdgshell::popup()
|
void tst_xdgshell::popup()
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From a0ab21120ae0d0976d1c554aa72f00d4b3d35de9 Mon Sep 17 00:00:00 2001
|
From c9cd53f50c71af26278589b1477c8d800c776ac1 Mon Sep 17 00:00:00 2001
|
||||||
From: Georges Basile Stavracas Neto <gbsneto@gnome.org>
|
From: Georges Basile Stavracas Neto <gbsneto@gnome.org>
|
||||||
Date: Thu, 27 May 2021 20:02:53 -0300
|
Date: Thu, 27 May 2021 20:02:53 -0300
|
||||||
Subject: [PATCH 11/55] Client: Always destroy frame callback in the actual
|
Subject: [PATCH 11/51] Client: Always destroy frame callback in the actual
|
||||||
callback
|
callback
|
||||||
|
|
||||||
It's good hygiene to destroy all frame callbacks. Destroy the
|
It's good hygiene to destroy all frame callbacks. Destroy the
|
||||||
@ -54,5 +54,5 @@ index 23816895..d3f28d68 100644
|
|||||||
struct ::wl_surface *wrappedSurface = reinterpret_cast<struct ::wl_surface *>(wl_proxy_create_wrapper(mSurface->object()));
|
struct ::wl_surface *wrappedSurface = reinterpret_cast<struct ::wl_surface *>(wl_proxy_create_wrapper(mSurface->object()));
|
||||||
wl_proxy_set_queue(reinterpret_cast<wl_proxy *>(wrappedSurface), mFrameQueue.queue);
|
wl_proxy_set_queue(reinterpret_cast<wl_proxy *>(wrappedSurface), mFrameQueue.queue);
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From d40acfcc33ae9f8d105f196d1af03a640a02db0b Mon Sep 17 00:00:00 2001
|
From 398c131a02d48fc9f538951f08caa93dccd03a1a Mon Sep 17 00:00:00 2001
|
||||||
From: =?UTF-8?q?M=C3=A9ven=20Car?= <meven.car@enioka.com>
|
From: =?UTF-8?q?M=C3=A9ven=20Car?= <meven.car@enioka.com>
|
||||||
Date: Wed, 18 Aug 2021 18:28:20 +0200
|
Date: Wed, 18 Aug 2021 18:28:20 +0200
|
||||||
Subject: [PATCH 12/55] Wayland client: use wl_keyboard to determine active
|
Subject: [PATCH 12/51] Wayland client: use wl_keyboard to determine active
|
||||||
state
|
state
|
||||||
|
|
||||||
Commit f497a5bb87270174b8e0106b7eca1992d44ff15d made QWaylandDisplay
|
Commit f497a5bb87270174b8e0106b7eca1992d44ff15d made QWaylandDisplay
|
||||||
@ -234,7 +234,7 @@ index 261f8cbb..c1bcd5c6 100644
|
|||||||
private:
|
private:
|
||||||
QScopedPointer<QWaylandXdgShellV6> m_xdgShell;
|
QScopedPointer<QWaylandXdgShellV6> m_xdgShell;
|
||||||
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
index 1f51562b..b7383e19 100644
|
index c3d2d3ea..9a362b74 100644
|
||||||
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
@@ -67,11 +67,6 @@ QWaylandXdgSurface::Toplevel::Toplevel(QWaylandXdgSurface *xdgSurface)
|
@@ -67,11 +67,6 @@ QWaylandXdgSurface::Toplevel::Toplevel(QWaylandXdgSurface *xdgSurface)
|
||||||
@ -337,5 +337,5 @@ index e2593314..73d1eb9c 100644
|
|||||||
const QSize screenSize(640, 480);
|
const QSize screenSize(640, 480);
|
||||||
const uint maximizedSerial = exec([=] {
|
const uint maximizedSerial = exec([=] {
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 23327bb4cdc00b47e0f96efca2fe494540f01601 Mon Sep 17 00:00:00 2001
|
From 4cbf15b311fd9b00b28205e474c4b31a92ab819d Mon Sep 17 00:00:00 2001
|
||||||
From: Jan Grulich <jgrulich@redhat.com>
|
From: Jan Grulich <jgrulich@redhat.com>
|
||||||
Date: Fri, 16 Jul 2021 13:00:03 +0200
|
Date: Fri, 16 Jul 2021 13:00:03 +0200
|
||||||
Subject: [PATCH 13/55] Client: do not empty clipboard when a new popup/window
|
Subject: [PATCH 13/51] Client: do not empty clipboard when a new popup/window
|
||||||
is opened
|
is opened
|
||||||
|
|
||||||
If we open a new popup or a window within the same app we have to avoid
|
If we open a new popup or a window within the same app we have to avoid
|
||||||
@ -64,5 +64,5 @@ index e931d1f5..5d704795 100644
|
|||||||
mRepeatTimer.stop();
|
mRepeatTimer.stop();
|
||||||
}
|
}
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From e0e004c77140da5e454dadf4d6809c1603b5735d Mon Sep 17 00:00:00 2001
|
From 52f362f8dfd27a65cdee945ba923ae30521ab922 Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Tue, 16 Feb 2021 09:51:47 +0000
|
Date: Tue, 16 Feb 2021 09:51:47 +0000
|
||||||
Subject: [PATCH 14/55] Client: Implement DataDeviceV3
|
Subject: [PATCH 14/51] Client: Implement DataDeviceV3
|
||||||
|
|
||||||
DataDeviceV2 fixes a leak of DataDevice resources.
|
DataDeviceV2 fixes a leak of DataDevice resources.
|
||||||
|
|
||||||
@ -509,5 +509,5 @@ index 1568b3b9..067410d0 100644
|
|||||||
class DataDeviceCompositor : public DefaultCompositor {
|
class DataDeviceCompositor : public DefaultCompositor {
|
||||||
public:
|
public:
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From f3900786ebe46aefbecbb2a37cb175846ca0dfc2 Mon Sep 17 00:00:00 2001
|
From b29079669153d7b1894fc13b2cd8c6de1ad5471a Mon Sep 17 00:00:00 2001
|
||||||
From: Arjen Hiemstra <ahiemstra@heimr.nl>
|
From: Arjen Hiemstra <ahiemstra@heimr.nl>
|
||||||
Date: Thu, 18 Nov 2021 13:05:30 +0100
|
Date: Thu, 18 Nov 2021 13:05:30 +0100
|
||||||
Subject: [PATCH 15/55] Client: Delay deletion of QDrag object until after
|
Subject: [PATCH 15/51] Client: Delay deletion of QDrag object until after
|
||||||
we're done with it
|
we're done with it
|
||||||
|
|
||||||
In certain cases, most notably when performing drag and drop operations
|
In certain cases, most notably when performing drag and drop operations
|
||||||
@ -63,5 +63,5 @@ index 747f0190..46f629ac 100644
|
|||||||
private:
|
private:
|
||||||
QWaylandDisplay *m_display = nullptr;
|
QWaylandDisplay *m_display = nullptr;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 9edd2a05c79a1c40867440826c830c76136152da Mon Sep 17 00:00:00 2001
|
From fde475c6e235429e7af64a54b9d81e893c618af7 Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Sun, 14 Nov 2021 13:54:19 +0000
|
Date: Sun, 14 Nov 2021 13:54:19 +0000
|
||||||
Subject: [PATCH 16/55] Client: Avoid processing of events when showing windows
|
Subject: [PATCH 16/51] Client: Avoid processing of events when showing windows
|
||||||
|
|
||||||
The only time we want to dispatch events from the wayland socket is when
|
The only time we want to dispatch events from the wayland socket is when
|
||||||
the application is waiting for external events. Doing so at any other
|
the application is waiting for external events. Doing so at any other
|
||||||
@ -34,5 +34,5 @@ index b363c352..b98435ed 100644
|
|||||||
setGeometry(windowGeometry());
|
setGeometry(windowGeometry());
|
||||||
// Don't flush the events here, or else the newly visible window may start drawing, but since
|
// Don't flush the events here, or else the newly visible window may start drawing, but since
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 5889bb845d951a7877201bca97ffe4bb2491d966 Mon Sep 17 00:00:00 2001
|
From f22c2639663d9b9010fd79a5873e11a716106b65 Mon Sep 17 00:00:00 2001
|
||||||
From: Elvis Lee <kwangwoong.lee@lge.com>
|
From: Elvis Lee <kwangwoong.lee@lge.com>
|
||||||
Date: Thu, 18 Feb 2021 15:45:49 +0900
|
Date: Thu, 18 Feb 2021 15:45:49 +0900
|
||||||
Subject: [PATCH 17/55] Handle registry_global out of constructor
|
Subject: [PATCH 17/51] Handle registry_global out of constructor
|
||||||
|
|
||||||
Factory functions in QWaylandDisplay::registry_global() can be overridden.
|
Factory functions in QWaylandDisplay::registry_global() can be overridden.
|
||||||
Later, other classes instantiated in the registry_global can support
|
Later, other classes instantiated in the registry_global can support
|
||||||
@ -81,5 +81,5 @@ index cd8569b1..8afecb31 100644
|
|||||||
mDisplay->ensureScreen();
|
mDisplay->ensureScreen();
|
||||||
}
|
}
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 2e03c3b47fa91eb8db5b9a635c2f9dca2b4f5158 Mon Sep 17 00:00:00 2001
|
From 192b3af086ecca973109be4e169a601af434239a Mon Sep 17 00:00:00 2001
|
||||||
From: Elvis Lee <kwangwoong.lee@lge.com>
|
From: Elvis Lee <kwangwoong.lee@lge.com>
|
||||||
Date: Wed, 17 Mar 2021 16:31:10 +0900
|
Date: Wed, 17 Mar 2021 16:31:10 +0900
|
||||||
Subject: [PATCH 18/55] Connect flushRequest after forceRoundTrip
|
Subject: [PATCH 18/51] Connect flushRequest after forceRoundTrip
|
||||||
|
|
||||||
If flushRequest is connected with aboutToBlock, the flushRequest
|
If flushRequest is connected with aboutToBlock, the flushRequest
|
||||||
may consumes all events so that processEvents might be blocked in forceRoundTrip.
|
may consumes all events so that processEvents might be blocked in forceRoundTrip.
|
||||||
@ -43,5 +43,5 @@ index 8afecb31..661cea53 100644
|
|||||||
mDisplay->ensureScreen();
|
mDisplay->ensureScreen();
|
||||||
}
|
}
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From d89cc9deab3f61cacfad71e8aa32d83d421d49da Mon Sep 17 00:00:00 2001
|
From 965fc31b57176d7d913d90465a857c285abd0a59 Mon Sep 17 00:00:00 2001
|
||||||
From: Adrien Faveraux <af@brain-networks.fr>
|
From: Adrien Faveraux <af@brain-networks.fr>
|
||||||
Date: Fri, 26 Nov 2021 09:18:58 +0100
|
Date: Fri, 26 Nov 2021 09:18:58 +0100
|
||||||
Subject: [PATCH 19/55] Move the wayland socket polling to a separate event
|
Subject: [PATCH 19/51] Move the wayland socket polling to a separate event
|
||||||
thread
|
thread
|
||||||
|
|
||||||
New event threads is introduced which calls poll() on the wayland fd,
|
New event threads is introduced which calls poll() on the wayland fd,
|
||||||
@ -570,5 +570,5 @@ index fb3ed606..54ac67a9 100644
|
|||||||
|
|
||||||
// True when we have called deliverRequestUpdate, but the client has not yet attached a new buffer
|
// True when we have called deliverRequestUpdate, but the client has not yet attached a new buffer
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 58c67c6e8f2d94cef7f8eec072ebad031769e144 Mon Sep 17 00:00:00 2001
|
From 39f6f824e660c36b2865bf55f9ea609aaa02697e Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Tue, 1 Feb 2022 13:05:36 +0200
|
Date: Tue, 1 Feb 2022 13:05:36 +0200
|
||||||
Subject: [PATCH 20/55] Client: Remove mWaitingForUpdateDelivery
|
Subject: [PATCH 20/51] Client: Remove mWaitingForUpdateDelivery
|
||||||
|
|
||||||
Currently, mWaitingForUpdateDelivery is shared between the main thread
|
Currently, mWaitingForUpdateDelivery is shared between the main thread
|
||||||
(doHandleFrameCallback()) and the frame callback event thread
|
(doHandleFrameCallback()) and the frame callback event thread
|
||||||
@ -75,5 +75,5 @@ index 54ac67a9..cf7ce879 100644
|
|||||||
QElapsedTimer mFrameCallbackElapsedTimer;
|
QElapsedTimer mFrameCallbackElapsedTimer;
|
||||||
struct ::wl_callback *mFrameCallback = nullptr;
|
struct ::wl_callback *mFrameCallback = nullptr;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 71a1a9791df20307dd4eb688b0957d0f695823c5 Mon Sep 17 00:00:00 2001
|
From 89b396cbef7c8fb7041d3a13d952d468c5c57e56 Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Wed, 9 Feb 2022 17:20:48 +0000
|
Date: Wed, 9 Feb 2022 17:20:48 +0000
|
||||||
Subject: [PATCH 21/55] client: Simplify round trip behavior
|
Subject: [PATCH 21/51] client: Simplify round trip behavior
|
||||||
|
|
||||||
The custom event queue was removed in
|
The custom event queue was removed in
|
||||||
302d4ffb8549214eb4028dc3e47ec4ee4e12ffbd (2015) so the comment about not
|
302d4ffb8549214eb4028dc3e47ec4ee4e12ffbd (2015) so the comment about not
|
||||||
@ -78,5 +78,5 @@ index ebcdbd22..d371ffec 100644
|
|||||||
|
|
||||||
bool QWaylandDisplay::supportsWindowDecoration() const
|
bool QWaylandDisplay::supportsWindowDecoration() const
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From f584a8350503e349669744a1587634431ac0dc82 Mon Sep 17 00:00:00 2001
|
From 0cf12729a90380d3ef11efebfbfa9458c397d592 Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Sat, 19 Feb 2022 17:01:04 +0200
|
Date: Sat, 19 Feb 2022 17:01:04 +0200
|
||||||
Subject: [PATCH 22/55] Client: Fix opaque region setter
|
Subject: [PATCH 22/51] Client: Fix opaque region setter
|
||||||
|
|
||||||
The rect is in the global coordinate system, while the opaque region
|
The rect is in the global coordinate system, while the opaque region
|
||||||
must be in the surface local coordinate system.
|
must be in the surface local coordinate system.
|
||||||
@ -27,5 +27,5 @@ index de5af1bd..69319228 100644
|
|||||||
|
|
||||||
void QWaylandWindow::resizeFromApplyConfigure(const QSize &sizeWithMargins, const QPoint &offset)
|
void QWaylandWindow::resizeFromApplyConfigure(const QSize &sizeWithMargins, const QPoint &offset)
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From a9831916ac5463682b7a27db3ffcadfe0ea07ab9 Mon Sep 17 00:00:00 2001
|
From 1ab149c13af4806ef950487e2d9db8a937645791 Mon Sep 17 00:00:00 2001
|
||||||
From: Fabian Vogt <fabian@ritter-vogt.de>
|
From: Fabian Vogt <fabian@ritter-vogt.de>
|
||||||
Date: Fri, 4 Feb 2022 11:07:36 +0100
|
Date: Fri, 4 Feb 2022 11:07:36 +0100
|
||||||
Subject: [PATCH 23/55] Use proper dependencies in compile tests
|
Subject: [PATCH 23/51] Use proper dependencies in compile tests
|
||||||
|
|
||||||
Use the dependencies as found by the "libraries" section instead of relying
|
Use the dependencies as found by the "libraries" section instead of relying
|
||||||
on them being available in the default location (e.g. "-ldrm").
|
on them being available in the default location (e.g. "-ldrm").
|
||||||
@ -122,5 +122,5 @@ index bcfd5215..da95d07b 100644
|
|||||||
},
|
},
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From c6639e225f45564def8f6729c83887ab73495e59 Mon Sep 17 00:00:00 2001
|
From 16d52e9ad900a25a02ff4eae43cc7d7e43dbad8a Mon Sep 17 00:00:00 2001
|
||||||
From: Paul Olav Tvete <paul.tvete@qt.io>
|
From: Paul Olav Tvete <paul.tvete@qt.io>
|
||||||
Date: Tue, 15 Mar 2022 15:59:15 +0100
|
Date: Tue, 15 Mar 2022 15:59:15 +0100
|
||||||
Subject: [PATCH 24/55] Revert "Client: Remove mWaitingForUpdateDelivery"
|
Subject: [PATCH 24/51] Revert "Client: Remove mWaitingForUpdateDelivery"
|
||||||
|
|
||||||
The reverted commit introduces a severe performance regression
|
The reverted commit introduces a severe performance regression
|
||||||
when a client window is resized while a QtQuick renderthread
|
when a client window is resized while a QtQuick renderthread
|
||||||
@ -55,5 +55,5 @@ index cf7ce879..54ac67a9 100644
|
|||||||
QElapsedTimer mFrameCallbackElapsedTimer;
|
QElapsedTimer mFrameCallbackElapsedTimer;
|
||||||
struct ::wl_callback *mFrameCallback = nullptr;
|
struct ::wl_callback *mFrameCallback = nullptr;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 2c403a8522db9aa6a9f365dba5f8ef5af205295c Mon Sep 17 00:00:00 2001
|
From 2a7884f0d51d4da20e675640b8d987004c9d77c5 Mon Sep 17 00:00:00 2001
|
||||||
From: Paul Olav Tvete <paul.tvete@qt.io>
|
From: Paul Olav Tvete <paul.tvete@qt.io>
|
||||||
Date: Tue, 15 Mar 2022 16:53:04 +0100
|
Date: Tue, 15 Mar 2022 16:53:04 +0100
|
||||||
Subject: [PATCH 25/55] Fix race condition on mWaitingForUpdateDelivery
|
Subject: [PATCH 25/51] Fix race condition on mWaitingForUpdateDelivery
|
||||||
|
|
||||||
Change-Id: I0e91bda73722468b9339fc434fe04420b5e7d3da
|
Change-Id: I0e91bda73722468b9339fc434fe04420b5e7d3da
|
||||||
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
||||||
@ -55,5 +55,5 @@ index 54ac67a9..c0a76345 100644
|
|||||||
QElapsedTimer mFrameCallbackElapsedTimer;
|
QElapsedTimer mFrameCallbackElapsedTimer;
|
||||||
struct ::wl_callback *mFrameCallback = nullptr;
|
struct ::wl_callback *mFrameCallback = nullptr;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 2f0528fc51a378bdd8a3ff93d996765fccf54cce Mon Sep 17 00:00:00 2001
|
From ddfa956f6c39c53249116b979f679b255ed4a596 Mon Sep 17 00:00:00 2001
|
||||||
From: Kenneth Topp <ken@bllue.org>
|
From: Kenneth Topp <ken@bllue.org>
|
||||||
Date: Mon, 4 Apr 2022 09:36:21 -0400
|
Date: Mon, 4 Apr 2022 09:36:21 -0400
|
||||||
Subject: [PATCH 26/55] use poll(2) when reading from clipboard
|
Subject: [PATCH 26/51] use poll(2) when reading from clipboard
|
||||||
|
|
||||||
change clipboard read away from select(2) call which can fail when
|
change clipboard read away from select(2) call which can fail when
|
||||||
an application has large number of open files
|
an application has large number of open files
|
||||||
@ -44,5 +44,5 @@ index c9e158cc..fe0ea8c9 100644
|
|||||||
} else if (ready == 0) {
|
} else if (ready == 0) {
|
||||||
qWarning("QWaylandDataOffer: timeout reading from pipe");
|
qWarning("QWaylandDataOffer: timeout reading from pipe");
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 2197557879ae1e3459e715dbc20b21e8652cb972 Mon Sep 17 00:00:00 2001
|
From b981fc82eb37700353949c72d3fd6d0887c8c107 Mon Sep 17 00:00:00 2001
|
||||||
From: Ulf Hermann <ulf.hermann@qt.io>
|
From: Ulf Hermann <ulf.hermann@qt.io>
|
||||||
Date: Tue, 22 Feb 2022 12:31:08 +0100
|
Date: Tue, 22 Feb 2022 12:31:08 +0100
|
||||||
Subject: [PATCH 27/55] Reduce memory leakage
|
Subject: [PATCH 27/51] Reduce memory leakage
|
||||||
|
|
||||||
We need to clean up the event queue when we're done.
|
We need to clean up the event queue when we're done.
|
||||||
|
|
||||||
@ -27,5 +27,5 @@ index d371ffec..1b9ec699 100644
|
|||||||
|
|
||||||
// Steps which is called just after constructor. This separates registry_global() out of the constructor
|
// Steps which is called just after constructor. This separates registry_global() out of the constructor
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From d9b04ba05ed479b577579e6a34d97fb906791f69 Mon Sep 17 00:00:00 2001
|
From 91afb601e33f492393f7b27a84aa281b55d26de2 Mon Sep 17 00:00:00 2001
|
||||||
From: Sam James <sam@gentoo.org>
|
From: Sam James <sam@gentoo.org>
|
||||||
Date: Sat, 18 Jun 2022 17:11:11 +0100
|
Date: Sat, 18 Jun 2022 17:11:11 +0100
|
||||||
Subject: [PATCH 28/55] Fix build with libcxx (missing array include)
|
Subject: [PATCH 28/51] Fix build with libcxx (missing array include)
|
||||||
|
|
||||||
Bug: https://bugs.gentoo.org/833488
|
Bug: https://bugs.gentoo.org/833488
|
||||||
|
|
||||||
@ -28,5 +28,5 @@ index 56a710c3..c6a8b6c6 100644
|
|||||||
#include <EGL/eglext.h>
|
#include <EGL/eglext.h>
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
From 9265dae0d87eaf2a0dfc8a67c46f6c11bd14d2ab Mon Sep 17 00:00:00 2001
|
From 76a2b1919f04152e77740b2d1601df893b8d79ba Mon Sep 17 00:00:00 2001
|
||||||
From: Weng Xuetian <wengxt@gmail.com>
|
From: Weng Xuetian <wengxt@gmail.com>
|
||||||
Date: Wed, 20 Jul 2022 15:57:40 -0700
|
Date: Wed, 20 Jul 2022 15:57:40 -0700
|
||||||
Subject: [PATCH 29/55] Only close popup in the the hierchary
|
Subject: [PATCH 29/51] Only close popup in the the hierchary
|
||||||
|
|
||||||
Imagine following event sequences:
|
Imagine following event sequences:
|
||||||
1. a tooltip is shown. activePopups = {tooltip}
|
1. a tooltip is shown. activePopups = {tooltip}
|
||||||
@ -209,7 +209,7 @@ index 8c371661..151c78e3 100644
|
|||||||
auto *shell = m_xdgSurface->m_shell;
|
auto *shell = m_xdgSurface->m_shell;
|
||||||
Q_ASSERT(shell->m_topmostGrabbingPopup == this);
|
Q_ASSERT(shell->m_topmostGrabbingPopup == this);
|
||||||
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
index b7383e19..962001b3 100644
|
index 9a362b74..ead99989 100644
|
||||||
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
||||||
@@ -195,12 +195,17 @@ QtWayland::xdg_toplevel::resize_edge QWaylandXdgSurface::Toplevel::convertToResi
|
@@ -195,12 +195,17 @@ QtWayland::xdg_toplevel::resize_edge QWaylandXdgSurface::Toplevel::convertToResi
|
||||||
@ -246,10 +246,10 @@ index b7383e19..962001b3 100644
|
|||||||
Q_ASSERT(shell->m_topmostGrabbingPopup == this);
|
Q_ASSERT(shell->m_topmostGrabbingPopup == this);
|
||||||
- shell->m_topmostGrabbingPopup = m_parent->m_popup;
|
- shell->m_topmostGrabbingPopup = m_parent->m_popup;
|
||||||
+ shell->m_topmostGrabbingPopup = m_parentXdgSurface ? m_parentXdgSurface->m_popup : nullptr;
|
+ shell->m_topmostGrabbingPopup = m_parentXdgSurface ? m_parentXdgSurface->m_popup : nullptr;
|
||||||
}
|
m_grabbing = false;
|
||||||
}
|
|
||||||
|
|
||||||
@@ -393,8 +402,6 @@ void QWaylandXdgSurface::setPopup(QWaylandWindow *parent)
|
// Synthesize Qt enter/leave events for popup
|
||||||
|
@@ -403,8 +412,6 @@ void QWaylandXdgSurface::setPopup(QWaylandWindow *parent)
|
||||||
{
|
{
|
||||||
Q_ASSERT(!m_toplevel && !m_popup);
|
Q_ASSERT(!m_toplevel && !m_popup);
|
||||||
|
|
||||||
@ -258,7 +258,7 @@ index b7383e19..962001b3 100644
|
|||||||
auto positioner = new QtWayland::xdg_positioner(m_shell->create_positioner());
|
auto positioner = new QtWayland::xdg_positioner(m_shell->create_positioner());
|
||||||
// set_popup expects a position relative to the parent
|
// set_popup expects a position relative to the parent
|
||||||
QPoint transientPos = m_window->geometry().topLeft(); // this is absolute
|
QPoint transientPos = m_window->geometry().topLeft(); // this is absolute
|
||||||
@@ -411,8 +418,9 @@ void QWaylandXdgSurface::setPopup(QWaylandWindow *parent)
|
@@ -421,8 +428,9 @@ void QWaylandXdgSurface::setPopup(QWaylandWindow *parent)
|
||||||
| QtWayland::xdg_positioner::constraint_adjustment_slide_y
|
| QtWayland::xdg_positioner::constraint_adjustment_slide_y
|
||||||
| QtWayland::xdg_positioner::constraint_adjustment_flip_x
|
| QtWayland::xdg_positioner::constraint_adjustment_flip_x
|
||||||
| QtWayland::xdg_positioner::constraint_adjustment_flip_y);
|
| QtWayland::xdg_positioner::constraint_adjustment_flip_y);
|
||||||
@ -397,5 +397,5 @@ index 73d1eb9c..747875b4 100644
|
|||||||
void tst_xdgshell::switchPopups()
|
void tst_xdgshell::switchPopups()
|
||||||
{
|
{
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
From 08ce7a21017e1f9553cd0f4af1316e38709d5553 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ville Voutilainen <ville.voutilainen@qt.io>
|
|
||||||
Date: Mon, 18 Jan 2021 12:31:31 +0200
|
|
||||||
Subject: [PATCH 30/55] Build fixes for GCC 11
|
|
||||||
|
|
||||||
Task-number: QTBUG-89977
|
|
||||||
Change-Id: I7e3d0964087865e8062f539f851a61f3df017dae
|
|
||||||
Reviewed-by: David Edmundson <davidedmundson@kde.org>
|
|
||||||
(cherry picked from commit 1aa6ec2c778504d96543f6cdc2b9199a7b066fc1)
|
|
||||||
---
|
|
||||||
tests/auto/client/shared/corecompositor.cpp | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/tests/auto/client/shared/corecompositor.cpp b/tests/auto/client/shared/corecompositor.cpp
|
|
||||||
index 5c6c83ba..fa9b7662 100644
|
|
||||||
--- a/tests/auto/client/shared/corecompositor.cpp
|
|
||||||
+++ b/tests/auto/client/shared/corecompositor.cpp
|
|
||||||
@@ -27,6 +27,7 @@
|
|
||||||
****************************************************************************/
|
|
||||||
|
|
||||||
#include "corecompositor.h"
|
|
||||||
+#include <thread>
|
|
||||||
|
|
||||||
namespace MockCompositor {
|
|
||||||
|
|
||||||
--
|
|
||||||
2.40.0
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From ec0171610350305be51c3e4be7c6f086cb360fe6 Mon Sep 17 00:00:00 2001
|
From b14eb8fdac3bfa2763a83541a3e4764c0eac153e Mon Sep 17 00:00:00 2001
|
||||||
From: Roman Genkhel <roman.genhel@lge.com>
|
From: Roman Genkhel <roman.genhel@lge.com>
|
||||||
Date: Thu, 12 Nov 2020 12:21:51 +0300
|
Date: Thu, 12 Nov 2020 12:21:51 +0300
|
||||||
Subject: [PATCH 31/55] Check pointer for null before use in ASSERT
|
Subject: [PATCH 30/51] Check pointer for null before use in ASSERT
|
||||||
|
|
||||||
Task-number: QTBUG-85195
|
Task-number: QTBUG-85195
|
||||||
Change-Id: I331e54f6e58aa9d536351a55223610c60b3cb414
|
Change-Id: I331e54f6e58aa9d536351a55223610c60b3cb414
|
||||||
@ -30,5 +30,5 @@ index 9e82c174..0a5fc15b 100644
|
|||||||
buffer->setBusy();
|
buffer->setBusy();
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 2d3d929c86c5aab6dd30e02ade25697d49617335 Mon Sep 17 00:00:00 2001
|
From 7daab1d4a36463f0904fdde539894609f8b367c1 Mon Sep 17 00:00:00 2001
|
||||||
From: Paul Olav Tvete <paul.tvete@qt.io>
|
From: Paul Olav Tvete <paul.tvete@qt.io>
|
||||||
Date: Mon, 6 Jul 2020 14:37:35 +0200
|
Date: Mon, 6 Jul 2020 14:37:35 +0200
|
||||||
Subject: [PATCH 32/55] Use wl_surface.damage_buffer on the client side
|
Subject: [PATCH 31/51] Use wl_surface.damage_buffer on the client side
|
||||||
|
|
||||||
Prefer the newer, recommended damage_buffer when the compositor
|
Prefer the newer, recommended damage_buffer when the compositor
|
||||||
supports it.
|
supports it.
|
||||||
@ -127,5 +127,5 @@ index 949dc23d..d176837e 100644
|
|||||||
uint32_t callback) override;
|
uint32_t callback) override;
|
||||||
void surface_commit(Resource *resource) override;
|
void surface_commit(Resource *resource) override;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From bdf04e01153aeda2c2bafa059dd21dc377eb82e1 Mon Sep 17 00:00:00 2001
|
From 152984fa2347a2f02568ac6cd9baba5bd8e4d56d Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Fri, 5 Aug 2022 15:00:31 +0100
|
Date: Fri, 5 Aug 2022 15:00:31 +0100
|
||||||
Subject: [PATCH 33/55] Client: clear focus on touch cancel
|
Subject: [PATCH 32/51] Client: clear focus on touch cancel
|
||||||
|
|
||||||
When we get a touch_cancel event all touches should be treated as
|
When we get a touch_cancel event all touches should be treated as
|
||||||
lifted.
|
lifted.
|
||||||
@ -112,5 +112,5 @@ index 296dbf47..210d8ddb 100644
|
|||||||
Seat *m_seat = nullptr;
|
Seat *m_seat = nullptr;
|
||||||
};
|
};
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From e920173ee9cef08d10ad8a7e21ae7a5a2c2d7530 Mon Sep 17 00:00:00 2001
|
From 11824dcf4164898a48b0629a072370a195dcc8f1 Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Thu, 3 Feb 2022 19:42:33 +0000
|
Date: Thu, 3 Feb 2022 19:42:33 +0000
|
||||||
Subject: [PATCH 34/55] Guard mResizeDirty by the correctMutex
|
Subject: [PATCH 33/51] Guard mResizeDirty by the correctMutex
|
||||||
|
|
||||||
mResizeDirty is used in the GUI thread in setCanResize which can be
|
mResizeDirty is used in the GUI thread in setCanResize which can be
|
||||||
called from the GUI thread. It is queried and set whilst the resizeLock
|
called from the GUI thread. It is queried and set whilst the resizeLock
|
||||||
@ -35,5 +35,5 @@ index 5b7f9df9..117e3383 100644
|
|||||||
}
|
}
|
||||||
QRect exposeGeometry(QPoint(), geometry().size());
|
QRect exposeGeometry(QPoint(), geometry().size());
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From bf6b509011c4086cc7b1a7cfdc78dd50e446b15f Mon Sep 17 00:00:00 2001
|
From 8e2f1b74e780b998ab682d9abbd53feeceaa819e Mon Sep 17 00:00:00 2001
|
||||||
From: Albert Astals Cid <aacid@kde.org>
|
From: Albert Astals Cid <aacid@kde.org>
|
||||||
Date: Fri, 9 Sep 2022 15:37:49 +0200
|
Date: Fri, 9 Sep 2022 15:37:49 +0200
|
||||||
Subject: [PATCH 36/55] Fix compile tests
|
Subject: [PATCH 34/51] Fix compile tests
|
||||||
|
|
||||||
Broken in c618467da4c06528537026e2b78f92265bce446f
|
Broken in c618467da4c06528537026e2b78f92265bce446f
|
||||||
---
|
---
|
||||||
@ -25,5 +25,5 @@ index b063e0d9..2ea382f1 100644
|
|||||||
{
|
{
|
||||||
auto e = window.m_events.takeFirst();
|
auto e = window.m_events.takeFirst();
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 137958eec28cb8209069f9a3a3ab778202773ff6 Mon Sep 17 00:00:00 2001
|
From a7c3f946175a78df45b1eb3301cf16a05a542d58 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexandros Frantzis <alexandros.frantzis@collabora.com>
|
From: Alexandros Frantzis <alexandros.frantzis@collabora.com>
|
||||||
Date: Wed, 11 May 2022 17:12:52 +0300
|
Date: Wed, 11 May 2022 17:12:52 +0300
|
||||||
Subject: [PATCH 37/55] Use CRLF line delimiter for text/uri-list data
|
Subject: [PATCH 35/51] Use CRLF line delimiter for text/uri-list data
|
||||||
|
|
||||||
According to RFC 2483, which describes text/uri-list, the line delimiter
|
According to RFC 2483, which describes text/uri-list, the line delimiter
|
||||||
must be CRLF (instead of the currently used LF). Some applications
|
must be CRLF (instead of the currently used LF). Some applications
|
||||||
@ -36,5 +36,5 @@ index 051a91dc..e2fe1928 100644
|
|||||||
} else {
|
} else {
|
||||||
content = mimeData->data(mimeType);
|
content = mimeData->data(mimeType);
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,72 +0,0 @@
|
|||||||
From 1ff4219d8c58f8356d9d12824948013cdfde6ac5 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Liang Qi <liang.qi@qt.io>
|
|
||||||
Date: Fri, 11 Mar 2022 09:17:25 +0100
|
|
||||||
Subject: [PATCH 35/55] client: Synthesize enter/leave event for popup in
|
|
||||||
xdg-shell
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
Fixes: QTBUG-100148
|
|
||||||
Pick-to: 6.3 6.2 5.15
|
|
||||||
Change-Id: I45e3156d7942cff9968674c0b253d15be7235921
|
|
||||||
Reviewed-by: Tang Haixiang <tanghaixiang@uniontech.com>
|
|
||||||
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
||||||
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
|
||||||
(cherry picked from commit 73d35d3117722cef8e94f0d2036c56ad0a5ddae9)
|
|
||||||
|
|
||||||
* asturmlechner 2022-09-08: Resolve conflict with dev branch commits
|
|
||||||
b6a3a938abd4a7fdb7ea96a38485b53f394fba17 and
|
|
||||||
f8e3257e9b1e22d52e9c221c62b8d9b6dd1151a3
|
|
||||||
---
|
|
||||||
.../xdg-shell/qwaylandxdgshell.cpp | 27 +++++++++++++++++++
|
|
||||||
1 file changed, 27 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
|
||||||
index 962001b3..ead99989 100644
|
|
||||||
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
|
||||||
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
|
|
||||||
@@ -221,6 +221,16 @@ QWaylandXdgSurface::Popup::~Popup()
|
|
||||||
auto *shell = m_xdgSurface->m_shell;
|
|
||||||
Q_ASSERT(shell->m_topmostGrabbingPopup == this);
|
|
||||||
shell->m_topmostGrabbingPopup = m_parentXdgSurface ? m_parentXdgSurface->m_popup : nullptr;
|
|
||||||
+ m_grabbing = false;
|
|
||||||
+
|
|
||||||
+ // Synthesize Qt enter/leave events for popup
|
|
||||||
+ QWindow *leave = nullptr;
|
|
||||||
+ if (m_xdgSurface && m_xdgSurface->window())
|
|
||||||
+ leave = m_xdgSurface->window()->window();
|
|
||||||
+ QWindowSystemInterface::handleLeaveEvent(leave);
|
|
||||||
+
|
|
||||||
+ if (QWindow *enter = QGuiApplication::topLevelAt(QCursor::pos()))
|
|
||||||
+ QWindowSystemInterface::handleEnterEvent(enter, enter->mapFromGlobal(QCursor::pos()), QCursor::pos());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -442,6 +452,23 @@ void QWaylandXdgSurface::setGrabPopup(QWaylandWindow *parent, QWaylandInputDevic
|
|
||||||
}
|
|
||||||
setPopup(parent);
|
|
||||||
m_popup->grab(device, serial);
|
|
||||||
+
|
|
||||||
+ // Synthesize Qt enter/leave events for popup
|
|
||||||
+ if (!parent)
|
|
||||||
+ return;
|
|
||||||
+ QWindow *current = QGuiApplication::topLevelAt(QCursor::pos());
|
|
||||||
+ QWindow *leave = parent->window();
|
|
||||||
+ if (current != leave)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ QWindowSystemInterface::handleLeaveEvent(leave);
|
|
||||||
+
|
|
||||||
+ QWindow *enter = nullptr;
|
|
||||||
+ if (m_popup && m_popup->m_xdgSurface && m_popup->m_xdgSurface->window())
|
|
||||||
+ enter = m_popup->m_xdgSurface->window()->window();
|
|
||||||
+
|
|
||||||
+ if (enter)
|
|
||||||
+ QWindowSystemInterface::handleEnterEvent(enter, enter->mapFromGlobal(QCursor::pos()), QCursor::pos());
|
|
||||||
}
|
|
||||||
|
|
||||||
void QWaylandXdgSurface::xdg_surface_configure(uint32_t serial)
|
|
||||||
--
|
|
||||||
2.40.0
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 0064749af275016ae3b4b09964d8d31d756d3468 Mon Sep 17 00:00:00 2001
|
From 36522a8ed9f43cd49100e06040711de9c2c0c163 Mon Sep 17 00:00:00 2001
|
||||||
From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
Date: Mon, 8 Aug 2022 12:14:01 +0200
|
Date: Mon, 8 Aug 2022 12:14:01 +0200
|
||||||
Subject: [PATCH 38/55] Avoid calling requestUpdate from wrong thread
|
Subject: [PATCH 36/51] Avoid calling requestUpdate from wrong thread
|
||||||
|
|
||||||
In certain circumstances, we can get to createDecoration()
|
In certain circumstances, we can get to createDecoration()
|
||||||
from the render thread (from QWaylandGLContext::makeCurrent)
|
from the render thread (from QWaylandGLContext::makeCurrent)
|
||||||
@ -39,5 +39,5 @@ index 117e3383..4ddf9fbe 100644
|
|||||||
|
|
||||||
return mWindowDecoration;
|
return mWindowDecoration;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 35c03e72007630040659188b2bc7f47b1df82577 Mon Sep 17 00:00:00 2001
|
From 3f0371cb22e117020e57255858e02f9237210a3b Mon Sep 17 00:00:00 2001
|
||||||
From: Fushan Wen <qydwhotmail@gmail.com>
|
From: Fushan Wen <qydwhotmail@gmail.com>
|
||||||
Date: Sun, 18 Sep 2022 18:17:18 +0800
|
Date: Sun, 18 Sep 2022 18:17:18 +0800
|
||||||
Subject: [PATCH 39/55] Call `finishDrag()` in
|
Subject: [PATCH 37/51] Call `finishDrag()` in
|
||||||
`QWaylandDataDevice::dragSourceCancelled()`
|
`QWaylandDataDevice::dragSourceCancelled()`
|
||||||
|
|
||||||
Drags can either get finished or cancelled. If a drag is finished
|
Drags can either get finished or cancelled. If a drag is finished
|
||||||
@ -34,5 +34,5 @@ index fbb5aa91..e3e60ed5 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 37ad4aeaa6dce748f5f6bcc5030be187e6320ec0 Mon Sep 17 00:00:00 2001
|
From 20bef824f4b78598fbffa5ada8271e22b658f635 Mon Sep 17 00:00:00 2001
|
||||||
From: David Edmundson <davidedmundson@kde.org>
|
From: David Edmundson <davidedmundson@kde.org>
|
||||||
Date: Mon, 12 Sep 2022 13:28:08 +0100
|
Date: Mon, 12 Sep 2022 13:28:08 +0100
|
||||||
Subject: [PATCH 40/55] Hold surface read lock throughout
|
Subject: [PATCH 38/51] Hold surface read lock throughout
|
||||||
QWaylandEglWindow::updateSurface
|
QWaylandEglWindow::updateSurface
|
||||||
|
|
||||||
QWaylandEGLWindow::updateSurface is called from both the main and render
|
QWaylandEGLWindow::updateSurface is called from both the main and render
|
||||||
@ -81,5 +81,5 @@ index 13dd747a..872a6237 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 61fccee064cd8cea698a530c76113f8487d11d68 Mon Sep 17 00:00:00 2001
|
From 6481efa9a8fe88043d931648d72dceeeb91af64d Mon Sep 17 00:00:00 2001
|
||||||
From: David Redondo <qt@david-redondo.de>
|
From: David Redondo <qt@david-redondo.de>
|
||||||
Date: Wed, 8 Jun 2022 11:25:59 +0200
|
Date: Wed, 8 Jun 2022 11:25:59 +0200
|
||||||
Subject: [PATCH 42/55] Keep toplevel windows in the top left corner of the
|
Subject: [PATCH 39/51] Keep toplevel windows in the top left corner of the
|
||||||
screen
|
screen
|
||||||
|
|
||||||
We can't know the actual position of a window on the screen. This causes
|
We can't know the actual position of a window on the screen. This causes
|
||||||
@ -39,10 +39,10 @@ index fbf00c6b..54861600 100644
|
|||||||
|
|
||||||
QWaylandIntegration::~QWaylandIntegration()
|
QWaylandIntegration::~QWaylandIntegration()
|
||||||
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||||
index 1f2d56b5..d3459168 100644
|
index 4ddf9fbe..f322a8d6 100644
|
||||||
--- a/src/client/qwaylandwindow.cpp
|
--- a/src/client/qwaylandwindow.cpp
|
||||||
+++ b/src/client/qwaylandwindow.cpp
|
+++ b/src/client/qwaylandwindow.cpp
|
||||||
@@ -361,8 +361,13 @@ void QWaylandWindow::setGeometry_helper(const QRect &rect)
|
@@ -350,8 +350,13 @@ void QWaylandWindow::setGeometry_helper(const QRect &rect)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -57,7 +57,7 @@ index 1f2d56b5..d3459168 100644
|
|||||||
setGeometry_helper(rect);
|
setGeometry_helper(rect);
|
||||||
|
|
||||||
if (window()->isVisible() && rect.isValid()) {
|
if (window()->isVisible() && rect.isValid()) {
|
||||||
@@ -1044,6 +1049,13 @@ void QWaylandWindow::handleScreensChanged()
|
@@ -1033,6 +1038,13 @@ void QWaylandWindow::handleScreensChanged()
|
||||||
|
|
||||||
QWindowSystemInterface::handleWindowScreenChanged(window(), newScreen->QPlatformScreen::screen());
|
QWindowSystemInterface::handleWindowScreenChanged(window(), newScreen->QPlatformScreen::screen());
|
||||||
mLastReportedScreen = newScreen;
|
mLastReportedScreen = newScreen;
|
||||||
@ -72,7 +72,7 @@ index 1f2d56b5..d3459168 100644
|
|||||||
int scale = newScreen->isPlaceholder() ? 1 : static_cast<QWaylandScreen *>(newScreen)->scale();
|
int scale = newScreen->isPlaceholder() ? 1 : static_cast<QWaylandScreen *>(newScreen)->scale();
|
||||||
if (scale != mScale) {
|
if (scale != mScale) {
|
||||||
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h
|
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h
|
||||||
index e18609d9..a8ee2696 100644
|
index ea3d1995..487a91a6 100644
|
||||||
--- a/src/client/qwaylandwindow_p.h
|
--- a/src/client/qwaylandwindow_p.h
|
||||||
+++ b/src/client/qwaylandwindow_p.h
|
+++ b/src/client/qwaylandwindow_p.h
|
||||||
@@ -98,6 +98,9 @@ public:
|
@@ -98,6 +98,9 @@ public:
|
||||||
@ -86,5 +86,5 @@ index e18609d9..a8ee2696 100644
|
|||||||
virtual void ensureSize();
|
virtual void ensureSize();
|
||||||
WId winId() const override;
|
WId winId() const override;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From dd605d5fec6921a7befbfe2c40c2ae87935aa9c4 Mon Sep 17 00:00:00 2001
|
From 3b29b796f98721cb52c89a56e28ff8f9b830ebc5 Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Thu, 17 Nov 2022 15:25:37 +0200
|
Date: Thu, 17 Nov 2022 15:25:37 +0200
|
||||||
Subject: [PATCH 44/55] Client: Add F_SEAL_SHRINK seal to shm backing file
|
Subject: [PATCH 40/51] Client: Add F_SEAL_SHRINK seal to shm backing file
|
||||||
|
|
||||||
This lets libwayland-server avoid installing a SIGBUS handler when it
|
This lets libwayland-server avoid installing a SIGBUS handler when it
|
||||||
wants to mmap() the backing file and access the contents of shared
|
wants to mmap() the backing file and access the contents of shared
|
||||||
@ -49,5 +49,5 @@ index dc7ff670..98acd42d 100644
|
|||||||
|
|
||||||
QScopedPointer<QFile> filePointer;
|
QScopedPointer<QFile> filePointer;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From dea12f0bb5729de6c1a31b03b7e79710baf96b63 Mon Sep 17 00:00:00 2001
|
From 36a9d60c3ed05e2ec8faf7e81946becfaeb2f1d5 Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Mon, 21 Nov 2022 18:39:40 +0200
|
Date: Mon, 21 Nov 2022 18:39:40 +0200
|
||||||
Subject: [PATCH 45/55] Client: Call wl_output_release() upon QWaylandScreen
|
Subject: [PATCH 41/51] Client: Call wl_output_release() upon QWaylandScreen
|
||||||
destruction
|
destruction
|
||||||
|
|
||||||
It ensures that the proxy gets destroyed.
|
It ensures that the proxy gets destroyed.
|
||||||
@ -27,5 +27,5 @@ index 7c2d9be3..64ae4fe7 100644
|
|||||||
|
|
||||||
uint QWaylandScreen::requiredEvents() const
|
uint QWaylandScreen::requiredEvents() const
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,109 +0,0 @@
|
|||||||
From 1012f1d4b5753ad63da3cca1226fb034e297ae6d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
|
||||||
Date: Tue, 8 Nov 2022 16:10:18 +0200
|
|
||||||
Subject: [PATCH 41/55] Client: Ensure that wl_surface lives as long as qtquick
|
|
||||||
render thread needs it
|
|
||||||
|
|
||||||
wl_surface can be destroyed while qtquick render thread still uses it.
|
|
||||||
That can end up in eglSwapBuffers() using defunct wl_surface, which will
|
|
||||||
eventually lead to a crash due to the compositor posting an error.
|
|
||||||
|
|
||||||
This is partially cherry-pick of dff579147b07cd15888a47c303e36684e9930f9f
|
|
||||||
|
|
||||||
Change-Id: I044f40dd64e6672027a833379b57ccd9973d8305
|
|
||||||
---
|
|
||||||
src/client/qwaylandwindow.cpp | 13 ++++++++++++-
|
|
||||||
src/client/qwaylandwindow_p.h | 3 +++
|
|
||||||
.../client/wayland-egl/qwaylandglcontext.cpp | 6 +++++-
|
|
||||||
3 files changed, 20 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
|
||||||
index 4ddf9fbe..1f2d56b5 100644
|
|
||||||
--- a/src/client/qwaylandwindow.cpp
|
|
||||||
+++ b/src/client/qwaylandwindow.cpp
|
|
||||||
@@ -76,6 +76,7 @@ QWaylandWindow *QWaylandWindow::mMouseGrab = nullptr;
|
|
||||||
QWaylandWindow::QWaylandWindow(QWindow *window, QWaylandDisplay *display)
|
|
||||||
: QPlatformWindow(window)
|
|
||||||
, mDisplay(display)
|
|
||||||
+ , mSurfaceLock(QReadWriteLock::Recursive)
|
|
||||||
, mResizeAfterSwap(qEnvironmentVariableIsSet("QT_WAYLAND_RESIZE_AFTER_SWAP"))
|
|
||||||
{
|
|
||||||
{
|
|
||||||
@@ -237,6 +238,16 @@ bool QWaylandWindow::shouldCreateSubSurface() const
|
|
||||||
return QPlatformWindow::parent() != nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
+void QWaylandWindow::beginFrame()
|
|
||||||
+{
|
|
||||||
+ mSurfaceLock.lockForRead();
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+void QWaylandWindow::endFrame()
|
|
||||||
+{
|
|
||||||
+ mSurfaceLock.unlock();
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void QWaylandWindow::reset()
|
|
||||||
{
|
|
||||||
closeChildPopups();
|
|
||||||
@@ -245,10 +256,10 @@ void QWaylandWindow::reset()
|
|
||||||
delete mSubSurfaceWindow;
|
|
||||||
mSubSurfaceWindow = nullptr;
|
|
||||||
|
|
||||||
- invalidateSurface();
|
|
||||||
if (mSurface) {
|
|
||||||
emit wlSurfaceDestroyed();
|
|
||||||
QWriteLocker lock(&mSurfaceLock);
|
|
||||||
+ invalidateSurface();
|
|
||||||
mSurface.reset();
|
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h
|
|
||||||
index ea3d1995..e18609d9 100644
|
|
||||||
--- a/src/client/qwaylandwindow_p.h
|
|
||||||
+++ b/src/client/qwaylandwindow_p.h
|
|
||||||
@@ -207,6 +207,9 @@ public:
|
|
||||||
void handleUpdate();
|
|
||||||
void deliverUpdateRequest() override;
|
|
||||||
|
|
||||||
+ void beginFrame();
|
|
||||||
+ void endFrame();
|
|
||||||
+
|
|
||||||
void addChildPopup(QWaylandWindow* child);
|
|
||||||
void removeChildPopup(QWaylandWindow* child);
|
|
||||||
void closeChildPopups();
|
|
||||||
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
|
||||||
index c1f45fa6..5d6fb2bf 100644
|
|
||||||
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
|
||||||
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
|
||||||
@@ -432,8 +432,10 @@ bool QWaylandGLContext::makeCurrent(QPlatformSurface *surface)
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (window->isExposed())
|
|
||||||
+ if (window->isExposed()) {
|
|
||||||
+ window->beginFrame();
|
|
||||||
window->setCanResize(false);
|
|
||||||
+ }
|
|
||||||
if (m_decorationsContext != EGL_NO_CONTEXT && !window->decoration())
|
|
||||||
window->createDecoration();
|
|
||||||
|
|
||||||
@@ -449,6 +451,7 @@ bool QWaylandGLContext::makeCurrent(QPlatformSurface *surface)
|
|
||||||
if (!eglMakeCurrent(m_eglDisplay, eglSurface, eglSurface, m_context)) {
|
|
||||||
qWarning("QWaylandGLContext::makeCurrent: eglError: %x, this: %p \n", eglGetError(), this);
|
|
||||||
window->setCanResize(true);
|
|
||||||
+ window->endFrame();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -502,6 +505,7 @@ void QWaylandGLContext::swapBuffers(QPlatformSurface *surface)
|
|
||||||
eglSwapBuffers(m_eglDisplay, eglSurface);
|
|
||||||
|
|
||||||
window->setCanResize(true);
|
|
||||||
+ window->endFrame();
|
|
||||||
}
|
|
||||||
|
|
||||||
GLuint QWaylandGLContext::defaultFramebufferObject(QPlatformSurface *surface) const
|
|
||||||
--
|
|
||||||
2.40.0
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 8071f24324ffa8c556068816e009a5887e1a6ddd Mon Sep 17 00:00:00 2001
|
From 4293409e97c6ecfaec49b87818f9b439010187c9 Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Tue, 22 Nov 2022 12:33:41 +0200
|
Date: Tue, 22 Nov 2022 12:33:41 +0200
|
||||||
Subject: [PATCH 46/55] Client: Bump wl_output version
|
Subject: [PATCH 42/51] Client: Bump wl_output version
|
||||||
|
|
||||||
wl_output_release is available starting with wl_output v3.
|
wl_output_release is available starting with wl_output v3.
|
||||||
|
|
||||||
@ -26,5 +26,5 @@ index 64ae4fe7..5537dafd 100644
|
|||||||
, mWaylandDisplay(waylandDisplay)
|
, mWaylandDisplay(waylandDisplay)
|
||||||
, mOutputName(QStringLiteral("Screen%1").arg(id))
|
, mOutputName(QStringLiteral("Screen%1").arg(id))
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From ef5b1f40b684927f73bc04ab84c396be074cb61e Mon Sep 17 00:00:00 2001
|
From 7c43759079528c33c30c4a823de7fb2dff6acd27 Mon Sep 17 00:00:00 2001
|
||||||
From: Weng Xuetian <wengxt@gmail.com>
|
From: Weng Xuetian <wengxt@gmail.com>
|
||||||
Date: Sun, 27 Nov 2022 12:44:40 -0800
|
Date: Sun, 27 Nov 2022 12:44:40 -0800
|
||||||
Subject: [PATCH 47/55] Fix frame sync related to unprotected multithread
|
Subject: [PATCH 43/51] Fix frame sync related to unprotected multithread
|
||||||
access
|
access
|
||||||
|
|
||||||
There is a few crashes happens in real life that frame callback is
|
There is a few crashes happens in real life that frame callback is
|
||||||
@ -162,5 +162,5 @@ index 487a91a6..2f219d8c 100644
|
|||||||
static QWaylandWindow *mMouseGrab;
|
static QWaylandWindow *mMouseGrab;
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,103 +0,0 @@
|
|||||||
From 3813da4b6d88320b42a7d91ae100e1567113ee72 Mon Sep 17 00:00:00 2001
|
|
||||||
From: David Edmundson <kde@davidedmundson.co.uk>
|
|
||||||
Date: Mon, 14 Nov 2022 10:43:25 +0000
|
|
||||||
Subject: [PATCH 43/55] Revert "Client: Ensure that wl_surface lives as long as
|
|
||||||
qtquick render thread needs it"
|
|
||||||
|
|
||||||
This reverts commit 81a7702a87f386a60a0ac8c902e203daae044d81
|
|
||||||
---
|
|
||||||
src/client/qwaylandwindow.cpp | 13 +------------
|
|
||||||
src/client/qwaylandwindow_p.h | 3 ---
|
|
||||||
.../client/wayland-egl/qwaylandglcontext.cpp | 6 +-----
|
|
||||||
3 files changed, 2 insertions(+), 20 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
|
||||||
index d3459168..f322a8d6 100644
|
|
||||||
--- a/src/client/qwaylandwindow.cpp
|
|
||||||
+++ b/src/client/qwaylandwindow.cpp
|
|
||||||
@@ -76,7 +76,6 @@ QWaylandWindow *QWaylandWindow::mMouseGrab = nullptr;
|
|
||||||
QWaylandWindow::QWaylandWindow(QWindow *window, QWaylandDisplay *display)
|
|
||||||
: QPlatformWindow(window)
|
|
||||||
, mDisplay(display)
|
|
||||||
- , mSurfaceLock(QReadWriteLock::Recursive)
|
|
||||||
, mResizeAfterSwap(qEnvironmentVariableIsSet("QT_WAYLAND_RESIZE_AFTER_SWAP"))
|
|
||||||
{
|
|
||||||
{
|
|
||||||
@@ -238,16 +237,6 @@ bool QWaylandWindow::shouldCreateSubSurface() const
|
|
||||||
return QPlatformWindow::parent() != nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
-void QWaylandWindow::beginFrame()
|
|
||||||
-{
|
|
||||||
- mSurfaceLock.lockForRead();
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-void QWaylandWindow::endFrame()
|
|
||||||
-{
|
|
||||||
- mSurfaceLock.unlock();
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
void QWaylandWindow::reset()
|
|
||||||
{
|
|
||||||
closeChildPopups();
|
|
||||||
@@ -256,10 +245,10 @@ void QWaylandWindow::reset()
|
|
||||||
delete mSubSurfaceWindow;
|
|
||||||
mSubSurfaceWindow = nullptr;
|
|
||||||
|
|
||||||
+ invalidateSurface();
|
|
||||||
if (mSurface) {
|
|
||||||
emit wlSurfaceDestroyed();
|
|
||||||
QWriteLocker lock(&mSurfaceLock);
|
|
||||||
- invalidateSurface();
|
|
||||||
mSurface.reset();
|
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h
|
|
||||||
index a8ee2696..487a91a6 100644
|
|
||||||
--- a/src/client/qwaylandwindow_p.h
|
|
||||||
+++ b/src/client/qwaylandwindow_p.h
|
|
||||||
@@ -210,9 +210,6 @@ public:
|
|
||||||
void handleUpdate();
|
|
||||||
void deliverUpdateRequest() override;
|
|
||||||
|
|
||||||
- void beginFrame();
|
|
||||||
- void endFrame();
|
|
||||||
-
|
|
||||||
void addChildPopup(QWaylandWindow* child);
|
|
||||||
void removeChildPopup(QWaylandWindow* child);
|
|
||||||
void closeChildPopups();
|
|
||||||
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
|
||||||
index 5d6fb2bf..c1f45fa6 100644
|
|
||||||
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
|
||||||
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
|
|
||||||
@@ -432,10 +432,8 @@ bool QWaylandGLContext::makeCurrent(QPlatformSurface *surface)
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (window->isExposed()) {
|
|
||||||
- window->beginFrame();
|
|
||||||
+ if (window->isExposed())
|
|
||||||
window->setCanResize(false);
|
|
||||||
- }
|
|
||||||
if (m_decorationsContext != EGL_NO_CONTEXT && !window->decoration())
|
|
||||||
window->createDecoration();
|
|
||||||
|
|
||||||
@@ -451,7 +449,6 @@ bool QWaylandGLContext::makeCurrent(QPlatformSurface *surface)
|
|
||||||
if (!eglMakeCurrent(m_eglDisplay, eglSurface, eglSurface, m_context)) {
|
|
||||||
qWarning("QWaylandGLContext::makeCurrent: eglError: %x, this: %p \n", eglGetError(), this);
|
|
||||||
window->setCanResize(true);
|
|
||||||
- window->endFrame();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -505,7 +502,6 @@ void QWaylandGLContext::swapBuffers(QPlatformSurface *surface)
|
|
||||||
eglSwapBuffers(m_eglDisplay, eglSurface);
|
|
||||||
|
|
||||||
window->setCanResize(true);
|
|
||||||
- window->endFrame();
|
|
||||||
}
|
|
||||||
|
|
||||||
GLuint QWaylandGLContext::defaultFramebufferObject(QPlatformSurface *surface) const
|
|
||||||
--
|
|
||||||
2.40.0
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 21e354e7b1878a243d29466b19084083df3d0db9 Mon Sep 17 00:00:00 2001
|
From 817655fa798fc2d640b4db006df229c335e02c3b Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Tue, 27 Sep 2022 22:05:07 +0300
|
Date: Tue, 27 Sep 2022 22:05:07 +0300
|
||||||
Subject: [PATCH 48/55] Client: Handle zwp_primary_selection_device_manager_v1
|
Subject: [PATCH 44/51] Client: Handle zwp_primary_selection_device_manager_v1
|
||||||
global removal
|
global removal
|
||||||
|
|
||||||
The zwp_primary_selection_device_manager_v1 global can be withdrawn if
|
The zwp_primary_selection_device_manager_v1 global can be withdrawn if
|
||||||
@ -62,5 +62,5 @@ index 832f9678..ea508771 100644
|
|||||||
|
|
||||||
QWaylandPrimarySelectionDeviceV1 *QWaylandPrimarySelectionDeviceManagerV1::createDevice(QWaylandInputDevice *seat)
|
QWaylandPrimarySelectionDeviceV1 *QWaylandPrimarySelectionDeviceManagerV1::createDevice(QWaylandInputDevice *seat)
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From c12b0ed6db709e2af40ab3687d880aff5c56b5c1 Mon Sep 17 00:00:00 2001
|
From 9e03f149e70896d92b51d9c25af681ddc2b5acfb Mon Sep 17 00:00:00 2001
|
||||||
From: Aleix Pol <aleixpol@kde.org>
|
From: Aleix Pol <aleixpol@kde.org>
|
||||||
Date: Mon, 19 Dec 2022 15:31:03 +0100
|
Date: Mon, 19 Dec 2022 15:31:03 +0100
|
||||||
Subject: [PATCH 49/55] Fixes the build on CentOS
|
Subject: [PATCH 45/51] Fixes the build on CentOS
|
||||||
|
|
||||||
Change-Id: I3c21972e7681be99b0f45c3ea3a57be285e4ff8e
|
Change-Id: I3c21972e7681be99b0f45c3ea3a57be285e4ff8e
|
||||||
---
|
---
|
||||||
@ -22,5 +22,5 @@ index 98acd42d..41cffdf7 100644
|
|||||||
if (fd >= 0)
|
if (fd >= 0)
|
||||||
fcntl(fd, F_ADD_SEALS, F_SEAL_SHRINK | F_SEAL_SEAL);
|
fcntl(fd, F_ADD_SEALS, F_SEAL_SHRINK | F_SEAL_SEAL);
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From d04d4c7fe2e00285e7d70da42094f213e13c6ed8 Mon Sep 17 00:00:00 2001
|
From 5028633b140c013b14a487889eeef992233d4edf Mon Sep 17 00:00:00 2001
|
||||||
From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
||||||
Date: Mon, 23 May 2022 09:47:24 +0200
|
Date: Mon, 23 May 2022 09:47:24 +0200
|
||||||
Subject: [PATCH 50/55] client: Avoid protocol error with invalid min/max size
|
Subject: [PATCH 46/51] client: Avoid protocol error with invalid min/max size
|
||||||
|
|
||||||
If the application sets an invalid minimum and maximum size
|
If the application sets an invalid minimum and maximum size
|
||||||
(where the minimum is higher than the maximum), then we
|
(where the minimum is higher than the maximum), then we
|
||||||
@ -52,5 +52,5 @@ index ead99989..ad666129 100644
|
|||||||
maxHeight = 0;
|
maxHeight = 0;
|
||||||
m_toplevel->set_max_size(maxWidth, maxHeight);
|
m_toplevel->set_max_size(maxWidth, maxHeight);
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From fbb9d65cf158bcf63440e9839acae9238ad4e0a7 Mon Sep 17 00:00:00 2001
|
From aeb7bf67a99fecf5f4e49ba7c49edf9c8b9db2b6 Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Tue, 22 Nov 2022 23:27:34 +0200
|
Date: Tue, 22 Nov 2022 23:27:34 +0200
|
||||||
Subject: [PATCH 51/55] Client: Fix handling of Qt::BlankCursor
|
Subject: [PATCH 47/51] Client: Fix handling of Qt::BlankCursor
|
||||||
|
|
||||||
The cursor may not be properly set when a window has Qt::BlankCursor and
|
The cursor may not be properly set when a window has Qt::BlankCursor and
|
||||||
it's shown. In that case, the cursor surface may not be present and
|
it's shown. In that case, the cursor surface may not be present and
|
||||||
@ -34,5 +34,5 @@ index 5b880984..9a0fe49d 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 6897f62f603df049135347cf402a7a4037092263 Mon Sep 17 00:00:00 2001
|
From 2e4c35db38a55243bc2458dc87cc9ff6afb81586 Mon Sep 17 00:00:00 2001
|
||||||
From: Marco Martin <notmart@gmail.com>
|
From: Marco Martin <notmart@gmail.com>
|
||||||
Date: Fri, 24 Feb 2023 17:40:48 +0100
|
Date: Fri, 24 Feb 2023 17:40:48 +0100
|
||||||
Subject: [PATCH 52/55] client: Force a roundtrip when an XdgOutput is not
|
Subject: [PATCH 48/51] client: Force a roundtrip when an XdgOutput is not
|
||||||
ready yet
|
ready yet
|
||||||
|
|
||||||
Is possible that the server sends a surface_enter before
|
Is possible that the server sends a surface_enter before
|
||||||
@ -113,5 +113,5 @@ index 80429608..68e8d77a 100644
|
|||||||
QCOMPOSITOR_TEST_MAIN(tst_xdgoutput)
|
QCOMPOSITOR_TEST_MAIN(tst_xdgoutput)
|
||||||
#include "tst_xdgoutput.moc"
|
#include "tst_xdgoutput.moc"
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 31eab11d3b6697a76cc7802d02e525c1152a42c2 Mon Sep 17 00:00:00 2001
|
From dd8640794264449cb978765029fc4713f3fb31b9 Mon Sep 17 00:00:00 2001
|
||||||
From: Tang Haixiang <tanghaixiang@uniontech.com>
|
From: Tang Haixiang <tanghaixiang@uniontech.com>
|
||||||
Date: Thu, 22 Dec 2022 15:19:53 +0800
|
Date: Thu, 22 Dec 2022 15:19:53 +0800
|
||||||
Subject: [PATCH 53/55] Client: Manage QMimeData lifecycle
|
Subject: [PATCH 49/51] Client: Manage QMimeData lifecycle
|
||||||
|
|
||||||
QMimeData is created by user, it is not taken care of in qtwayland,
|
QMimeData is created by user, it is not taken care of in qtwayland,
|
||||||
which will cause memory leak.
|
which will cause memory leak.
|
||||||
@ -134,5 +134,5 @@ index 96f07bc3..14d1542d 100644
|
|||||||
void cancelled();
|
void cancelled();
|
||||||
void finished();
|
void finished();
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From 18c2bcec31f68aafd66d7ec503ec6511ca804d07 Mon Sep 17 00:00:00 2001
|
From 346cebf39b90f7fe012f57e66d493634aba20f89 Mon Sep 17 00:00:00 2001
|
||||||
From: Aleix Pol <aleixpol@kde.org>
|
From: Aleix Pol <aleixpol@kde.org>
|
||||||
Date: Mon, 6 Mar 2023 01:11:45 +0100
|
Date: Mon, 6 Mar 2023 01:11:45 +0100
|
||||||
Subject: [PATCH 54/55] client: Do not cast placeholder screens to
|
Subject: [PATCH 50/51] client: Do not cast placeholder screens to
|
||||||
QWaylandScreen
|
QWaylandScreen
|
||||||
|
|
||||||
It's wrong to C-cast an object to a class that isn't theirs. Check if it
|
It's wrong to C-cast an object to a class that isn't theirs. Check if it
|
||||||
@ -30,5 +30,5 @@ index bf54a1a0..9763c312 100644
|
|||||||
|
|
||||||
return nullptr;
|
return nullptr;
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
From c4c3fc69250c01cb35aaae5ea1ea2bcc8236dff0 Mon Sep 17 00:00:00 2001
|
From aabaa4efd1d284f07c3cb5b8a7d62a9143701bc4 Mon Sep 17 00:00:00 2001
|
||||||
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
||||||
Date: Thu, 12 Jan 2023 14:49:25 +0200
|
Date: Thu, 12 Jan 2023 14:49:25 +0200
|
||||||
Subject: [PATCH 55/55] Client: Remove flip popup constraints
|
Subject: [PATCH 51/51] Client: Remove flip popup constraints
|
||||||
|
|
||||||
xdg_positioner doesn't have good anchor rect and other needed
|
xdg_positioner doesn't have good anchor rect and other needed
|
||||||
information so the compositor can properly flip popups. In some windows
|
information so the compositor can properly flip popups. In some windows
|
||||||
@ -37,5 +37,5 @@ index ad666129..822b385c 100644
|
|||||||
positioner->destroy();
|
positioner->destroy();
|
||||||
|
|
||||||
--
|
--
|
||||||
2.40.0
|
2.40.1
|
||||||
|
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
Summary: Qt5 - Wayland platform support and QtCompositor module
|
Summary: Qt5 - Wayland platform support and QtCompositor module
|
||||||
Name: qt5-%{qt_module}
|
Name: qt5-%{qt_module}
|
||||||
Version: 5.15.9
|
Version: 5.15.10
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
|
|
||||||
License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
||||||
@ -43,33 +43,28 @@ Patch26: 0026-use-poll-2-when-reading-from-clipboard.patch
|
|||||||
Patch27: 0027-Reduce-memory-leakage.patch
|
Patch27: 0027-Reduce-memory-leakage.patch
|
||||||
Patch28: 0028-Fix-build-with-libcxx-missing-array-include.patch
|
Patch28: 0028-Fix-build-with-libcxx-missing-array-include.patch
|
||||||
Patch29: 0029-Only-close-popup-in-the-the-hierchary.patch
|
Patch29: 0029-Only-close-popup-in-the-the-hierchary.patch
|
||||||
Patch30: 0030-Build-fixes-for-GCC-11.patch
|
Patch30: 0030-Check-pointer-for-null-before-use-in-ASSERT.patch
|
||||||
Patch31: 0031-Check-pointer-for-null-before-use-in-ASSERT.patch
|
Patch31: 0031-Use-wl_surface.damage_buffer-on-the-client-side.patch
|
||||||
Patch32: 0032-Use-wl_surface.damage_buffer-on-the-client-side.patch
|
Patch32: 0032-Client-clear-focus-on-touch-cancel.patch
|
||||||
Patch33: 0033-Client-clear-focus-on-touch-cancel.patch
|
Patch33: 0033-Guard-mResizeDirty-by-the-correctMutex.patch
|
||||||
Patch34: 0034-Guard-mResizeDirty-by-the-correctMutex.patch
|
Patch34: 0034-Fix-compile-tests.patch
|
||||||
Patch35: 0035-client-Synthesize-enter-leave-event-for-popup-in-xdg.patch
|
Patch35: 0035-Use-CRLF-line-delimiter-for-text-uri-list-data.patch
|
||||||
Patch36: 0036-Fix-compile-tests.patch
|
Patch36: 0036-Avoid-calling-requestUpdate-from-wrong-thread.patch
|
||||||
Patch37: 0037-Use-CRLF-line-delimiter-for-text-uri-list-data.patch
|
Patch37: 0037-Call-finishDrag-in-QWaylandDataDevice-dragSourceCanc.patch
|
||||||
Patch38: 0038-Avoid-calling-requestUpdate-from-wrong-thread.patch
|
Patch38: 0038-Hold-surface-read-lock-throughout-QWaylandEglWindow-.patch
|
||||||
Patch39: 0039-Call-finishDrag-in-QWaylandDataDevice-dragSourceCanc.patch
|
Patch39: 0039-Keep-toplevel-windows-in-the-top-left-corner-of-the-.patch
|
||||||
Patch40: 0040-Hold-surface-read-lock-throughout-QWaylandEglWindow-.patch
|
Patch40: 0040-Client-Add-F_SEAL_SHRINK-seal-to-shm-backing-file.patch
|
||||||
Patch41: 0041-Client-Ensure-that-wl_surface-lives-as-long-as-qtqui.patch
|
Patch41: 0041-Client-Call-wl_output_release-upon-QWaylandScreen-de.patch
|
||||||
Patch42: 0042-Keep-toplevel-windows-in-the-top-left-corner-of-the-.patch
|
Patch42: 0042-Client-Bump-wl_output-version.patch
|
||||||
Patch43: 0043-Revert-Client-Ensure-that-wl_surface-lives-as-long-a.patch
|
Patch43: 0043-Fix-frame-sync-related-to-unprotected-multithread-ac.patch
|
||||||
Patch44: 0044-Client-Add-F_SEAL_SHRINK-seal-to-shm-backing-file.patch
|
Patch44: 0044-Client-Handle-zwp_primary_selection_device_manager_v.patch
|
||||||
Patch45: 0045-Client-Call-wl_output_release-upon-QWaylandScreen-de.patch
|
Patch45: 0045-Fixes-the-build-on-CentOS.patch
|
||||||
Patch46: 0046-Client-Bump-wl_output-version.patch
|
Patch46: 0046-client-Avoid-protocol-error-with-invalid-min-max-siz.patch
|
||||||
Patch47: 0047-Fix-frame-sync-related-to-unprotected-multithread-ac.patch
|
Patch47: 0047-Client-Fix-handling-of-Qt-BlankCursor.patch
|
||||||
Patch48: 0048-Client-Handle-zwp_primary_selection_device_manager_v.patch
|
Patch48: 0048-client-Force-a-roundtrip-when-an-XdgOutput-is-not-re.patch
|
||||||
Patch49: 0049-Fixes-the-build-on-CentOS.patch
|
Patch49: 0049-Client-Manage-QMimeData-lifecycle.patch
|
||||||
Patch50: 0050-client-Avoid-protocol-error-with-invalid-min-max-siz.patch
|
Patch50: 0050-client-Do-not-cast-placeholder-screens-to-QWaylandSc.patch
|
||||||
Patch51: 0051-Client-Fix-handling-of-Qt-BlankCursor.patch
|
Patch51: 0051-Client-Remove-flip-popup-constraints.patch
|
||||||
Patch52: 0052-client-Force-a-roundtrip-when-an-XdgOutput-is-not-re.patch
|
|
||||||
Patch53: 0053-Client-Manage-QMimeData-lifecycle.patch
|
|
||||||
Patch54: 0054-client-Do-not-cast-placeholder-screens-to-QWaylandSc.patch
|
|
||||||
Patch55: 0055-Client-Remove-flip-popup-constraints.patch
|
|
||||||
|
|
||||||
|
|
||||||
Patch102: qtwayland-decoration-support-backports-from-qt6.patch
|
Patch102: qtwayland-decoration-support-backports-from-qt6.patch
|
||||||
|
|
||||||
@ -180,6 +175,9 @@ popd
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jun 12 2023 Jan Grulich <jgrulich@redhat.com> - 5.15.10-1
|
||||||
|
- 5.15.10
|
||||||
|
|
||||||
* Tue Apr 11 2023 Jan Grulich <jgrulich@redhat.com>
|
* Tue Apr 11 2023 Jan Grulich <jgrulich@redhat.com>
|
||||||
- 5.15.9
|
- 5.15.9
|
||||||
|
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (qtwayland-everywhere-opensource-src-5.15.9.tar.xz) = d108d63ceeb3b1a8905ad7f53a7271fca6a3506679d352b7290cdf8c00e1c180b6c561ee013a674002b89e23f58cfb7b909dfc5a8fdec6cece7e0a782be77978
|
SHA512 (qtwayland-everywhere-opensource-src-5.15.10.tar.xz) = 214b1fec7dfd815d148a7485f7811e623b06d172e58e4ee3167264a4e4b8f4aeec11474e574f91652a0bd3a48476a6747cad468f1e5035c49a55a96fc1400899
|
||||||
|
Loading…
Reference in New Issue
Block a user