diff --git a/meshroom/ui/qml/Viewer3D/AlembicLoader.qml b/meshroom/ui/qml/Viewer3D/AlembicLoader.qml index 5756e140..641b3c2e 100644 --- a/meshroom/ui/qml/Viewer3D/AlembicLoader.qml +++ b/meshroom/ui/qml/Viewer3D/AlembicLoader.qml @@ -57,10 +57,22 @@ AlembicEntity { }, ObjectPicker { id: cameraPicker - onPressed: pick.accepted = cameraPickingEnabled - onReleased: _reconstruction.selectedViewId = camSelector.viewId + property point pos + onPressed: { + pos = pick.position; + pick.accepted = (pick.buttons & Qt.LeftButton) && cameraPickingEnabled + } + onReleased: { + const delta = Qt.point(Math.abs(pos.x - pick.position.x), Math.abs(pos.y - pick.position.y)); + // only trigger picking when mouse has not moved between press and release + if(delta.x + delta.y < 4) + { + _reconstruction.selectedViewId = camSelector.viewId; + } + } } ] } + } }