Index: lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java =================================================================== diff -u -r0aae4208886026f429f05b458b79c14f8d7030d4 -r779cad98782bee132f0716b30c2fc6e59e47e49f --- lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java (.../MonitoringService.java) (revision 0aae4208886026f429f05b458b79c14f8d7030d4) +++ lams_monitoring/src/java/org/lamsfoundation/lams/monitoring/service/MonitoringService.java (.../MonitoringService.java) (revision 779cad98782bee132f0716b30c2fc6e59e47e49f) @@ -1419,7 +1419,11 @@ learnerProgress.getAttemptedActivities().remove(activity); learnerProgress.getCompletedActivities().remove(activity); if (removeLearnerContent) { - resetReadOnly = removeLearnerContent(activity, learner, resetReadOnly); + // the iteration goes from the end of the sequence to the beginning + // once an activity reports it will not reset its read-only flag, no other activities will reset it + // Also target activity does not have it reset + resetReadOnly = removeLearnerContent(activity, learner, + resetReadOnly && !activity.equals(targetActivity)); } }