diff --git a/src/FlightDisplay/PreFlightCheckList.qml b/src/FlightDisplay/PreFlightCheckList.qml index 495723505c7b62bc0e79700e1208801830b70ecf..5acebb0b9ef0d98cc283704f944d591c9c4c956d 100644 --- a/src/FlightDisplay/PreFlightCheckList.qml +++ b/src/FlightDisplay/PreFlightCheckList.qml @@ -42,14 +42,18 @@ Rectangle { group = checkListRepeater.itemAt(index + 1) group.enabled = true group._checked = true - } else if ((index + 1) == checkListRepeater.count) { - // If the last group is passed, we mark the entire checklist as passed. - _passed = true - checklistDropPanel.close() } - } else { - _passed = false } + + // Walk the list and check if any group is failing + var allPassed = true + for (var i=0; i < checkListRepeater.count; i++) { + if (!checkListRepeater.itemAt(i).passed) { + allPassed = false + break + } + } + _passed = allPassed; } //-- Pick a checklist model that matches the current airframe type (if any)