From 0b9a0ead2a3ef6988a46600663b456e61ab1e382 Mon Sep 17 00:00:00 2001 From: Gaelle Braud Date: Mon, 17 Nov 2025 10:49:29 +0100 Subject: [PATCH] fix screen sharing --- Linphone/data/languages/de.ts | 128 +++++++++--------- Linphone/data/languages/en.ts | 128 +++++++++--------- Linphone/data/languages/fr.ts | 128 +++++++++--------- .../Control/Display/Chat/ChatListView.qml | 2 +- .../Form/Settings/ScreencastSettings.qml | 5 +- .../view/Page/Window/Call/CallsWindow.qml | 7 +- 6 files changed, 199 insertions(+), 199 deletions(-) diff --git a/Linphone/data/languages/de.ts b/Linphone/data/languages/de.ts index a4faeb690..28ee0a332 100644 --- a/Linphone/data/languages/de.ts +++ b/Linphone/data/languages/de.ts @@ -1692,7 +1692,7 @@ - + call_action_show_dialer "Pavé numérique" Wähltastatur @@ -1717,7 +1717,7 @@ - + call_action_go_to_settings "Paramètres" Einstellungen @@ -1729,34 +1729,34 @@ Bildschirm teilen - + conference_share_link_title Partager le lien de la réunion Besprechungs-Link teilen - + copied Copié Kopiert - + information_popup_meeting_address_copied_to_clipboard Le lien de la réunion a été copié dans le presse-papier Der Besprechungs-Link wurde in die Zwischenablage kopiert - - - + + + conference_participants_list_title "Participants (%1)" Teilnehmer (%1) - - + + group_call_participant_selected 1 ausgewählter Teilnehmer @@ -1764,7 +1764,7 @@ - + meeting_schedule_add_participants_title Teilnehmer hinzufügen @@ -1810,148 +1810,148 @@ Statistiken - - + + call_action_end_call "Terminer l'appel" Anruf beenden - + call_action_resume_call "Reprendre l'appel" Anruf fortsetzen - - + + call_action_pause_call "Mettre l'appel en pause" Anruf pausieren - - + + call_action_transfer_call "Transférer l'appel" Anruf weiterleiten - - + + call_action_start_new_call_hint "Initier un nouvel appel" Neuen Anruf starten - - + + call_display_call_list_hint "Afficher la liste d'appels" Anrufliste anzeigen - - + + call_deactivate_video_hint "Désactiver la vidéo" "Activer la vidéo" Video deaktivieren - - + + call_activate_video_hint Video aktivieren - + call_activate_microphone "Activer le micro" Mikrofon aktivieren - - + + call_deactivate_microphone "Désactiver le micro" Mikrofon stummschalten - - + + call_share_screen_hint Partager l'écran… Bildschirm teilen… - - + + call_open_chat_hint Open chat… - - + + call_rise_hand_hint "Lever la main" Hand heben - - + + call_send_reaction_hint "Envoyer une réaction" Reaktion senden - - + + call_manage_participants_hint "Gérer les participants" Teilnehmer verwalten - - + + call_more_options_hint "Plus d'options…" Weitere Optionen… - + call_action_change_conference_layout "Modifier la disposition" Layout ändern - + call_action_full_screen "Mode Plein écran" Vollbildmodus - + call_action_stop_recording "Terminer l'enregistrement" Aufnahme beenden - + call_action_record "Enregistrer l'appel" Anruf aufnehmen - + call_activate_speaker_hint "Activer le son" Lautsprecher aktivieren - + call_deactivate_speaker_hint "Désactiver le son" Lautsprecher stummschalten @@ -2567,32 +2567,32 @@ Error - + chat_action_start_new_chat "New chat" - + chat_start_group_chat_title "Nouveau groupe" - + chat_action_start_group_chat "Créer" Erstellen - - - + + + information_popup_error_title Fehler - + information_popup_chat_creation_failed_message "La création a échoué" @@ -2603,25 +2603,25 @@ Error Der Codec konnte nicht installiert werden. - + group_chat_error_must_have_name "Un nom doit être donné au groupe - + group_chat_error_no_participant "Please select at least one participant - + group_call_error_not_connected "Vous n'etes pas connecté" Sie sind nicht verbunden - + chat_creation_in_progress Creation de la conversation en cours … @@ -5714,37 +5714,37 @@ Pour les activer dans un projet commercial, merci de nous contacter. ScreencastSettings - + screencast_settings_choose_window_text "Veuillez choisir l’écran ou la fenêtre que vous souihaitez partager au autres participants" Bitte wählen Sie den Bildschirm oder das Fenster aus, das Sie mit anderen Teilnehmern teilen möchten. - + screencast_settings_all_screen_label "Ecran entier" Vollbild - + screencast_settings_one_window_label "Fenêtre" Fenster - + screencast_settings_screen "Ecran %1" Bildschirm %1 - + stop "Stop Stopp - + share "Partager" Teilen diff --git a/Linphone/data/languages/en.ts b/Linphone/data/languages/en.ts index fb7df7795..fc2600385 100644 --- a/Linphone/data/languages/en.ts +++ b/Linphone/data/languages/en.ts @@ -1669,7 +1669,7 @@ - + call_action_show_dialer "Pavé numérique" Dialer @@ -1694,7 +1694,7 @@ - + call_action_go_to_settings "Paramètres" Settings @@ -1706,34 +1706,34 @@ Share your screen - + conference_share_link_title Partager le lien de la réunion Share meeting link - + copied Copié Copied - + information_popup_meeting_address_copied_to_clipboard Le lien de la réunion a été copié dans le presse-papier Meeting link has been copied to the clipboard - - - + + + conference_participants_list_title "Participants (%1)" Participants (%1) - - + + group_call_participant_selected %1 selected participant @@ -1741,7 +1741,7 @@ - + meeting_schedule_add_participants_title Add participants @@ -1787,148 +1787,148 @@ Statistics - - + + call_action_end_call "Terminer l'appel" End call - + call_action_resume_call "Reprendre l'appel" Resume call - - + + call_action_pause_call "Mettre l'appel en pause" Pause call - - + + call_action_transfer_call "Transférer l'appel" Transfer call - - + + call_action_start_new_call_hint "Initier un nouvel appel" Start new call - - + + call_display_call_list_hint "Afficher la liste d'appels" View call list - - + + call_deactivate_video_hint "Désactiver la vidéo" "Activer la vidéo" Turn off video - - + + call_activate_video_hint Enable video - + call_activate_microphone "Activer le micro" Activate microphone - - + + call_deactivate_microphone "Désactiver le micro" Mute microphone - - + + call_share_screen_hint Partager l'écran… Share screen… - - + + call_open_chat_hint Open chat… Open conversation… - - + + call_rise_hand_hint "Lever la main" Rise hand - - + + call_send_reaction_hint "Envoyer une réaction" Send reaction - - + + call_manage_participants_hint "Gérer les participants" Manage participants - - + + call_more_options_hint "Plus d'options…" More options… - + call_action_change_conference_layout "Modifier la disposition" Change layout - + call_action_full_screen "Mode Plein écran" Full screen mode - + call_action_stop_recording "Terminer l'enregistrement" End recording - + call_action_record "Enregistrer l'appel" Record call - + call_activate_speaker_hint "Activer le son" Activate speaker - + call_deactivate_speaker_hint "Désactiver le son" Mute speaker @@ -2541,56 +2541,56 @@ Only your correspondent can decrypt them. No conversation in history - + chat_action_start_new_chat "New chat" New conversation - + chat_start_group_chat_title "Nouveau groupe" New group - + chat_action_start_group_chat "Créer" Create - - - + + + information_popup_error_title Error - + information_popup_chat_creation_failed_message "La création a échoué" Creation failed - + group_chat_error_must_have_name "Un nom doit être donné au groupe A name must be set for the group - + group_chat_error_no_participant "Please select at least one participant Please select at least one participant - + group_call_error_not_connected "Vous n'etes pas connecté" You are not connected - + chat_creation_in_progress Creation de la conversation en cours … Chat creation pending… @@ -5609,37 +5609,37 @@ To enable them in a commercial project, please contact us. ScreencastSettings - + screencast_settings_choose_window_text "Veuillez choisir l’écran ou la fenêtre que vous souihaitez partager au autres participants" Please choose the screen or window you would like to share with other participants. - + screencast_settings_all_screen_label "Ecran entier" Full screen - + screencast_settings_one_window_label "Fenêtre" Window - + screencast_settings_screen "Ecran %1" Screen %1 - + stop "Stop Stop - + share "Partager" Share diff --git a/Linphone/data/languages/fr.ts b/Linphone/data/languages/fr.ts index 232c0d1cd..42d2bd247 100644 --- a/Linphone/data/languages/fr.ts +++ b/Linphone/data/languages/fr.ts @@ -1669,7 +1669,7 @@ - + call_action_show_dialer "Pavé numérique" Pavé numérique @@ -1694,7 +1694,7 @@ - + call_action_go_to_settings "Paramètres" Paramètres @@ -1706,34 +1706,34 @@ Partage de votre écran - + conference_share_link_title Partager le lien de la réunion Partager le lien de la réunion - + copied Copié Copié - + information_popup_meeting_address_copied_to_clipboard Le lien de la réunion a été copié dans le presse-papier Le lien de la réunion a été copié dans le presse-papier - - - + + + conference_participants_list_title "Participants (%1)" Participants (%1) - - + + group_call_participant_selected %1 participant sélectionné @@ -1741,7 +1741,7 @@ - + meeting_schedule_add_participants_title Ajouter des participants @@ -1787,148 +1787,148 @@ Statistiques - - + + call_action_end_call "Terminer l'appel" Terminer l'appel - + call_action_resume_call "Reprendre l'appel" Reprendre l'appel - - + + call_action_pause_call "Mettre l'appel en pause" Mettre l'appel en pause - - + + call_action_transfer_call "Transférer l'appel" Transférer l'appel - - + + call_action_start_new_call_hint "Initier un nouvel appel" Initier un nouvel appel - - + + call_display_call_list_hint "Afficher la liste d'appels" Afficher la liste d'appels - - + + call_deactivate_video_hint "Désactiver la vidéo" "Activer la vidéo" Désactiver la vidéo - - + + call_activate_video_hint Activer la vidéo - + call_activate_microphone "Activer le micro" Activer le micro - - + + call_deactivate_microphone "Désactiver le micro" Désactiver le micro - - + + call_share_screen_hint Partager l'écran… Partager l'écran… - - + + call_open_chat_hint Open chat… Ouvrir le chat… - - + + call_rise_hand_hint "Lever la main" Lever la main - - + + call_send_reaction_hint "Envoyer une réaction" Envoyer une réaction - - + + call_manage_participants_hint "Gérer les participants" Gérer les participants - - + + call_more_options_hint "Plus d'options…" Plus d'options… - + call_action_change_conference_layout "Modifier la disposition" Modifier la disposition - + call_action_full_screen "Mode Plein écran" Mode Plein écran - + call_action_stop_recording "Terminer l'enregistrement" Terminer l'enregistrement - + call_action_record "Enregistrer l'appel" Enregistrer l'appel - + call_activate_speaker_hint "Activer le son" Activer le son - + call_deactivate_speaker_hint "Désactiver le son" Désactiver le son @@ -2541,56 +2541,56 @@ en bout. Seul votre correspondant peut les déchiffrer. Aucune conversation dans votre historique - + chat_action_start_new_chat "New chat" Nouvelle conversation - + chat_start_group_chat_title "Nouveau groupe" Nouveau groupe - + chat_action_start_group_chat "Créer" Créer - - - + + + information_popup_error_title Erreur - + information_popup_chat_creation_failed_message "La création a échoué" La création a échoué - + group_chat_error_must_have_name "Un nom doit être donné au groupe Un nom doit être donné au groupe - + group_chat_error_no_participant "Please select at least one participant Veuillez sélectionner au moins un participant - + group_call_error_not_connected "Vous n'etes pas connecté" Vous n'êtes pas connecté - + chat_creation_in_progress Creation de la conversation en cours … Création de la conversation en cours… @@ -5609,37 +5609,37 @@ Pour les activer dans un projet commercial, merci de nous contacter. ScreencastSettings - + screencast_settings_choose_window_text "Veuillez choisir l’écran ou la fenêtre que vous souihaitez partager au autres participants" Veuillez choisir l’écran ou la fenêtre que vous souihaitez partager au autres participants - + screencast_settings_all_screen_label "Ecran entier" Écran entier - + screencast_settings_one_window_label "Fenêtre" Fenêtre - + screencast_settings_screen "Ecran %1" Écran %1 - + stop "Stop Stop - + share "Partager" Partager diff --git a/Linphone/view/Control/Display/Chat/ChatListView.qml b/Linphone/view/Control/Display/Chat/ChatListView.qml index 8009ed150..e9eedf35c 100644 --- a/Linphone/view/Control/Display/Chat/ChatListView.qml +++ b/Linphone/view/Control/Display/Chat/ChatListView.qml @@ -372,7 +372,7 @@ ListView { } } IconLabelButton { - visible: modelData.core.unreadMessagesCount !== 0 + visible: modelData && modelData.core.unreadMessagesCount !== 0 || false //: "Mark as read" text: qsTr("chat_room_mark_as_read") icon.source: AppIcons.checks diff --git a/Linphone/view/Control/Form/Settings/ScreencastSettings.qml b/Linphone/view/Control/Form/Settings/ScreencastSettings.qml index 8801975a0..340c834dd 100644 --- a/Linphone/view/Control/Form/Settings/ScreencastSettings.qml +++ b/Linphone/view/Control/Form/Settings/ScreencastSettings.qml @@ -15,8 +15,6 @@ ColumnLayout { property bool isLocalScreenSharing : conference?.core.isLocalScreenSharing || false property bool screenSharingAvailable: !!conference && (!conference.core.isScreenSharingEnabled || isLocalScreenSharing) - signal screenSharingToggled() - spacing: Utils.getSizeWithScreenRatio(12) onIsLocalScreenSharingChanged: {if(isLocalScreenSharing) mainItem.call.core.videoSourceDescriptor = mainItem.desc } @@ -175,7 +173,7 @@ ColumnLayout { Layout.preferredHeight: height height: implicitHeight visible: mainItem.screenSharingAvailable$ - enabled: windowsLayout.currentIndex !== -1 || screensLayout.currentIndex !== -1 + enabled: mainItem.isLocalScreenSharing || windowsLayout.currentIndex !== -1 || screensLayout.currentIndex !== -1 text: mainItem.conference && mainItem.conference.core.isLocalScreenSharing //: "Stop ? qsTr("stop") @@ -183,7 +181,6 @@ ColumnLayout { : qsTr("share") onClicked: { mainItem.conference.core.lToggleScreenSharing() - mainItem.screenSharingToggled() } style: ButtonStyle.main } diff --git a/Linphone/view/Page/Window/Call/CallsWindow.qml b/Linphone/view/Page/Window/Call/CallsWindow.qml index 000398c02..bde37f29a 100644 --- a/Linphone/view/Page/Window/Call/CallsWindow.qml +++ b/Linphone/view/Page/Window/Call/CallsWindow.qml @@ -1039,8 +1039,11 @@ AbstractWindow { anchors.topMargin: Utils.getSizeWithScreenRatio(16) width: parent.width call: mainWindow.call - // auto close panel just before activating screen sharing - onScreenSharingToggled: if (!isLocalScreenSharing) rightPanel.visible = false + onIsLocalScreenSharingChanged: { + // Check if component is ready as well so we can reopen the panel after starting sharing screen + // and change shared window or screen if needed + if (isLocalScreenSharing && status === Component.Ready) rightPanel.visible = false + } } } }