diff --git a/Canvas.js b/Canvas.js index c99219890..6f5a49c25 100644 --- a/Canvas.js +++ b/Canvas.js @@ -236,7 +236,8 @@ function newCanvas () { try { let point = { x: event.pageX, - y: event.pageY - CURRENT_TOP_MARGIN + y: event.pageY - CURRENT_TOP_MARGIN, + button: event.button } dragVector.downX = point.x @@ -706,3 +707,4 @@ function newCanvas () { } } } + diff --git a/FloatingSpace/StrategyPart.js b/FloatingSpace/StrategyPart.js index 0849f13c3..6da021f37 100644 --- a/FloatingSpace/StrategyPart.js +++ b/FloatingSpace/StrategyPart.js @@ -79,6 +79,7 @@ function newStrategyPart () { let errorMessage = '' let formulaValue = 0 + let detachingEnabled = false return thisObject @@ -373,6 +374,7 @@ function newStrategyPart () { function detachingPhysics () { if (isDragging !== true) { return } if (thisObject.isFrozen === true) { return } + if (detachingEnabled === false) { return } let distanceToChainParent = Math.sqrt(Math.pow(thisObject.payload.position.x - thisObject.payload.targetPosition.x, 2) + Math.pow(thisObject.payload.position.y - thisObject.payload.targetPosition.y, 2)) let ratio = distanceToChainParent / previousDistance @@ -495,6 +497,11 @@ function newStrategyPart () { thisObject.codeEditor.deactivate() } isDragging = true + if (event.button === 2) { + detachingEnabled = true + } else { + detachingEnabled = false + } } function onDragFinished (event) {