diff --git a/src/FirmwarePlugin/FirmwarePlugin.cc b/src/FirmwarePlugin/FirmwarePlugin.cc index 52086f1a17e7aecc1d06908126e1134b2f86f59c..057aca88f1604da82e3a5e34daa7bd08a7641b8e 100644 --- a/src/FirmwarePlugin/FirmwarePlugin.cc +++ b/src/FirmwarePlugin/FirmwarePlugin.cc @@ -717,9 +717,7 @@ void FirmwarePlugin::_versionFileDownloadFinished(QString& remoteFile, QString& int currType = vehicle->firmwareVersionType(); // Check if lower version than stable or same version but different type - if (vehicle->versionCompare(version) < 0 - || (vehicle->versionCompare(version) == 0 && currType != FIRMWARE_VERSION_TYPE_OFFICIAL)) - { + if (currType == FIRMWARE_VERSION_TYPE_OFFICIAL && vehicle->versionCompare(version) < 0) { const static QString currentVersion = QString("%1.%2.%3").arg(vehicle->firmwareMajorVersion()) .arg(vehicle->firmwareMinorVersion()) .arg(vehicle->firmwarePatchVersion()); 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