Index: lams_flash/src/central/flash/org/lamsfoundation/lams/learner/ls/LessonController.as =================================================================== diff -u -r671b50bb9f03c1f507b621e842b619070d338d65 -raa7fb007420fc9abcf974fd750fc50c6c25cb0ae --- lams_flash/src/central/flash/org/lamsfoundation/lams/learner/ls/LessonController.as (.../LessonController.as) (revision 671b50bb9f03c1f507b621e842b619070d338d65) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/learner/ls/LessonController.as (.../LessonController.as) (revision aa7fb007420fc9abcf974fd750fc50c6c25cb0ae) @@ -21,6 +21,7 @@ * ************************************************************************ */ +import org.lamsfoundation.lams.common.LearnerActivity; import org.lamsfoundation.lams.common.LearnerComplexActivity; import org.lamsfoundation.lams.common.ApplicationParent; import org.lamsfoundation.lams.common.comms.Communication; @@ -100,8 +101,13 @@ } else { _lessonModel.getLesson().getActivityURL(URLToSend, false); } + } else if(_app.module == 'learner' && // sequence activities of optional sequences + ca.activity.isOptionalSequenceActivity(_lessonModel.learningDesignModel.getActivityByUIID(ca.activity.parentUIID))) { + + _lessonModel.getLesson().moveToActivity(_lessonModel.progressData.getCurrentActivityId(), ca.activity.parentActivityID); + } else if(_root.mode == 'preview') { - /* if child Activity is double-clicked then load the parent Activity */ + // if child Activity is double-clicked then load the parent Activity if(ca.activity.parentActivityID != null || ca.activity.parentActivityID != undefined){ _lessonModel.getLesson().moveToActivity(_lessonModel.progressData.getCurrentActivityId(), ca.activity.parentActivityID); } else { Index: lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerActivity.as =================================================================== diff -u -re4ee9834b56ccd57cf1a8548cec5d58338a39cd3 -raa7fb007420fc9abcf974fd750fc50c6c25cb0ae --- lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerActivity.as (.../LearnerActivity.as) (revision e4ee9834b56ccd57cf1a8548cec5d58338a39cd3) +++ lams_flash/src/common/flash/org/lamsfoundation/lams/common/LearnerActivity.as (.../LearnerActivity.as) (revision aa7fb007420fc9abcf974fd750fc50c6c25cb0ae) @@ -99,6 +99,7 @@ private var sentFrom:String; private var canvasActivityGrouped_mc:MovieClip; private var _dcStartTime:Number = 0; + private var _doubleClickInterval:Number; private var _doubleClicking:Boolean; private var _visibleWidth:Number; private var _visibleHeight:Number; @@ -121,7 +122,7 @@ _tm = ThemeManager.getInstance(); _tip = new ToolTip(); - _dcStartTime = (_parent._parent.getActiveComplex() == this.activity || _parent._parent.getActiveSequence() == this.activity) ? new Date().getTime() : 0; + _dcStartTime = new Date().getTime(); //Get reference to application and design data model app = ApplicationParent.getInstance(); @@ -383,9 +384,14 @@ // check double-click var now:Number = new Date().getTime(); + Debugger.log("LearnerActivity->onPress: (now - _dcStartTime)"+(now - _dcStartTime), Debugger.GEN, "onPress", "LearnerActivity"); if((now - _dcStartTime) <= Config.DOUBLE_CLICK_DELAY){ _doubleClicking = true; + if (_doubleClickInterval != null && _doubleClickInterval != undefined) { + clearInterval(_doubleClickInterval); + Cursor.showCursor(ApplicationParent.C_DEFAULT); + } c.activityDoubleClick(this); Debugger.log('DoubleClicking:+'+this,Debugger.GEN,'onPress','LearnerActivity'); }else{ @@ -429,16 +435,8 @@ if(LearnerComplexActivity(this._parent._parent).activity.activityUIID == this.activity.parentUIID) { - LearnerComplexActivity(this._parent._parent).setActiveComplex(null); //**** - - if(activeSequence) { - // close current active sequence - LearnerComplexActivity(this._parent._parent).removeAllChildrenAndInputSequence(null, true); - } else { - // open sequence - LearnerComplexActivity(this._parent._parent).removeAllChildrenAndInputSequence(this.activity, true); - } - + _doubleClickInterval = setInterval(Proxy.create(this, selectActiveSequence, activeSequence), (Config.DOUBLE_CLICK_DELAY - 100)); + Cursor.showCursor(ApplicationParent.C_HOURGLASS); } } else if(this.activity.isOptionsWithSequencesActivity() || this.activity.isOptionalActivity() || this.activity.isParallelActivity() || this.activity.isBranchingActivity()) { Debugger.log('activeComplex:'+activeComplex, Debugger.CRITICAL,'onRelease','LearnerActivity'); @@ -460,6 +458,24 @@ } + private function selectActiveSequence(activeSequence):Void { + + if (_doubleClickInterval != null && _doubleClickInterval != undefined) { + clearInterval(_doubleClickInterval); + Cursor.showCursor(ApplicationParent.C_DEFAULT); + } + + LearnerComplexActivity(this._parent._parent).setActiveComplex(null); //**** + + if(activeSequence) { + // close current active sequence + LearnerComplexActivity(this._parent._parent).removeAllChildrenAndInputSequence(null, true); + } else { + // open sequence + LearnerComplexActivity(this._parent._parent).removeAllChildrenAndInputSequence(this.activity, true); + } + } + public function onReleaseOutside():Void{ Debugger.log('ReleasingOutside:'+this,Debugger.GEN,'onReleaseOutside','LearnerActivity'); Index: lams_learning/web/lams_learner.swf =================================================================== diff -u -r26d82b53f36d547721cd9e7f565004a644590c3b -raa7fb007420fc9abcf974fd750fc50c6c25cb0ae Binary files differ Index: lams_monitoring/web/lams_monitoring.swf =================================================================== diff -u -r61865aa213e8843ff2fad2b2f2709143c14549bf -raa7fb007420fc9abcf974fd750fc50c6c25cb0ae Binary files differ Index: lams_monitoring/web/lams_monitoring_library.swf =================================================================== diff -u -r61865aa213e8843ff2fad2b2f2709143c14549bf -raa7fb007420fc9abcf974fd750fc50c6c25cb0ae Binary files differ