fix #LINQT-1675 enable video switch in settings

This commit is contained in:
gaelle 2025-03-03 16:34:39 +01:00
parent e620af3f3e
commit b2d20b72e9
7 changed files with 113 additions and 102 deletions

View file

@ -189,7 +189,7 @@ ColumnLayout {
button.onClicked: console.debug("[ContactLayout.qml] TODO : open conversation") button.onClicked: console.debug("[ContactLayout.qml] TODO : open conversation")
} }
LabelButton { LabelButton {
visible: !mainItem.isConference visible: !mainItem.isConference && SettingsCpp.videoEnabled
width: 56 * DefaultStyle.dp width: 56 * DefaultStyle.dp
height: 56 * DefaultStyle.dp height: 56 * DefaultStyle.dp
button.icon.width: 24 * DefaultStyle.dp button.icon.width: 24 * DefaultStyle.dp

View file

@ -149,6 +149,7 @@ FocusScope {
} }
IconButton { IconButton {
id: videoCallButton id: videoCallButton
visible: SettingsCpp.videoEnabled
Layout.preferredWidth: 45 * DefaultStyle.dp Layout.preferredWidth: 45 * DefaultStyle.dp
Layout.preferredHeight: 45 * DefaultStyle.dp Layout.preferredHeight: 45 * DefaultStyle.dp
icon.width: 24 * DefaultStyle.dp icon.width: 24 * DefaultStyle.dp

View file

@ -2,7 +2,7 @@ import QtQuick
import QtQuick.Controls.Basic as Control import QtQuick.Controls.Basic as Control
import QtQuick.Layouts import QtQuick.Layouts
import Linphone import Linphone
import SettingsCpp 1.0 import SettingsCpp
ColumnLayout { ColumnLayout {
id: mainItem id: mainItem
@ -193,6 +193,7 @@ ColumnLayout {
} }
ColumnLayout { ColumnLayout {
spacing: 12 * DefaultStyle.dp spacing: 12 * DefaultStyle.dp
visible: SettingsCpp.videoEnabled
RowLayout { RowLayout {
spacing: 8 * DefaultStyle.dp spacing: 8 * DefaultStyle.dp
EffectImage { EffectImage {

View file

@ -55,6 +55,12 @@ AbstractSettingsLayout {
subTitleText: qsTr("Activer les tonalités") subTitleText: qsTr("Activer les tonalités")
propertyName: "callToneIndicationsEnabled" propertyName: "callToneIndicationsEnabled"
propertyOwner: SettingsCpp propertyOwner: SettingsCpp
}
SwitchSetting {
titleText: qsTr("Vidéo")
subTitleText: qsTr("Autoriser la vidéo")
propertyName: "videoEnabled"
propertyOwner: SettingsCpp
} }
} }
} }

View file

@ -42,6 +42,7 @@ RowLayout {
spacing: 16 * DefaultStyle.dp spacing: 16 * DefaultStyle.dp
CheckableButton { CheckableButton {
id: videoButton id: videoButton
visible: SettingsCpp.videoEnabled
iconUrl: AppIcons.videoCamera iconUrl: AppIcons.videoCamera
checkedIconUrl: AppIcons.videoCameraSlash checkedIconUrl: AppIcons.videoCameraSlash
checked: !mainItem.localVideoEnabled checked: !mainItem.localVideoEnabled

View file

@ -409,6 +409,7 @@ FriendGui{
"[ContactLayout.qml] TODO : open conversation") "[ContactLayout.qml] TODO : open conversation")
} }
LabelButton { LabelButton {
visible: SettingsCpp.videoEnabled
button.icon.source: AppIcons.videoCamera button.icon.source: AppIcons.videoCamera
label: qsTr("Appel vidéo") label: qsTr("Appel vidéo")
width: 56 * DefaultStyle.dp width: 56 * DefaultStyle.dp

View file

@ -1200,6 +1200,7 @@ AbstractWindow {
spacing: 10 * DefaultStyle.dp spacing: 10 * DefaultStyle.dp
CheckableButton { CheckableButton {
id: videoCameraButton id: videoCameraButton
visible: SettingsCpp.videoEnabled
enabled: mainWindow.conferenceInfo enabled: mainWindow.conferenceInfo
|| (mainWindow.callState === LinphoneEnums.CallState.Connected || (mainWindow.callState === LinphoneEnums.CallState.Connected
|| mainWindow.callState || mainWindow.callState