diff --git a/src/QmlControls/PreFlightCheckGroup.qml b/src/QmlControls/PreFlightCheckGroup.qml index e1b1dd146da7b3dce3715aa3eea6eacf010fac26..0f5b872dc9854b7b0790e5f4793f370539899eeb 100644 --- a/src/QmlControls/PreFlightCheckGroup.qml +++ b/src/QmlControls/PreFlightCheckGroup.qml @@ -22,7 +22,7 @@ Column { property alias _checked: header.checked - onPassedChanged: parent.groupPassedChanged(ObjectModel.index) + onPassedChanged: parent.groupPassedChanged(ObjectModel.index, passed) Component.onCompleted: { enabled = _checked diff --git a/src/QmlControls/PreFlightCheckList.qml b/src/QmlControls/PreFlightCheckList.qml index b37caf1268169d7cdb8ef74f3ad13bb534dc7b55..f36316b95c61963251d84d14e1a4fef5c1ac6658 100644 --- a/src/QmlControls/PreFlightCheckList.qml +++ b/src/QmlControls/PreFlightCheckList.qml @@ -23,31 +23,31 @@ Rectangle { property alias model: checkListRepeater.model - property bool _passed: false + property bool _passed: false - // We delay the updates when a group passes so the user can see all items green for a moment prior to hiding - Timer { - id: delayedGroupPassed - interval: 750 - - property int index - - onTriggered: { + function _handleGroupPassedChanged(index, passed) { + if (passed) { + // Collapse current group var group = checkListRepeater.itemAt(index) group._checked = false + // Expand next group if (index + 1 < checkListRepeater.count) { group = checkListRepeater.itemAt(index + 1) group.enabled = true group._checked = true } - for (var i=0; i