diff options
author | Mike Krus <mike.krus@kdab.com> | 2017-04-12 09:26:52 +0100 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2017-04-12 14:59:33 +0000 |
commit | 8c245b73cfacd78c664bc6dd8779b001fa769dfc (patch) | |
tree | 68ebd4624d616e7fea3c552c241cc1e5de610006 /src | |
parent | 9f693be70d05f2790badb6bc92ad5c538aa6ea34 (diff) |
Picking: don’t emit click if mouse released on different entity
Task-number: QTBUG-59582
Change-Id: I88e49add59d1caa3167576c8f0c014dd61211f29
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/render/jobs/pickboundingvolumejob.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/render/jobs/pickboundingvolumejob.cpp b/src/render/jobs/pickboundingvolumejob.cpp index edc847bc4..7bd45587c 100644 --- a/src/render/jobs/pickboundingvolumejob.cpp +++ b/src/render/jobs/pickboundingvolumejob.cpp @@ -362,13 +362,12 @@ void PickBoundingVolumeJob::dispatchPickEvents(const QMouseEvent &event, } case QEvent::MouseButtonRelease: { - if (lastCurrentPicker != nullptr && m_currentPicker == objectPickerHandle) - m_currentPicker = HObjectPicker(); // Only send the release event if it was pressed - if (objectPicker->isPressed()) { - if (lastCurrentPicker == objectPicker) - objectPicker->onClicked(pickEvent); + if (objectPicker->isPressed()) objectPicker->onReleased(pickEvent); + if (lastCurrentPicker != nullptr && m_currentPicker == objectPickerHandle) { + objectPicker->onClicked(pickEvent); + m_currentPicker = HObjectPicker(); } break; } |