Blame SOURCES/0023-Client-Connect-drags-being-accepted-to-updating-the-.patch

f8c1a9
From fcc2f57cefa66339c8cb6632f45a47fbb99bb60d Mon Sep 17 00:00:00 2001
f8c1a9
From: David Edmundson <davidedmundson@kde.org>
f8c1a9
Date: Tue, 9 Feb 2021 16:09:21 +0000
f8c1a9
Subject: [PATCH 23/36] Client: Connect drags being accepted to updating the
f8c1a9
 source drag icon
f8c1a9
f8c1a9
Currently in a multi-process drag and drop when the other client accepts
f8c1a9
a given mimetype for dropping it calls accept, which is received by the
f8c1a9
client, but the drag cursor is never updated.
f8c1a9
f8c1a9
Instead the drag cursor was updated in the data_device_enter events
f8c1a9
which only works if we are operating within one process.
f8c1a9
f8c1a9
The code existed to handle this existed but both the targetChanged
f8c1a9
signal and the dragSourceTargetChanged were unused.
f8c1a9
f8c1a9
Change-Id: I443f31f1b2ef72d4b5eadaf7115f97544dac883a
f8c1a9
Reviewed-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
f8c1a9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
f8c1a9
(cherry picked from commit 08e478448a97a440d5a968a5d797f0d7302140c2)
f8c1a9
---
f8c1a9
 src/client/qwaylanddatadevice.cpp | 1 +
f8c1a9
 1 file changed, 1 insertion(+)
f8c1a9
f8c1a9
diff --git a/src/client/qwaylanddatadevice.cpp b/src/client/qwaylanddatadevice.cpp
f8c1a9
index 19944a34..54a69c3c 100644
f8c1a9
--- a/src/client/qwaylanddatadevice.cpp
f8c1a9
+++ b/src/client/qwaylanddatadevice.cpp
f8c1a9
@@ -124,6 +124,7 @@ bool QWaylandDataDevice::startDrag(QMimeData *mimeData, QWaylandWindow *icon)
f8c1a9
 
f8c1a9
     m_dragSource.reset(new QWaylandDataSource(m_display->dndSelectionHandler(), mimeData));
f8c1a9
     connect(m_dragSource.data(), &QWaylandDataSource::cancelled, this, &QWaylandDataDevice::dragSourceCancelled);
f8c1a9
+    connect(m_dragSource.data(), &QWaylandDataSource::targetChanged, this, &QWaylandDataDevice::dragSourceTargetChanged);
f8c1a9
 
f8c1a9
     start_drag(m_dragSource->object(), origin->wlSurface(), icon->wlSurface(), m_display->currentInputDevice()->serial());
f8c1a9
     return true;
f8c1a9
-- 
f8c1a9
2.33.1
f8c1a9