diff --git a/src/mainview/components/AccountComboBoxPopup.qml b/src/mainview/components/AccountComboBoxPopup.qml index 877eceb6afe0b4c775c5c737df9fc569f6853630..8b616b1a6f2cfd2081c5dafe9e0ee4a0f765540b 100644 --- a/src/mainview/components/AccountComboBoxPopup.qml +++ b/src/mainview/components/AccountComboBoxPopup.qml @@ -28,7 +28,7 @@ import "../../commoncomponents" Popup { id: root - property bool toogleUpdatePopupHeight: false + property bool toggleUpdatePopupHeight: false y: accountComboBox.height - 1 implicitWidth: accountComboBox.width - 1 diff --git a/src/mainview/components/AudioCallPage.qml b/src/mainview/components/AudioCallPage.qml index b944ddb364ec64d1a713b9eefa7ff6fd13065742..22955e4c299e5e1078791f26ce868069f493a8c8 100644 --- a/src/mainview/components/AudioCallPage.qml +++ b/src/mainview/components/AudioCallPage.qml @@ -97,7 +97,7 @@ Rectangle { acceptedButtons: Qt.LeftButton - onDoubleClicked: showFullScreenReqested() + onDoubleClicked: callStackView.toggleFullScreen() CallOverlay { id: audioCallOverlay diff --git a/src/mainview/components/CallOverlay.qml b/src/mainview/components/CallOverlay.qml index 98bcf608895223679ef7df6f75ef6f1adcd9c228..1ebd4bbd45ca9b41b06ad466579e002eaf3606a2 100644 --- a/src/mainview/components/CallOverlay.qml +++ b/src/mainview/components/CallOverlay.qml @@ -171,18 +171,27 @@ Rectangle { Layout.topMargin: JamiTheme.preferredMarginSize Layout.leftMargin: JamiTheme.preferredMarginSize - source: "qrc:/images/icons/arrow_back-white-24dp.svg" + + source: callStackView.isFullscreen ? "qrc:/images/icons/round-close-24px.svg" : + "qrc:/images/icons/ic_arrow_back_24px.svg" pressedColor: JamiTheme.invertedPressedButtonColor hoveredColor: JamiTheme.invertedHoveredButtonColor normalColor: JamiTheme.invertedNormalButtonColor + imageColor: JamiTheme.whiteColor + toolTipText: qsTr("Toggle to display side panel") visible: mainViewWindow.sidePanelOnly - onClicked: mainViewWindow.showWelcomeView() - + onClicked: { + if (callStackView.isFullscreen) { + callStackView.toggleFullScreen() + } else { + mainViewWindow.showWelcomeView() + } + } } Text { diff --git a/src/mainview/components/CallStackView.qml b/src/mainview/components/CallStackView.qml index f2497bcd72105770d47ce32c6053b9b1d7084c95..4d857097e4fc98f074e3d70d4eb333bafbcc7507 100644 --- a/src/mainview/components/CallStackView.qml +++ b/src/mainview/components/CallStackView.qml @@ -30,6 +30,15 @@ import "../js/callfullscreenwindowcontainercreation.js" as CallFullScreenWindowC Rectangle { id: callStackViewWindow + property bool isFullscreen: false + + enum StackNumber { + IncomingPageStack, + OutgoingPageStack, + AudioPageStack, + VideoPageStack + } + anchors.fill: parent Shortcut { @@ -69,7 +78,7 @@ Rectangle { function showAudioCallPage() { var itemToFind = callStackMainView.find(function (item) { - return item.stackNumber === 0 + return item.stackNumber === CallStackView.AudioPageStack }) if (!itemToFind) { @@ -82,7 +91,7 @@ Rectangle { function showOutgoingCallPage() { var itemToFind = callStackMainView.find(function (item) { - return item.stackNumber === 1 + return item.stackNumber === CallStackView.OutgoingPageStack }) if (!itemToFind) { @@ -94,7 +103,7 @@ Rectangle { function showIncomingCallPage(accountId, convUid) { var itemToFind = callStackMainView.find(function (item) { - return item.stackNumber === 3 + return item.stackNumber === CallStackView.IncomingPageStack }) if (!itemToFind) { @@ -109,7 +118,7 @@ Rectangle { function showVideoCallPage() { var itemToFind = callStackMainView.find(function (item) { - return item.stackNumber === 2 + return item.stackNumber === CallStackView.VideoPageStack }) if (!itemToFind) { @@ -123,18 +132,24 @@ Rectangle { videoCallPage.setDistantRendererId(callId) } - function toogleFullScreen(callPage){ - callPage.isFullscreen = !callPage.isFullscreen + function toggleFullScreen() { + isFullscreen = !isFullscreen + var callPage = callStackMainView.currentItem CallFullScreenWindowContainerCreation.createvideoCallFullScreenWindowContainerObject() if (!CallFullScreenWindowContainerCreation.checkIfVisible()) { - CallFullScreenWindowContainerCreation.setAsContainerChild( - callPage) + CallFullScreenWindowContainerCreation.setAsContainerChild(callPage) CallFullScreenWindowContainerCreation.showVideoCallFullScreenWindowContainer() } else { callPage.parent = callStackMainView CallFullScreenWindowContainerCreation.closeVideoCallFullScreenWindowContainer() } + + if (callStackMainView.find(function (item) { + return item.stackNumber === CallStackView.VideoPageStack + })) { + videoCallPage.handleParticipantsInfo(CallAdapter.getConferencesInfos()) + } } Connections { @@ -157,16 +172,13 @@ Rectangle { AudioCallPage { id: audioCallPage - property int stackNumber: 0 - property bool isFullscreen: false - - onShowFullScreenReqested: toogleFullScreen(this) + property int stackNumber: CallStackView.AudioPageStack } OutgoingCallPage { id: outgoingCallPage - property int stackNumber: 1 + property int stackNumber: CallStackView.OutgoingPageStack onCallCancelButtonIsClicked: { CallAdapter.hangUpACall(responsibleAccountId, responsibleConvUid) @@ -176,19 +188,14 @@ Rectangle { VideoCallPage { id: videoCallPage - property int stackNumber: 2 - property bool isFullscreen: false + property int stackNumber: CallStackView.VideoPageStack - onShowFullScreenReqested: { - toogleFullScreen(this) - videoCallPage.handleParticipantsInfo(CallAdapter.getConferencesInfos()) - } } IncomingCallPage { id: incomingCallPage - property int stackNumber: 3 + property int stackNumber: CallStackView.IncomingPageStack onCallAcceptButtonIsClicked: { CallAdapter.acceptACall(responsibleAccountId, responsibleConvUid) diff --git a/src/mainview/components/CallViewContextMenu.qml b/src/mainview/components/CallViewContextMenu.qml index 685df52bd007a7e94e60ef48390c551516fa250c..332a4dd8e0e52bb40905b976b595fbda1cfeb7d4 100644 --- a/src/mainview/components/CallViewContextMenu.qml +++ b/src/mainview/components/CallViewContextMenu.qml @@ -73,23 +73,23 @@ Item { }) if (isAudioOnly && !isPaused) - ContextMenuGenerator.addMenuItem(audioCallPage.isFullscreen ? JamiStrings.exitFullScreen : + ContextMenuGenerator.addMenuItem(callStackView.isFullscreen ? JamiStrings.exitFullScreen : JamiStrings.fullScreen, - audioCallPage.isFullscreen ? + callStackView.isFullscreen ? "qrc:/images/icons/close_fullscreen-24px.svg" : "qrc:/images/icons/open_in_full-24px.svg", function (){ - audioCallPage.showFullScreenReqested() + callStackView.toggleFullScreen() }) if (!isAudioOnly && !isPaused) { - ContextMenuGenerator.addMenuItem(videoCallPage.isFullscreen ? JamiStrings.exitFullScreen : + ContextMenuGenerator.addMenuItem(callStackView.isFullscreen ? JamiStrings.exitFullScreen : JamiStrings.fullScreen, - videoCallPage.isFullscreen ? + callStackView.isFullscreen ? "qrc:/images/icons/close_fullscreen-24px.svg" : "qrc:/images/icons/open_in_full-24px.svg", function (){ - videoCallPage.showFullScreenReqested() + callStackView.toggleFullScreen() }) ContextMenuGenerator.addMenuSeparator() diff --git a/src/mainview/components/UserInfoCallPage.qml b/src/mainview/components/UserInfoCallPage.qml index b6826be0bc1f8aa6c5ac46d863abe96f8d513f28..865208eb088644216fd0ba06017a8bb92fb55a90 100644 --- a/src/mainview/components/UserInfoCallPage.qml +++ b/src/mainview/components/UserInfoCallPage.qml @@ -58,12 +58,14 @@ Rectangle { Layout.topMargin: JamiTheme.preferredMarginSize Layout.leftMargin: JamiTheme.preferredMarginSize - source: "qrc:/images/icons/arrow_back-white-24dp.svg" + source: "qrc:/images/icons/ic_arrow_back_24px.svg" pressedColor: JamiTheme.invertedPressedButtonColor hoveredColor: JamiTheme.invertedHoveredButtonColor normalColor: JamiTheme.invertedNormalButtonColor + imageColor: JamiTheme.whiteColor + toolTipText: qsTr("Toggle to display side panel") visible: mainViewWindow.sidePanelOnly diff --git a/src/mainview/components/VideoCallPage.qml b/src/mainview/components/VideoCallPage.qml index a83e4102de306b015c8c1d83705c0f5b29175504..16bf1c52b06fbbf1ab8708c516a8ef7d80d7036d 100644 --- a/src/mainview/components/VideoCallPage.qml +++ b/src/mainview/components/VideoCallPage.qml @@ -79,7 +79,8 @@ Rectangle { function handleParticipantsInfo(infos) { if (infos.length === 0) { - bestName = UtilsAdapter.getBestName(accountId, convUid) + bestName = UtilsAdapter.getBestName(AccountAdapter.currentAccountId, + UtilsAdapter.getCurrConvId()) } else { bestName = "" } @@ -139,7 +140,9 @@ Rectangle { handle: Rectangle { implicitWidth: videoCallPageRect.width implicitHeight: JamiTheme.splitViewHandlePreferredWidth - color: SplitHandle.pressed ? JamiTheme.pressColor : (SplitHandle.hovered ? JamiTheme.hoverColor : JamiTheme.tabbarBorderColor) + color: SplitHandle.pressed ? JamiTheme.pressColor : + (SplitHandle.hovered ? JamiTheme.hoverColor : + JamiTheme.tabbarBorderColor) } Rectangle { @@ -155,7 +158,7 @@ Rectangle { acceptedButtons: Qt.LeftButton - onDoubleClicked: showFullScreenReqested() + onDoubleClicked: callStackView.toggleFullScreen() CallOverlay { id: videoCallOverlay @@ -170,7 +173,8 @@ Rectangle { videoCallOverlay.setRecording(CallAdapter.isRecordingThisCall()) } - function onUpdateOverlay(isPaused, isAudioOnly, isAudioMuted, isVideoMuted, isRecording, isSIP, isConferenceCall, bestName) { + function onUpdateOverlay(isPaused, isAudioOnly, isAudioMuted, isVideoMuted, + isRecording, isSIP, isConferenceCall, bestName) { videoCallOverlay.showOnHoldImage(isPaused) videoCallOverlay.updateButtonStatus(isPaused, isAudioOnly, diff --git a/src/settingsview/components/AdvancedSIPSecuritySettings.qml b/src/settingsview/components/AdvancedSIPSecuritySettings.qml index cc612ca61e7822aed86fe86499900320cea5ed19..e13b687b4ddb3fe55f560eb1b5a3cf3fbab1aebd 100644 --- a/src/settingsview/components/AdvancedSIPSecuritySettings.qml +++ b/src/settingsview/components/AdvancedSIPSecuritySettings.qml @@ -50,8 +50,8 @@ ColumnLayout { enableSDESToggle.checked = (SettingsAdapter.getAccountConfig_SRTP_KeyExchange() === Account.KeyExchangeProtocol.SDES) fallbackRTPToggle.checked = SettingsAdapter.getAccountConfig_SRTP_RtpFallback() encryptNegotitationToggle.checked = SettingsAdapter.getAccountConfig_TLS_Enable() - verifyIncomingCertificatesServerToogle.checked = SettingsAdapter.getAccountConfig_TLS_VerifyServer() - verifyIncomingCertificatesClientToogle.checked = SettingsAdapter.getAccountConfig_TLS_VerifyClient() + verifyIncomingCertificatesServerToggle.checked = SettingsAdapter.getAccountConfig_TLS_VerifyServer() + verifyIncomingCertificatesClientToggle.checked = SettingsAdapter.getAccountConfig_TLS_VerifyClient() requireCeritificateForTLSIncomingToggle.checked = SettingsAdapter.getAccountConfig_TLS_RequireClientCertificate() var method = SettingsAdapter.getAccountConfig_TLS_Method_inInt() @@ -245,7 +245,7 @@ ColumnLayout { } ToggleSwitch { - id: verifyIncomingCertificatesServerToogle + id: verifyIncomingCertificatesServerToggle labelText: JamiStrings.verifyCertificatesServer fontPointSize: JamiTheme.settingsFontSize @@ -256,7 +256,7 @@ ColumnLayout { } ToggleSwitch { - id: verifyIncomingCertificatesClientToogle + id: verifyIncomingCertificatesClientToggle labelText: JamiStrings.verifyCertificatesClient fontPointSize: JamiTheme.settingsFontSize