Index: lams_central/web/includes/javascript/authoring/authoringGeneral.js =================================================================== diff -u -rfa2ad14fcf969120bc068f9b22e1fcebf62ce39d -rf05bf757516a9b4b8170462f9de833767fa71c5a --- lams_central/web/includes/javascript/authoring/authoringGeneral.js (.../authoringGeneral.js) (revision fa2ad14fcf969120bc068f9b22e1fcebf62ce39d) +++ lams_central/web/includes/javascript/authoring/authoringGeneral.js (.../authoringGeneral.js) (revision f05bf757516a9b4b8170462f9de833767fa71c5a) @@ -45,6 +45,8 @@ 'drawMode' : false, // should the sequence be saved before exiting? 'modified' : false, + // was start point of a new branching placed? + 'addBranchingStart' : null, // list of all dialogs, so they can be easily closed all at once 'dialogs' : [], // stores precached tool images so they can be used in exported SVG Index: lams_central/web/includes/javascript/authoring/authoringHandler.js =================================================================== diff -u -rd3b4ae35d37206b31ca462b0a9411e45e28ce5ec -rf05bf757516a9b4b8170462f9de833767fa71c5a --- lams_central/web/includes/javascript/authoring/authoringHandler.js (.../authoringHandler.js) (revision d3b4ae35d37206b31ca462b0a9411e45e28ce5ec) +++ lams_central/web/includes/javascript/authoring/authoringHandler.js (.../authoringHandler.js) (revision f05bf757516a9b4b8170462f9de833767fa71c5a) @@ -215,6 +215,17 @@ .off('mouseup') .off('mousemove'); + // if the user started adding a branching and did not finish it + if (layout.addBranchingStart){ + layout.infoDialog.text('').dialog('close'); + + if (layout.addBranchingStart instanceof ActivityDefs.BranchingEdgeActivity) { + layout.activities.splice(layout.activities.indexOf(layout.addBranchingStart), 1); + layout.addBranchingStart.items.remove(); + } + layout.addBranchingStart = null; + } + if (init) { // if clicked anywhere, activity selection is gone canvas.click(HandlerLib.canvasClickHandler) Index: lams_central/web/includes/javascript/authoring/authoringMenu.js =================================================================== diff -u -re8dd761edc867d6ea9f14d277bf73f13fc7a09f4 -rf05bf757516a9b4b8170462f9de833767fa71c5a --- lams_central/web/includes/javascript/authoring/authoringMenu.js (.../authoringMenu.js) (revision e8dd761edc867d6ea9f14d277bf73f13fc7a09f4) +++ lams_central/web/includes/javascript/authoring/authoringMenu.js (.../authoringMenu.js) (revision f05bf757516a9b4b8170462f9de833767fa71c5a) @@ -157,6 +157,8 @@ var dialog = layout.infoDialog.text(LABELS.BRANCHING_START_PLACE_PROMPT); dialog.dialog('open'); + layout.addBranchingStart = true; + var branchingActivity = null; canvas.css('cursor', 'pointer').click(function(event){ // pageX and pageY tell event coordinates relative to the whole page @@ -171,6 +173,7 @@ if (branchingActivity) { // converge point was just place, end of function + layout.addBranchingStart = null; HandlerLib.resetCanvasMode(true); dialog.text('').dialog('close'); @@ -179,6 +182,7 @@ } else { // extract main branchingActivity structure from created start point branchingActivity = branchingEdge.branchingActivity; + layout.addBranchingStart = branchingEdge; dialog.text(LABELS.BRANCHING_END_PLACE_PROMPT); } });