diff --git a/apps/student/src/main/java/com/instructure/student/features/modules/progression/CourseModuleProgressionFragment.kt b/apps/student/src/main/java/com/instructure/student/features/modules/progression/CourseModuleProgressionFragment.kt index 43404506f2..8ceddd27c8 100644 --- a/apps/student/src/main/java/com/instructure/student/features/modules/progression/CourseModuleProgressionFragment.kt +++ b/apps/student/src/main/java/com/instructure/student/features/modules/progression/CourseModuleProgressionFragment.kt @@ -344,7 +344,11 @@ class CourseModuleProgressionFragment : ParentFragment(), Bookmarkable { repository.markAsRead(canvasContext, moduleItem) // Update the module item locally, needed to unlock modules as the user ViewPages through them - getCurrentModuleItem(currentPos)?.completionRequirement?.completed = true + // Only mark as completed if the requirement is satisfied by viewing (not must_mark_done) + val completionRequirement = getCurrentModuleItem(currentPos)?.completionRequirement + if (completionRequirement?.type != ModuleItem.MUST_MARK_DONE) { + completionRequirement?.completed = true + } setupNextModule(getModuleItemGroup(currentPos))