summary refs log tree commit diff
path: root/resources/qml/voip
diff options
context:
space:
mode:
authorNicolas Werner <nicolas.werner@hotmail.de>2022-02-21 05:01:01 +0100
committerNicolas Werner <nicolas.werner@hotmail.de>2022-02-21 05:01:01 +0100
commitff4334d59e950e9f51a924e06457f21fa1bbaf2a (patch)
tree5db6dd4cbf91af2bcaf434a9f1765991602ddf72 /resources/qml/voip
parentFix forward completer (diff)
downloadnheko-ff4334d59e950e9f51a924e06457f21fa1bbaf2a.tar.xz
Don't leak dialogs
It seems that you need to manually destroy created objects... Great...

fixes #898
Diffstat (limited to 'resources/qml/voip')
-rw-r--r--resources/qml/voip/CallInvite.qml1
-rw-r--r--resources/qml/voip/CallInviteBar.qml4
-rw-r--r--resources/qml/voip/PlaceCall.qml2
3 files changed, 7 insertions, 0 deletions
diff --git a/resources/qml/voip/CallInvite.qml b/resources/qml/voip/CallInvite.qml
index a17e18d5..3bf7c4cd 100644
--- a/resources/qml/voip/CallInvite.qml
+++ b/resources/qml/voip/CallInvite.qml
@@ -136,6 +136,7 @@ Popup {
                         "image": ":/icons/icons/ui/place-call.svg"
                     });
                     dialog.open();
+                    timelineRoot.destroyOnClose(dialog);
                     return false;
                 }
                 return true;
diff --git a/resources/qml/voip/CallInviteBar.qml b/resources/qml/voip/CallInviteBar.qml
index b2c2dbad..ab377ca8 100644
--- a/resources/qml/voip/CallInviteBar.qml
+++ b/resources/qml/voip/CallInviteBar.qml
@@ -83,6 +83,7 @@ Rectangle {
             onClicked: {
                 var dialog = devicesDialog.createObject(timelineRoot);
                 dialog.open();
+            timelineRoot.destroyOnClose(dialog);
             }
         }
 
@@ -98,6 +99,7 @@ Rectangle {
                         "image": ":/icons/icons/ui/place-call.svg"
                     });
                     dialog.open();
+            timelineRoot.destroyOnClose(dialog);
                     return ;
                 } else if (!CallManager.mics.includes(Settings.microphone)) {
                     var dialog = deviceError.createObject(timelineRoot, {
@@ -105,6 +107,7 @@ Rectangle {
                         "image": ":/icons/icons/ui/place-call.svg"
                     });
                     dialog.open();
+            timelineRoot.destroyOnClose(dialog);
                     return ;
                 }
                 if (CallManager.callType == CallType.VIDEO && CallManager.cameras.length > 0 && !CallManager.cameras.includes(Settings.camera)) {
@@ -113,6 +116,7 @@ Rectangle {
                         "image": ":/icons/icons/ui/video.svg"
                     });
                     dialog.open();
+            timelineRoot.destroyOnClose(dialog);
                     return ;
                 }
                 CallManager.acceptInvite();
diff --git a/resources/qml/voip/PlaceCall.qml b/resources/qml/voip/PlaceCall.qml
index 1404adf9..2639f5bb 100644
--- a/resources/qml/voip/PlaceCall.qml
+++ b/resources/qml/voip/PlaceCall.qml
@@ -66,6 +66,7 @@ Popup {
                         "image": ":/icons/icons/ui/place-call.svg"
                     });
                     dialog.open();
+                    timelineRoot.destroyOnClose(dialog);
                     return false;
                 }
                 return true;
@@ -118,6 +119,7 @@ Popup {
                     var dialog = screenShareDialog.createObject(timelineRoot);
                     dialog.open();
                     close();
+                    timelineRoot.destroyOnClose(dialog);
                 }
             }