diff --git a/src/FlightDisplay/FlightDisplayView.qml b/src/FlightDisplay/FlightDisplayView.qml
index 9daed693ef3a6cf14502e980bc63e1d08f8c101b..cb3df85fe44441bc90182e0c44333ef974b32b13 100644
--- a/src/FlightDisplay/FlightDisplayView.qml
+++ b/src/FlightDisplay/FlightDisplayView.qml
@@ -344,6 +344,7 @@ QGCView {
             visible:            QGroundControl.videoManager.hasVideo && !QGroundControl.videoManager.fullScreen
             isHidden:           !_isPipVisible
             isDark:             isBackgroundDark
+            enablePopup:        _mainIsMap
             onActivated: {
                 _mainIsMap = !_mainIsMap
                 setStates()
diff --git a/src/QmlControls/QGCPipable.qml b/src/QmlControls/QGCPipable.qml
index dfcd10be1194ed49e2597c9068532ad0b2915a5d..42bf24ef8c9c9cd0d38bdfd28c2a9cd2d1a9dbe2 100644
--- a/src/QmlControls/QGCPipable.qml
+++ b/src/QmlControls/QGCPipable.qml
@@ -27,6 +27,7 @@ Item {
     property real minSize: 0.10
 
     property bool inPopup: false
+    property bool enablePopup: true
 
     signal  activated()
     signal  hideIt(bool state)
@@ -127,7 +128,7 @@ Item {
         fillMode:       Image.PreserveAspectFit
         anchors.left:   parent.left
         anchors.top:    parent.top
-        visible:        !isHidden && (ScreenTools.isMobile || pipMouseArea.containsMouse) && !inPopup && !ScreenTools.isMobile
+        visible:        !isHidden && !inPopup && !ScreenTools.isMobile && enablePopup
         height:         ScreenTools.defaultFontPixelHeight * 2.5
         width:          ScreenTools.defaultFontPixelHeight * 2.5
         sourceSize.height:  height