Index: lams_central/web/includes/javascript/authoring/authoringActivity.js =================================================================== diff -u -rf28a0198a795c1c0aa363e366bbbcb27828c55cf -r8ebcbbb89fb2cc1c9677f95bdb104c20acf65aa2 --- lams_central/web/includes/javascript/authoring/authoringActivity.js (.../authoringActivity.js) (revision f28a0198a795c1c0aa363e366bbbcb27828c55cf) +++ lams_central/web/includes/javascript/authoring/authoringActivity.js (.../authoringActivity.js) (revision 8ebcbbb89fb2cc1c9677f95bdb104c20acf65aa2) @@ -1356,10 +1356,11 @@ findTransitionPoints : function(fromActivity, toActivity) { var fromActivityBox = fromActivity.items.getBBox(), toActivityBox = toActivity.items.getBBox(), - horizontalDelta = Math.abs(fromActivityBox.cx - toActivityBox.cx), - verticalDelta = Math.abs(fromActivityBox.cy - toActivityBox.cy), - // if the box is more up/down then left/right, then arrow direction is vertical - direction = horizontalDelta > verticalDelta ? 'horizontal' : 'vertical', + // vertical direction takes priority + // horizontal is used only if activities are in the same line + direction = (fromActivityBox.y > toActivityBox.y && fromActivityBox.y < toActivityBox.y2) + || (fromActivityBox.y2 > toActivityBox.y && fromActivityBox.y2 < toActivityBox.y2) + ? 'horizontal' : 'vertical', points = null; if (direction === 'vertical') {