diff --git a/src/commoncomponents/js/contextmenugenerator.js b/src/commoncomponents/js/contextmenugenerator.js index 7c55365a..c1186e86 100644 --- a/src/commoncomponents/js/contextmenugenerator.js +++ b/src/commoncomponents/js/contextmenugenerator.js @@ -35,6 +35,13 @@ function createBaseContextMenuObjects(parent) { baseContextMenuComponent.errorString()) } +function initMenu() { + // Clear any existing items in the menu. + for (var i = 0; i < menuItemList.length; i++) { + baseContextMenuObject.removeItem(menuItemList[i]) + } +} + function finishCreation(parent) { baseContextMenuObject = baseContextMenuComponent.createObject(parent) if (baseContextMenuObject === null) { diff --git a/src/mainview/components/CallViewContextMenu.qml b/src/mainview/components/CallViewContextMenu.qml index 332a4dd8..d477a8cb 100644 --- a/src/mainview/components/CallViewContextMenu.qml +++ b/src/mainview/components/CallViewContextMenu.qml @@ -43,6 +43,7 @@ Item { signal transferCallButtonClicked function openMenu(){ + ContextMenuGenerator.initMenu() if (isSIP){ ContextMenuGenerator.addMenuItem(isPaused ? JamiStrings.resume : JamiStrings.hold, isPaused ? diff --git a/src/mainview/components/ConversationSmartListContextMenu.qml b/src/mainview/components/ConversationSmartListContextMenu.qml index 6b096222..d6fd3700 100644 --- a/src/mainview/components/ConversationSmartListContextMenu.qml +++ b/src/mainview/components/ConversationSmartListContextMenu.qml @@ -34,6 +34,7 @@ Item { property int contactType: Profile.Type.INVALID function openMenu() { + ContextMenuGenerator.initMenu() var hasCall = UtilsAdapter.getCallId(responsibleAccountId, responsibleConvUid) !== "" if (!hasCall) { ContextMenuGenerator.addMenuItem(qsTr("Start video call"), diff --git a/src/mainview/components/ParticipantContextMenu.qml b/src/mainview/components/ParticipantContextMenu.qml index 3b0ff003..3bdce716 100644 --- a/src/mainview/components/ParticipantContextMenu.qml +++ b/src/mainview/components/ParticipantContextMenu.qml @@ -37,6 +37,7 @@ Item { property var showMinimize: false function openMenu(){ + ContextMenuGenerator.initMenu() if (showHangup) ContextMenuGenerator.addMenuItem(JamiStrings.hangup, "qrc:/images/icons/ic_call_end_white_24px.svg",