42 lines
1.6 KiB
Diff
42 lines
1.6 KiB
Diff
|
From c6d041e7ca3eb7945bf143a5c4fffcb2b2afba75 Mon Sep 17 00:00:00 2001
|
||
|
From: Urs Fleisch <ufleisch@users.sourceforge.net>
|
||
|
Date: Sun, 1 May 2016 14:31:48 +0200
|
||
|
Subject: [PATCH 554/652] xcb: Fix drag and drop to Emacs.
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
|
||
|
Unfortunately, the improved patch for QTBUG-45812 fixed things for
|
||
|
Chromium, but did no longer work for Emacs. This fixes commit [269fdb]
|
||
|
to make it work for both Emacs and Chromium.
|
||
|
|
||
|
Task-number: QTBUG-45812
|
||
|
Change-Id: I2fca708503f27679681bc6959de1ad94943a063e
|
||
|
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
|
||
|
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
|
||
|
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|
||
|
---
|
||
|
src/plugins/platforms/xcb/qxcbdrag.cpp | 4 ++--
|
||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/src/plugins/platforms/xcb/qxcbdrag.cpp b/src/plugins/platforms/xcb/qxcbdrag.cpp
|
||
|
index f1428d0..529f91e 100644
|
||
|
--- a/src/plugins/platforms/xcb/qxcbdrag.cpp
|
||
|
+++ b/src/plugins/platforms/xcb/qxcbdrag.cpp
|
||
|
@@ -1134,10 +1134,10 @@ void QXcbDrag::handleSelectionRequest(const xcb_selection_request_event_t *event
|
||
|
at = findTransactionByWindow(event->requestor);
|
||
|
}
|
||
|
|
||
|
- if (at == -1 && event->time == XCB_CURRENT_TIME) {
|
||
|
+ if (at == -1) {
|
||
|
xcb_window_t target = findXdndAwareParent(connection(), event->requestor);
|
||
|
if (target) {
|
||
|
- if (current_target == target)
|
||
|
+ if (event->time == XCB_CURRENT_TIME && current_target == target)
|
||
|
at = -2;
|
||
|
else
|
||
|
at = findTransactionByWindow(target);
|
||
|
--
|
||
|
2.7.4
|
||
|
|