diff --git a/src/MissionManager/SurveyMissionItem.cc b/src/MissionManager/SurveyMissionItem.cc index 367fa865cecb8b644fff7fc028c8c0ac64342cc5..4c1acd3bb71b712889219670b6a292709fb6fbac 100644 --- a/src/MissionManager/SurveyMissionItem.cc +++ b/src/MissionManager/SurveyMissionItem.cc @@ -230,6 +230,7 @@ void SurveyMissionItem::save(QJsonArray& missionItems) saveObject[_jsonHoverAndCaptureKey] = _hoverAndCaptureFact.rawValue().toBool(); saveObject[_jsonRefly90DegreesKey] = _refly90Degrees; saveObject[_jsonCameraTriggerDistanceKey] = _cameraTriggerDistanceFact.rawValue().toDouble(); + saveObject[_jsonCameraTriggerInTurnaroundKey] = _cameraTriggerInTurnaroundFact.rawValue().toBool(); QJsonObject gridObject; gridObject[_jsonGridAltitudeKey] = _gridAltitudeFact.rawValue().toDouble(); @@ -310,6 +311,7 @@ bool SurveyMissionItem::load(const QJsonObject& complexObject, int sequenceNumbe { _jsonFixedValueIsAltitudeKey, QJsonValue::Bool, true }, { _jsonHoverAndCaptureKey, QJsonValue::Bool, false }, { _jsonRefly90DegreesKey, QJsonValue::Bool, false }, + { _jsonCameraTriggerInTurnaroundKey, QJsonValue::Bool, false }, // Should really be required, but it was missing from initial code due to bug }; if (!JsonHelper::validateKeys(v2Object, mainKeyInfoList, errorString)) { return false; @@ -328,10 +330,11 @@ bool SurveyMissionItem::load(const QJsonObject& complexObject, int sequenceNumbe setSequenceNumber(sequenceNumber); - _manualGridFact.setRawValue (v2Object[_jsonManualGridKey].toBool(true)); - _fixedValueIsAltitudeFact.setRawValue (v2Object[_jsonFixedValueIsAltitudeKey].toBool(true)); - _gridAltitudeRelativeFact.setRawValue (v2Object[_jsonGridAltitudeRelativeKey].toBool(true)); - _hoverAndCaptureFact.setRawValue (v2Object[_jsonHoverAndCaptureKey].toBool(false)); + _manualGridFact.setRawValue (v2Object[_jsonManualGridKey].toBool(true)); + _fixedValueIsAltitudeFact.setRawValue (v2Object[_jsonFixedValueIsAltitudeKey].toBool(true)); + _gridAltitudeRelativeFact.setRawValue (v2Object[_jsonGridAltitudeRelativeKey].toBool(true)); + _hoverAndCaptureFact.setRawValue (v2Object[_jsonHoverAndCaptureKey].toBool(false)); + _cameraTriggerInTurnaroundFact.setRawValue (v2Object[_jsonCameraTriggerInTurnaroundKey].toBool(true)); _refly90Degrees = v2Object[_jsonRefly90DegreesKey].toBool(false); diff --git a/src/Vehicle/Vehicle.cc b/src/Vehicle/Vehicle.cc index 2d03a92e9e72a764269746d79a4b0cc5ffdd6118..890789e9dcbf6158f988d046ba696b182a8afb11 100644 --- a/src/Vehicle/Vehicle.cc +++ b/src/Vehicle/Vehicle.cc @@ -1022,11 +1022,12 @@ void Vehicle::_handleSysStatus(mavlink_message_t& message) } _batteryFactGroup.percentRemaining()->setRawValue(sysStatus.battery_remaining); - if (sysStatus.battery_remaining > 0 && - sysStatus.battery_remaining < _settingsManager->appSettings()->batteryPercentRemainingAnnounce()->rawValue().toInt() && - sysStatus.battery_remaining < _lastAnnouncedLowBatteryPercent) { + if (sysStatus.battery_remaining > 0) { + if (sysStatus.battery_remaining < _settingsManager->appSettings()->batteryPercentRemainingAnnounce()->rawValue().toInt() && + sysStatus.battery_remaining < _lastAnnouncedLowBatteryPercent) { + _say(QString("%1 low battery: %2 percent remaining").arg(_vehicleIdSpeech()).arg(sysStatus.battery_remaining)); + } _lastAnnouncedLowBatteryPercent = sysStatus.battery_remaining; - _say(tr("%1 low battery: %2 percent remaining").arg(_vehicleIdSpeech()).arg(sysStatus.battery_remaining)); } _onboardControlSensorsPresent = sysStatus.onboard_control_sensors_present;