diff --git a/linphone-app/src/components/calls/CallsListModel.cpp b/linphone-app/src/components/calls/CallsListModel.cpp index ad11d1360..e3bc8e035 100644 --- a/linphone-app/src/components/calls/CallsListModel.cpp +++ b/linphone-app/src/components/calls/CallsListModel.cpp @@ -315,9 +315,7 @@ QVariantMap CallsListModel::createChatRoom(const QString& subject, const int& se } params->enableEncryption(securityLevel>0); - if( securityLevel>0){ - params->enableEncryption(true); - }else + if( securityLevel<=0) params->setBackend(linphone::ChatRoomBackend::Basic); params->enableGroup( subject!="" ); diff --git a/linphone-app/src/components/conferenceScheduler/ConferenceScheduler.cpp b/linphone-app/src/components/conferenceScheduler/ConferenceScheduler.cpp index 000f91e4a..f8bceb5e8 100644 --- a/linphone-app/src/components/conferenceScheduler/ConferenceScheduler.cpp +++ b/linphone-app/src/components/conferenceScheduler/ConferenceScheduler.cpp @@ -59,13 +59,13 @@ void ConferenceScheduler::onStateChanged(linphone::ConferenceScheduler::State st qDebug() << "ConferenceScheduler::onStateChanged : " << (int)state; emit stateChanged(state); if( state == linphone::ConferenceScheduler::State::Ready) { - emit CoreManager::getInstance()->getHandlers()->conferenceInfoReceived(mConferenceScheduler->getInfo()); + auto conferenceInfo = mConferenceScheduler->getInfo(); + emit CoreManager::getInstance()->getHandlers()->conferenceInfoReceived(conferenceInfo); if( (mSendInvite & 1) == 1){ std::shared_ptr params = CoreManager::getInstance()->getCore()->createDefaultChatRoomParams(); - if( CoreManager::getInstance()->getSettingsModel()->getSecureChatEnabled()) - params->setBackend(linphone::ChatRoomBackend::FlexisipChat); - else - params->setBackend(linphone::ChatRoomBackend::Basic); + params->enableGroup(false); + params->setSubject(conferenceInfo->getSubject()); + params->enableEncryption(CoreManager::getInstance()->getSettingsModel()->getSecureChatEnabled()); mConferenceScheduler->sendInvitations(params); } } diff --git a/linphone-app/ui/views/App/Dialog/NewConference.qml b/linphone-app/ui/views/App/Dialog/NewConference.qml index 4d4bc0235..50b23fa8f 100644 --- a/linphone-app/ui/views/App/Dialog/NewConference.qml +++ b/linphone-app/ui/views/App/Dialog/NewConference.qml @@ -497,14 +497,16 @@ DialogPlus { actions:[{ colorSet: NewConferenceStyle.addParticipant, - secure: secureSwitch.checked, + secure: SettingsModel.secureChatEnabled, visible: true, secureIconVisibleHandler : function(entry) { - return UtilsCpp.hasCapability(entry.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh) + return entry && entry.sipAddress ? UtilsCpp.hasCapability(entry.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh) : false }, handler: function (entry) { - selectedParticipants.addAddress(entry.sipAddress) - smartSearchBar.addAddressToIgnore(entry.sipAddress); + if(entry){ + selectedParticipants.addAddress(entry.sipAddress) + smartSearchBar.addAddressToIgnore(entry.sipAddress); + } }, }] diff --git a/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml b/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml index 20b07f4fb..e5d1f96a9 100644 --- a/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml +++ b/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml @@ -223,7 +223,7 @@ DialogPlus { property int securityLevel : 2 anchors.top:parent.top anchors.horizontalCenter: parent.right - visible: UtilsCpp.hasCapability(modelData.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh) + visible: SettingsModel.secureChatEnabled && UtilsCpp.hasCapability(modelData.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh) icon: 'secure_on' iconSize: parent.height/2 } @@ -316,10 +316,10 @@ DialogPlus { actions:[{ colorSet: NewChatRoomStyle.addParticipant, - secure: secureSwitch.checked, + secure: SettingsModel.secureChatEnabled, visible: true, secureIconVisibleHandler : function(entry) { - return UtilsCpp.hasCapability(entry.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh) + return entry && entry.sipsipAddress ? UtilsCpp.hasCapability(entry.sipAddress, LinphoneEnums.FriendCapabilityLimeX3Dh) : false }, handler: function (entry) { selectedParticipants.addAddress(entry.sipAddress)