diff --git a/ChangeLog.md b/ChangeLog.md index af4c778..5c435e0 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -16,6 +16,10 @@ Note: This file only contains high level features or important fixes. ## 4.0.8 - Not yet released +* Fix bug which could prevent view switching from working after altitude mode warning dialog would pop up + +## 4.0.8 - Stable + * iOS: Modify QGC file storage location to support new Files app * Mobile: Fix Log Replay status bar file selection diff --git a/src/FactSystem/FactControls/AltitudeFactTextField.qml b/src/FactSystem/FactControls/AltitudeFactTextField.qml index 5a22eca..f47f24d 100644 --- a/src/FactSystem/FactControls/AltitudeFactTextField.qml +++ b/src/FactSystem/FactControls/AltitudeFactTextField.qml @@ -30,8 +30,7 @@ FactTextField { readonly property string _altModeAboveTerrainExtraUnits: qsTr("(Abv Terr)") readonly property string _altModeTerrainFrameExtraUnits: qsTr("(TerrF)") - property string _altitudeModeExtraUnits: _altModeNoneExtraUnits - property Fact _aboveTerrainWarning: QGroundControl.settingsManager.planViewSettings.aboveTerrainWarning + property string _altitudeModeExtraUnits: _altModeNoneExtraUnits onAltitudeModeChanged: updateAltitudeModeExtraUnits() @@ -45,9 +44,6 @@ FactTextField { _altitudeModeExtraUnits = _altModeAbsoluteExtraUnits } else if (altitudeMode === QGroundControl.AltitudeModeAboveTerrain) { _altitudeModeExtraUnits = _altModeAboveTerrainExtraUnits - if (!_aboveTerrainWarning.rawValue && showAboveTerrainWarning) { - mainWindow.showComponentDialog(aboveTerrainWarning, qsTr("Warning"), mainWindow.showDialogDefaultWidth, StandardButton.Ok) - } } else if (missionItem.altitudeMode === QGroundControl.AltitudeModeTerrainFrame) { _altitudeModeExtraUnits = _altModeTerrainFrameExtraUnits } else { @@ -55,26 +51,4 @@ FactTextField { _altitudeModeExtraUnits = "" } } - - Component { - id: aboveTerrainWarning - QGCViewDialog { - ColumnLayout { - anchors.left: parent.left - anchors.right: parent.right - spacing: ScreenTools.defaultFontPixelHeight - - QGCLabel { - Layout.fillWidth: true - wrapMode: Text.WordWrap - text: qsTr("'Above Terrain' will set an absolute altitude for the item based on the terrain height at the location and the requested altitude above terrain. It does not send terrain heights to the vehicle.") - } - - FactCheckBox { - text: qsTr("Don't show again") - fact: _aboveTerrainWarning - } - } - } - } } diff --git a/src/Settings/PlanView.SettingsGroup.json b/src/Settings/PlanView.SettingsGroup.json index d9eec04..62ee48d 100644 --- a/src/Settings/PlanView.SettingsGroup.json +++ b/src/Settings/PlanView.SettingsGroup.json @@ -10,12 +10,6 @@ "defaultValue": false }, { - "name": "aboveTerrainWarning", - "shortDescription": "Don't warn user about 'Above Terrain' usage", - "type": "bool", - "defaultValue": false -}, -{ "name": "showMissionItemStatus", "shortDescription": "Show/Hide the mission item status display", "type": "bool", diff --git a/src/Settings/PlanViewSettings.cc b/src/Settings/PlanViewSettings.cc index 015ce7a..00eb1f3 100644 --- a/src/Settings/PlanViewSettings.cc +++ b/src/Settings/PlanViewSettings.cc @@ -18,7 +18,6 @@ DECLARE_SETTINGGROUP(PlanView, "PlanView") } DECLARE_SETTINGSFACT(PlanViewSettings, displayPresetsTabFirst) -DECLARE_SETTINGSFACT(PlanViewSettings, aboveTerrainWarning) DECLARE_SETTINGSFACT(PlanViewSettings, showMissionItemStatus) DECLARE_SETTINGSFACT(PlanViewSettings, useConditionGate) DECLARE_SETTINGSFACT(PlanViewSettings, takeoffItemNotRequired) diff --git a/src/Settings/PlanViewSettings.h b/src/Settings/PlanViewSettings.h index e00637f..7e42f46 100644 --- a/src/Settings/PlanViewSettings.h +++ b/src/Settings/PlanViewSettings.h @@ -21,7 +21,6 @@ public: // Most individual settings related to PlanView are still in AppSettings due to historical reasons. DEFINE_SETTINGFACT(displayPresetsTabFirst) - DEFINE_SETTINGFACT(aboveTerrainWarning) DEFINE_SETTINGFACT(showMissionItemStatus) DEFINE_SETTINGFACT(useConditionGate) DEFINE_SETTINGFACT(takeoffItemNotRequired) diff --git a/src/ui/MainRootWindow.qml b/src/ui/MainRootWindow.qml index 75f723b..96010ba 100644 --- a/src/ui/MainRootWindow.qml +++ b/src/ui/MainRootWindow.qml @@ -196,6 +196,10 @@ ApplicationWindow { readonly property int showDialogDefaultWidth: 40 ///< Use for default dialog width function showComponentDialog(component, title, charWidth, buttons) { + if (mainWindowDialog.visible) { + console.warn(("showComponentDialog called while dialog is already visible")) + return + } var dialogWidth = charWidth === showDialogFullWidth ? mainWindow.width : ScreenTools.defaultFontPixelWidth * charWidth mainWindowDialog.width = dialogWidth mainWindowDialog.dialogComponent = component