diff --git a/src/FlightDisplay/GuidedActionsController.qml b/src/FlightDisplay/GuidedActionsController.qml index e3232cbba26..4c66bc7cc0e 100644 --- a/src/FlightDisplay/GuidedActionsController.qml +++ b/src/FlightDisplay/GuidedActionsController.qml @@ -281,7 +281,8 @@ Item { console.log("showStartMission", showStartMission) } _outputState() - if (showStartMission) { + if (showStartMission && + _flyViewSettings.enableAutomaticMissionPopups.rawValue) { confirmAction(actionStartMission) } } @@ -290,7 +291,8 @@ Item { console.log("showContinueMission", showContinueMission) } _outputState() - if (showContinueMission) { + if (showContinueMission && + _flyViewSettings.enableAutomaticMissionPopups.rawValue) { confirmAction(actionContinueMission) } } diff --git a/src/Settings/FlyView.SettingsGroup.json b/src/Settings/FlyView.SettingsGroup.json index 320a5b2fefc..63044702395 100644 --- a/src/Settings/FlyView.SettingsGroup.json +++ b/src/Settings/FlyView.SettingsGroup.json @@ -108,6 +108,12 @@ "shortDesc": "Show joystick indicator in toolbar", "type": "bool", "default": false +}, +{ + "name": "enableAutomaticMissionPopups", + "shortDesc": "Enable automatic mission start/resume popups", + "type": "bool", + "default": true } ] } diff --git a/src/Settings/FlyViewSettings.cc b/src/Settings/FlyViewSettings.cc index 2dda725f164..9f4e619eb52 100644 --- a/src/Settings/FlyViewSettings.cc +++ b/src/Settings/FlyViewSettings.cc @@ -29,3 +29,4 @@ DECLARE_SETTINGSFACT(FlyViewSettings, instrumentQmlFile2) DECLARE_SETTINGSFACT(FlyViewSettings, requestControlAllowTakeover) DECLARE_SETTINGSFACT(FlyViewSettings, requestControlTimeout) DECLARE_SETTINGSFACT(FlyViewSettings, showJoystickIndicatorInToolbar) +DECLARE_SETTINGSFACT(FlyViewSettings, enableAutomaticMissionPopups) diff --git a/src/Settings/FlyViewSettings.h b/src/Settings/FlyViewSettings.h index bced85b8903..fe988bc9042 100644 --- a/src/Settings/FlyViewSettings.h +++ b/src/Settings/FlyViewSettings.h @@ -39,4 +39,5 @@ class FlyViewSettings : public SettingsGroup DEFINE_SETTINGFACT(requestControlAllowTakeover) DEFINE_SETTINGFACT(requestControlTimeout) DEFINE_SETTINGFACT(showJoystickIndicatorInToolbar) + DEFINE_SETTINGFACT(enableAutomaticMissionPopups) }; diff --git a/src/UI/AppSettings/FlyViewSettings.qml b/src/UI/AppSettings/FlyViewSettings.qml index 819f9a8fe62..c732e61825f 100644 --- a/src/UI/AppSettings/FlyViewSettings.qml +++ b/src/UI/AppSettings/FlyViewSettings.qml @@ -39,6 +39,7 @@ SettingsPage { property Fact _viewer3DOsmFilePath: _viewer3DSettings.osmFilePath property Fact _viewer3DBuildingLevelHeight: _viewer3DSettings.buildingLevelHeight property Fact _viewer3DAltitudeBias: _viewer3DSettings.altitudeBias + property Fact _enableAutomaticMissionPopups: _flyViewSettings.enableAutomaticMissionPopups function mavlinkActionList() { var fileModel = QGCFileDialogController.getFiles(_settingsManager.appSettings.mavlinkActionsSavePath, "*.json") @@ -114,6 +115,14 @@ SettingsPage { fact: _flyViewSettings.showJoystickIndicatorInToolbar visible: fact.visible } + + FactCheckBoxSlider { + Layout.fillWidth: true + text: qsTr("Enable Automatic Mission Start/Resume Popups") + fact: _enableAutomaticMissionPopups + visible: _enableAutomaticMissionPopups.visible + property Fact _enableAutomaticMissionPopups: _flyViewSettings.enableAutomaticMissionPopups + } } SettingsGroupLayout {