diff options
author | Giulio Camuffo <giulio.camuffo@jollamobile.com> | 2015-04-30 22:07:49 +0300 |
---|---|---|
committer | Giulio Camuffo <giulio.camuffo@jollamobile.com> | 2015-06-09 08:22:22 +0000 |
commit | caa58fe9e892cb95d4f990993c8e067b69530ed6 (patch) | |
tree | ae92e091c71e223bae29e577376a8bea3511f97a | |
parent | f0e852e545789d4d52149ece368fa388c558a43f (diff) | |
download | qtwayland-caa58fe9e892cb95d4f990993c8e067b69530ed6.tar.gz qtwayland-caa58fe9e892cb95d4f990993c8e067b69530ed6.tar.bz2 qtwayland-caa58fe9e892cb95d4f990993c8e067b69530ed6.zip |
Don't generate spurious selection events
By calling destroy() on the active wl_data_source before replacing
it with a new one and calling set_selection() we trigger a spurious
selection(null) event before the one with the offer for the source
we are going to set.
Change-Id: I6c2f2fd029fa523312b9892c6a5050805dfa83b0
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
-rw-r--r-- | src/client/qwaylanddatadevice.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/client/qwaylanddatadevice.cpp b/src/client/qwaylanddatadevice.cpp index 03a8c4b8..a3e084a0 100644 --- a/src/client/qwaylanddatadevice.cpp +++ b/src/client/qwaylanddatadevice.cpp @@ -94,10 +94,10 @@ QWaylandDataSource *QWaylandDataDevice::selectionSource() const void QWaylandDataDevice::setSelectionSource(QWaylandDataSource *source) { - m_selectionSource.reset(source); if (source) connect(source, &QWaylandDataSource::cancelled, this, &QWaylandDataDevice::selectionSourceCancelled); set_selection(source ? source->object() : Q_NULLPTR, m_inputDevice->serial()); + m_selectionSource.reset(source); } QWaylandDataOffer *QWaylandDataDevice::dragOffer() const |