diff --git a/src/script/view_model/CallingViewModel.ts b/src/script/view_model/CallingViewModel.ts index 8576c789f03..a1d3a46c085 100644 --- a/src/script/view_model/CallingViewModel.ts +++ b/src/script/view_model/CallingViewModel.ts @@ -158,10 +158,7 @@ export class CallingViewModel { this.callActions = { answer: (call: Call) => { - if (call.conversationType === CONV_TYPE.CONFERENCE && this.callingRepository.supportsConferenceCalling) { - const callType = call.getSelfParticipant().sharesCamera() ? call.initialType : CALL_TYPE.NORMAL; - this.callingRepository.answerCall(call, callType); - } else { + if (call.conversationType === CONV_TYPE.CONFERENCE && !this.callingRepository.supportsConferenceCalling) { amplify.publish(WebAppEvents.WARNING.MODAL, ModalsViewModel.TYPE.ACKNOWLEDGE, { primaryAction: { action: () => { @@ -175,6 +172,9 @@ export class CallingViewModel { title: t('modalConferenceCallNotSupportedHeadline'), }, }); + } else { + const callType = call.getSelfParticipant().sharesCamera() ? call.initialType : CALL_TYPE.NORMAL; + this.callingRepository.answerCall(call, callType); } }, leave: (call: Call) => { diff --git a/src/script/view_model/ListViewModel.ts b/src/script/view_model/ListViewModel.ts index 279f9d52b09..fdce2d6d294 100644 --- a/src/script/view_model/ListViewModel.ts +++ b/src/script/view_model/ListViewModel.ts @@ -222,18 +222,19 @@ export class ListViewModel { answerCall = (conversationEntity: Conversation): void => { const call = this.callingRepository.findCall(conversationEntity.id); - if (call.conversationType === CONV_TYPE.CONFERENCE && this.callingRepository.supportsConferenceCalling) { - if (call) { - const callType = call.getSelfParticipant().sharesCamera() ? call.initialType : CALL_TYPE.NORMAL; - this.callingRepository.answerCall(call, callType); - } - } else { + if (!call) { + return; + } + if (call.conversationType === CONV_TYPE.CONFERENCE && !this.callingRepository.supportsConferenceCalling) { amplify.publish(WebAppEvents.WARNING.MODAL, ModalsViewModel.TYPE.ACKNOWLEDGE, { text: { message: `${t('modalConferenceCallNotSupportedMessage')} ${t('modalConferenceCallNotSupportedJoinMessage')}`, title: t('modalConferenceCallNotSupportedHeadline'), }, }); + } else { + const callType = call.getSelfParticipant().sharesCamera() ? call.initialType : CALL_TYPE.NORMAL; + this.callingRepository.answerCall(call, callType); } };