diff --git a/ChangeLog.md b/ChangeLog.md index 9d2f4f3fae773b509d3920193b33c17285cf60f4..0bed17e554f83efa3baa25733352bc2ee5821536 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -7,6 +7,7 @@ Note: This file only contains high level features or important fixes. ### 4.0.6 - Not yet released * Analyze/Log Download - Fix download on mobile versions of QGC +* Fly: Fix problems where Continue Mission and Change Altitude were not available after a Mission Pause. ### 4.0.5 - Stable diff --git a/src/FirmwarePlugin/APM/APMFirmwarePlugin.cc b/src/FirmwarePlugin/APM/APMFirmwarePlugin.cc index df0d86f89b7d5d05392e189042866592da2e02ed..3f913a22de30431627828c9c82f364ed54717698 100644 --- a/src/FirmwarePlugin/APM/APMFirmwarePlugin.cc +++ b/src/FirmwarePlugin/APM/APMFirmwarePlugin.cc @@ -936,6 +936,11 @@ void APMFirmwarePlugin::guidedModeChangeAltitude(Vehicle* vehicle, double altitu return; } + if (abs(altitudeChange) < 0.01) { + // This prevents unecessary changes to Guided mode when the users selects pause and doesn't really touch the altitude slider + return; + } + setGuidedMode(vehicle, true); mavlink_message_t msg; diff --git a/src/FlightDisplay/FlightDisplayView.qml b/src/FlightDisplay/FlightDisplayView.qml index 9bcbf6918e49f174885293783af5ac1412e0f2a1..7a60e8f4ced8551d068eb3dc60fb7635454c98ae 100644 --- a/src/FlightDisplay/FlightDisplayView.qml +++ b/src/FlightDisplay/FlightDisplayView.qml @@ -639,8 +639,7 @@ Item { { name: qsTr("Action"), iconSource: "/res/action.svg", - buttonVisible: !_guidedController.showPause, - buttonEnabled: _anyActionAvailable, + buttonVisible: _anyActionAvailable, action: -1 } ] diff --git a/src/FlightDisplay/GuidedActionsController.qml b/src/FlightDisplay/GuidedActionsController.qml index b3027d3605e159ee38868c90e30150c0885b7887..1507646aa06455cb5dc5d1749b24aba9a4ea028e 100644 --- a/src/FlightDisplay/GuidedActionsController.qml +++ b/src/FlightDisplay/GuidedActionsController.qml @@ -203,7 +203,12 @@ Item { } _outputState() } - // End of hack + onShowChangeAltChanged: { + if (_corePlugin.guidedActionsControllerLogging()) { + console.log("showChangeAlt", showChangeAlt) + } + _outputState() + } on_VehicleFlyingChanged: { _outputState()