From e840b8b2e3d62dfc222b672a0ba32e7da8dc159e Mon Sep 17 00:00:00 2001 From: Gatis Paeglis Date: Mon, 1 Oct 2012 13:53:10 +0200 Subject: Stop delivering messages when drop has occurred. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task-number: QTBUG-27406 Change-Id: If14c108060ad6de70991658f0e0249eb544b87a0 Reviewed-by: Samuel Rødal --- src/plugins/platforms/xcb/qxcbdrag.cpp | 6 ++++++ src/plugins/platforms/xcb/qxcbdrag.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'src/plugins/platforms') diff --git a/src/plugins/platforms/xcb/qxcbdrag.cpp b/src/plugins/platforms/xcb/qxcbdrag.cpp index 247b2c991b..1a2de82fd3 100644 --- a/src/plugins/platforms/xcb/qxcbdrag.cpp +++ b/src/plugins/platforms/xcb/qxcbdrag.cpp @@ -484,6 +484,12 @@ void QXcbDrag::move(const QMouseEvent *me) void QXcbDrag::drop(const QMouseEvent *event) { QBasicDrag::drop(event); + + if (heartbeat != -1) { + killTimer(heartbeat); + heartbeat = -1; + } + if (!current_target) return; diff --git a/src/plugins/platforms/xcb/qxcbdrag.h b/src/plugins/platforms/xcb/qxcbdrag.h index ef277e7eec..99c1e2d78f 100644 --- a/src/plugins/platforms/xcb/qxcbdrag.h +++ b/src/plugins/platforms/xcb/qxcbdrag.h @@ -143,7 +143,7 @@ private: xcb_window_t current_proxy_target; QXcbScreen *current_screen; - + // timer used when target wants "continuous" move messages (eg. scroll) int heartbeat; QVector drag_types; -- cgit v1.2.3