diff options
author | Iain <qt-info@nokia.com> | 2009-08-21 13:23:16 (GMT) |
---|---|---|
committer | Iain <qt-info@nokia.com> | 2009-08-21 13:23:16 (GMT) |
commit | d2cfe342ff109e7135fe2fcb00f60d918a7bfaa5 (patch) | |
tree | 26a2edc99e561721fad57d27f84a2a6c0be73a3c /src/gui/kernel/qdnd_x11.cpp | |
parent | 6df41a9378e39f4d46cee1a085463d55fe2af5aa (diff) | |
parent | ab1df6dea670a60bfef5efd81d6687f9534cfc5d (diff) | |
download | Qt-d2cfe342ff109e7135fe2fcb00f60d918a7bfaa5.zip Qt-d2cfe342ff109e7135fe2fcb00f60d918a7bfaa5.tar.gz Qt-d2cfe342ff109e7135fe2fcb00f60d918a7bfaa5.tar.bz2 |
Merge commit 'origin/master' into symbolVisibility
Diffstat (limited to 'src/gui/kernel/qdnd_x11.cpp')
-rw-r--r-- | src/gui/kernel/qdnd_x11.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gui/kernel/qdnd_x11.cpp b/src/gui/kernel/qdnd_x11.cpp index a4042c1..8f92fea 100644 --- a/src/gui/kernel/qdnd_x11.cpp +++ b/src/gui/kernel/qdnd_x11.cpp @@ -1073,12 +1073,14 @@ void qt_xdnd_send_leave() if (!qt_xdnd_current_target) return; + QDragManager *manager = QDragManager::self(); + XClientMessageEvent leave; leave.type = ClientMessage; leave.window = qt_xdnd_current_target; leave.format = 32; leave.message_type = ATOM(XdndLeave); - leave.data.l[0] = qt_xdnd_dragsource_xid; + leave.data.l[0] = manager->dragPrivate()->source->effectiveWinId(); leave.data.l[1] = 0; // flags leave.data.l[2] = 0; // x, y leave.data.l[3] = 0; // w, h @@ -1094,8 +1096,8 @@ void qt_xdnd_send_leave() else XSendEvent(X11->display, qt_xdnd_current_proxy_target, False, NoEventMask, (XEvent*)&leave); + // reset the drag manager state - QDragManager *manager = QDragManager::self(); manager->willDrop = false; if (global_accepted_action != Qt::IgnoreAction) manager->emitActionChanged(Qt::IgnoreAction); |