diff --git a/CHANGELOG.md b/CHANGELOG.md
index f2166cc0e..ee5a9e9f9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,9 +6,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## 4.4.0 - [Undefined]
-## Added
+### Added
- Features:
- * messages features : Reply, forward (to contact, to a SIP address or to a timeline), Vocal record (on send)
+ * messages features : Reply, forward (to contact, to a SIP address or to a timeline), Vocal record (on send).
+
+- Add a feedback on fetching remote provisioning when it failed.
+
+### Fixed
+- Simplify filtering timelines on 3 kind of search : security level, simple/group chats, ephemerals.
+- Fix systemTrayIcon that could be cloned on each restart.
+- Fix errors on Action-Buttons on restart.
## 4.3.2
diff --git a/linphone-app/assets/languages/da.ts b/linphone-app/assets/languages/da.ts
index d96e412dd..725060821 100644
--- a/linphone-app/assets/languages/da.ts
+++ b/linphone-app/assets/languages/da.ts
@@ -1107,6 +1107,11 @@ Server url ikke konfigureret.
remoteProvisioningUpdateDescriptionDet er nødvendigt at genstarte applikationen. Vil du gøre det nu?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2732,39 +2737,54 @@ Klik her: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/de.ts b/linphone-app/assets/languages/de.ts
index 05c385891..548718759 100644
--- a/linphone-app/assets/languages/de.ts
+++ b/linphone-app/assets/languages/de.ts
@@ -1107,6 +1107,11 @@ Server URL ist nicht konfiguriert.
remoteProvisioningUpdateDescriptionEin Neustart der Anwendung ist notwendig. Möchten Sie die Anwendung jetzt neu starten?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2732,39 +2737,54 @@ Klicken Sie hier: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).Einfache Räume
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.Sichere Räume
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).Chatgruppen
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
- Sichere Chatgruppen
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.Kurzlebiges
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline listIn der Liste suchen
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/en.ts b/linphone-app/assets/languages/en.ts
index 2c66afe80..239227920 100644
--- a/linphone-app/assets/languages/en.ts
+++ b/linphone-app/assets/languages/en.ts
@@ -1107,6 +1107,11 @@ Server URL not configured.
remoteProvisioningUpdateDescriptionIt is necessary to restart the application. Do you want to restart now?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+ Last remote provisioning failed
+ HistoryView
@@ -2755,39 +2760,54 @@ Click here: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).Simple rooms
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.Secure rooms
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).Chat groups
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
- Secure chat groups
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.Ephemerals
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline listSearch in the list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+ All security levels
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+ Standard rooms
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+ Any conversations
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+ Ephemerals on/off
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+ Without ephemerals
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/es.ts b/linphone-app/assets/languages/es.ts
index 54fdb5b3b..e17264236 100644
--- a/linphone-app/assets/languages/es.ts
+++ b/linphone-app/assets/languages/es.ts
@@ -1107,6 +1107,11 @@ URL del servidor no configurada.
remoteProvisioningUpdateDescriptionEs necesario reiniciar la aplicación. ¿Desea reiniciarla ahora?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2732,39 +2737,54 @@ Haga clic aquí: <a href="%1">%1 </a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/fr_FR.ts b/linphone-app/assets/languages/fr_FR.ts
index d669c4e74..bf235a595 100644
--- a/linphone-app/assets/languages/fr_FR.ts
+++ b/linphone-app/assets/languages/fr_FR.ts
@@ -1107,6 +1107,11 @@ URL du serveur non configurée.
remoteProvisioningUpdateDescriptionVoulez-vous redémarrer maintenant pour prendre en compte ces modifications ?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2732,39 +2737,54 @@ Cliquez ici : <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).Standards
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.Sécurisées
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).Groupes standards
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
- Groupes sécurisés
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.Éphémères
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline listRechercher dans la chronologie
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/hu.ts b/linphone-app/assets/languages/hu.ts
index 079957201..1034a0db9 100644
--- a/linphone-app/assets/languages/hu.ts
+++ b/linphone-app/assets/languages/hu.ts
@@ -1098,6 +1098,11 @@ A kiszolgáló URL-je nincs konfigurálva.
remoteProvisioningUpdateDescriptionAz alkalmazás újraindítása szükséges. Szeretné most újraindítani?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2722,39 +2727,54 @@ Kattintson ide: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).Egyszerű szobák
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.Biztonságos szobák
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).Csevegőcsoportok
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
- Biztonságos csevegőcsoportok
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.Elmúlók
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline listKeresés a listában
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/it.ts b/linphone-app/assets/languages/it.ts
index 905fcbde0..fbbcbe073 100644
--- a/linphone-app/assets/languages/it.ts
+++ b/linphone-app/assets/languages/it.ts
@@ -1107,6 +1107,11 @@ URL del server non configurato.
remoteProvisioningUpdateDescriptionÈ necessario riavviare l'applicazione. Vuoi riavviare ora?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2732,39 +2737,54 @@ Clicca: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/ja.ts b/linphone-app/assets/languages/ja.ts
index 466155d3d..567c838db 100644
--- a/linphone-app/assets/languages/ja.ts
+++ b/linphone-app/assets/languages/ja.ts
@@ -1098,6 +1098,11 @@
remoteProvisioningUpdateDescriptionアプリケーションを再起動する必要があります。今すぐ再起動しますか?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2722,39 +2727,54 @@
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/lt.ts b/linphone-app/assets/languages/lt.ts
index a3823b536..169e5f1d5 100644
--- a/linphone-app/assets/languages/lt.ts
+++ b/linphone-app/assets/languages/lt.ts
@@ -1116,6 +1116,11 @@ Nesukonfigūruotas serverio url.
remoteProvisioningUpdateDescriptionYra būtina paleisti programą iš naujo. Ar norite tai atlikti dabar?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2742,39 +2747,54 @@ Spustelėkite čia: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/pt_BR.ts b/linphone-app/assets/languages/pt_BR.ts
index 6f5810515..0f47a9160 100644
--- a/linphone-app/assets/languages/pt_BR.ts
+++ b/linphone-app/assets/languages/pt_BR.ts
@@ -1107,6 +1107,11 @@ URL do servidor não configurado.
remoteProvisioningUpdateDescriptionÉ necessário reiniciar o aplicativo. Deseja reiniciar agora?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2732,39 +2737,54 @@ Clique aqui: <a href="%1">%1 </a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/ru.ts b/linphone-app/assets/languages/ru.ts
index 268bec528..0b3b59722 100644
--- a/linphone-app/assets/languages/ru.ts
+++ b/linphone-app/assets/languages/ru.ts
@@ -1116,6 +1116,11 @@
remoteProvisioningUpdateDescriptionТребуется перезапустить приложение. Хотите перезапустить сейчас?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2742,39 +2747,54 @@
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/sv.ts b/linphone-app/assets/languages/sv.ts
index 111b335eb..1283eabb2 100644
--- a/linphone-app/assets/languages/sv.ts
+++ b/linphone-app/assets/languages/sv.ts
@@ -1107,6 +1107,11 @@ Serverwebbadressen är inte konfigurerad.
remoteProvisioningUpdateDescriptionDet är nödvändigt att starta om programmet. Vill du starta om nu?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2732,39 +2737,54 @@ Klicka här: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/tr.ts b/linphone-app/assets/languages/tr.ts
index 532be4828..5ff2d50b6 100644
--- a/linphone-app/assets/languages/tr.ts
+++ b/linphone-app/assets/languages/tr.ts
@@ -1098,6 +1098,11 @@ Sunucu url'si yapılandırılmadı.
remoteProvisioningUpdateDescriptionUygulamanın yeniden başlaması gerekiyor. Şimdi yeniden başlatmak ister misiniz?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2722,39 +2727,54 @@ Buraya tıklayın: <a href="%1">%1</a>
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/uk.ts b/linphone-app/assets/languages/uk.ts
index 5dfbac8bd..67e240aef 100644
--- a/linphone-app/assets/languages/uk.ts
+++ b/linphone-app/assets/languages/uk.ts
@@ -1116,6 +1116,11 @@
remoteProvisioningUpdateDescriptionПотрібно перезапустити застосунок. Бажаєте перезапустити зараз?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2742,39 +2747,54 @@
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
-
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/assets/languages/zh_CN.ts b/linphone-app/assets/languages/zh_CN.ts
index e416a13ec..11553c069 100644
--- a/linphone-app/assets/languages/zh_CN.ts
+++ b/linphone-app/assets/languages/zh_CN.ts
@@ -1098,6 +1098,11 @@
remoteProvisioningUpdateDescription需要重启应用程序。您想要立刻重启吗?
+
+ lastProvisioningFailed
+ 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+
+ HistoryView
@@ -2722,39 +2727,54 @@
timelineFilterSimpleRooms
- 'Simple rooms' : Filter item
+ 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).基础聊天室
- Selecting it will show all simple roomstimelineFilterSecureRooms
- 'Secure rooms' : Filter item
+ 'Secure rooms' : Filter item. Selecting it will show all secure rooms.安全室
- Selecting it will show all secure roomstimelineFilterChatGroups
- 'Chat groups' : Filter item
+ 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).聊天群
- Selecting it will show all chat groups (with more than one participant)
-
-
- timelineFilterSecureChatGroups
- 'Secure Chat Groups' : Filter item
- 安全聊天群
- Selecting it will show all secure chat groups (with more than one participant)timelineFilterEphemerals
- 'Ephemerals' : Filter item
+ 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.阅后即焚
- Selecting it will show all chat rooms where the ephemeral mode has been enabled.timelineSearchPlaceholderText'Search in the list' : ths is a placeholder when searching something in the timeline list在列表中查找
+
+ timelineFilterAllSecureLevelRooms
+ 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+
+
+
+ timelineFilterStandardRooms
+ 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+
+
+
+ timelineFilterAnyChatRooms
+ 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+
+
+
+ timelineFilterAnyEphemerals
+ 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+
+
+
+ timelineFilterNoEphemerals
+ 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+
+ UseAppSipAccount
diff --git a/linphone-app/src/app/App.cpp b/linphone-app/src/app/App.cpp
index eea329ac8..990b63748 100644
--- a/linphone-app/src/app/App.cpp
+++ b/linphone-app/src/app/App.cpp
@@ -301,10 +301,10 @@ void App::initContentApp () {
setFetchConfig(mParser);
setOpened(false);
qInfo() << QStringLiteral("Restarting app...");
+
delete mEngine;
mNotifier = nullptr;
- mSystemTrayIcon = nullptr;
//
CoreManager::uninit();
removeTranslator(mTranslator);
@@ -723,8 +723,8 @@ void App::registerSharedToolTypes () {
void App::setTrayIcon () {
QQuickWindow *root = getMainWindow();
- QSystemTrayIcon *systemTrayIcon = new QSystemTrayIcon(mEngine);
-
+ QSystemTrayIcon* systemTrayIcon = (mSystemTrayIcon?mSystemTrayIcon : new QSystemTrayIcon(nullptr));// Workaround : QSystemTrayIcon cannot be deleted because of setContextMenu (indirectly)
+
// trayIcon: Right click actions.
QAction *settingsAction = new QAction(tr("settings"), root);
root->connect(settingsAction, &QAction::triggered, root, [this] {
@@ -754,7 +754,7 @@ void App::setTrayIcon () {
root->connect(quitAction, &QAction::triggered, this, &App::quit);
// trayIcon: Left click actions.
- QMenu *menu = new QMenu();
+ static QMenu *menu = new QMenu();// Static : Workaround about a bug with setContextMenu where it cannot be called more than once.
root->connect(systemTrayIcon, &QSystemTrayIcon::activated, [root](
QSystemTrayIcon::ActivationReason reason
) {
@@ -774,12 +774,13 @@ void App::setTrayIcon () {
menu->addAction(restoreAction);
menu->addSeparator();
menu->addAction(quitAction);
-
- systemTrayIcon->setContextMenu(menu);
+ if(!mSystemTrayIcon)
+ systemTrayIcon->setContextMenu(menu);// This is a Qt bug. We cannot call setContextMenu more than once. So we have to keep an instance of the menu.
systemTrayIcon->setIcon(QIcon(Constants::WindowIconPath));
systemTrayIcon->setToolTip(APPLICATION_NAME);
systemTrayIcon->show();
- mSystemTrayIcon = systemTrayIcon;
+ if(!mSystemTrayIcon)
+ mSystemTrayIcon = systemTrayIcon;
if(!QSystemTrayIcon::isSystemTrayAvailable())
qInfo() << "System tray is not available";
}
diff --git a/linphone-app/src/components/core/CoreManager.hpp b/linphone-app/src/components/core/CoreManager.hpp
index 264ac3c94..220ca2603 100644
--- a/linphone-app/src/components/core/CoreManager.hpp
+++ b/linphone-app/src/components/core/CoreManager.hpp
@@ -166,7 +166,7 @@ public:
static bool isInstanciated(){return mInstance!=nullptr;}
- bool isLastRemoteProvisioningGood();
+ Q_INVOKABLE bool isLastRemoteProvisioningGood();
public slots:
void initCoreManager();
diff --git a/linphone-app/src/components/timeline/TimelineProxyModel.cpp b/linphone-app/src/components/timeline/TimelineProxyModel.cpp
index 5d1450602..82497e16f 100644
--- a/linphone-app/src/components/timeline/TimelineProxyModel.cpp
+++ b/linphone-app/src/components/timeline/TimelineProxyModel.cpp
@@ -102,26 +102,16 @@ bool TimelineProxyModel::filterAcceptsRow (int sourceRow, const QModelIndex &sou
if( mFilterFlags > 0) {
if( !show && ( (mFilterFlags & TimelineFilter::SimpleChatRoom) == TimelineFilter::SimpleChatRoom))
- show = !isGroup && !haveEncryption;
+ show = !isGroup;
if( !show && ( (mFilterFlags & TimelineFilter::SecureChatRoom) == TimelineFilter::SecureChatRoom))
- show = !isGroup && haveEncryption;
+ show = haveEncryption;
if( !show && ( (mFilterFlags & TimelineFilter::GroupChatRoom) == TimelineFilter::GroupChatRoom))
- show = isGroup && !haveEncryption;
- if( !show && ( (mFilterFlags & TimelineFilter::SecureGroupChatRoom) == TimelineFilter::SecureGroupChatRoom))
- show = isGroup && haveEncryption;
+ show = isGroup;
+ if( !show && ( (mFilterFlags & TimelineFilter::StandardChatRoom) == TimelineFilter::StandardChatRoom))
+ show = !haveEncryption;
if( !show && ( (mFilterFlags & TimelineFilter::EphemeralChatRoom) == TimelineFilter::EphemeralChatRoom))
show = isEphemeral;
-
- show = ( (mFilterFlags & AllChatRooms) == 0) || show;
- if( show && ( (mFilterFlags & TimelineFilter::NoSimpleChatRoom) == TimelineFilter::NoSimpleChatRoom))
- show = !(!isGroup && !haveEncryption);
- if( show && ( (mFilterFlags & TimelineFilter::NoSecureChatRoom) == TimelineFilter::NoSecureChatRoom))
- show = !(!isGroup && haveEncryption);
- if( show && ( (mFilterFlags & TimelineFilter::NoGroupChatRoom) == TimelineFilter::NoGroupChatRoom))
- show = !(isGroup && !haveEncryption);
- if( show && ( (mFilterFlags & TimelineFilter::NoSecureGroupChatRoom) == TimelineFilter::NoSecureGroupChatRoom))
- show = !(isGroup && haveEncryption);
- if( show && ( (mFilterFlags & TimelineFilter::NoEphemeralChatRoom) == TimelineFilter::NoEphemeralChatRoom))
+ if( !show && ( (mFilterFlags & TimelineFilter::NoEphemeralChatRoom) == TimelineFilter::NoEphemeralChatRoom))
show = !isEphemeral;
}
diff --git a/linphone-app/src/components/timeline/TimelineProxyModel.hpp b/linphone-app/src/components/timeline/TimelineProxyModel.hpp
index d3f66f607..7b188c0c4 100644
--- a/linphone-app/src/components/timeline/TimelineProxyModel.hpp
+++ b/linphone-app/src/components/timeline/TimelineProxyModel.hpp
@@ -34,19 +34,14 @@ class TimelineProxyModel : public QSortFilterProxyModel {
public:
enum TimelineFilter {
- SimpleChatRoom=1,
+ StandardChatRoom=1,
SecureChatRoom=2,
- GroupChatRoom=4,
- SecureGroupChatRoom=8,
+ SimpleChatRoom=4,
+ GroupChatRoom=8,
EphemeralChatRoom=16,
+ NoEphemeralChatRoom=32,
- NoSimpleChatRoom=32,
- NoSecureChatRoom=64,
- NoGroupChatRoom=128,
- NoSecureGroupChatRoom=256,
- NoEphemeralChatRoom=512,
-
- AllChatRooms = SimpleChatRoom+SecureChatRoom+GroupChatRoom+SecureGroupChatRoom+EphemeralChatRoom
+ AllChatRooms = 0
};
Q_ENUM(TimelineFilter)
diff --git a/linphone-app/ui/modules/Common/Form/ActionButton.qml b/linphone-app/ui/modules/Common/Form/ActionButton.qml
index f2c09444e..de5f4558f 100644
--- a/linphone-app/ui/modules/Common/Form/ActionButton.qml
+++ b/linphone-app/ui/modules/Common/Form/ActionButton.qml
@@ -13,7 +13,7 @@ Item {
id: wrappedButton
// ---------------------------------------------------------------------------
- property QtObject colorSet: QtObject {
+ readonly property QtObject defaultColorSet : QtObject {
property int iconSize: 30
property string icon : ''
property color backgroundNormalColor : "white"
@@ -28,12 +28,14 @@ Item {
property color foregroundUpdatingColor : "black"
property color foregroundPressedColor : "black"
}
+ property QtObject colorSet: defaultColorSet
+ onColorSetChanged: if(!colorSet) colorSet = defaultColorSet
property bool isCustom : false
property bool enabled: true
property bool updating: false
property bool useStates: true
//property bool autoIcon : false // hovered/pressed : use an automatic layer instead of specific icon image
- property int iconSize : colorSet.iconSize
+ property int iconSize : colorSet ? colorSet.iconSize : 0
property int iconHeight: colorSet.iconHeight ? colorSet.iconHeight : 0
property int iconWidth: colorSet.iconWidth ? colorSet.iconWidth : 0
readonly property alias hovered: button.hovered
@@ -70,7 +72,7 @@ Item {
// If `useStates` = true, the used icons are:
// `icon`_pressed, `icon`_hovered and `icon`_normal.
- property string icon : colorSet.icon
+ property string icon : colorSet ? colorSet.icon : ''
// ---------------------------------------------------------------------------
@@ -220,10 +222,15 @@ Item {
anchors.centerIn: parent
anchors.fill: iconHeight>0 || iconWidth ? parent : undefined
icon: {
- if(!Images[_getIcon()])
- console.log("No images for: "+_getIcon())
- return Images[_getIcon()].id
+ var iconString = _getIcon()
+ if( iconString ) {
+ if(Images[iconString])
+ return Images[iconString].id
+ else
+ console.log("No images for: "+iconString)
}
+ return ''
+ }
iconSize: wrappedButton.iconSize || (
parent.width > parent.height ? parent.height : parent.width
)
diff --git a/linphone-app/ui/modules/Common/Form/CheckBoxText.qml b/linphone-app/ui/modules/Common/Form/CheckBoxText.qml
index da9db6bc4..da0280341 100644
--- a/linphone-app/ui/modules/Common/Form/CheckBoxText.qml
+++ b/linphone-app/ui/modules/Common/Form/CheckBoxText.qml
@@ -1,5 +1,5 @@
import QtQuick 2.7
-import QtQuick.Controls 2.2
+import QtQuick.Controls 2.4
import QtQuick.Shapes 1.10
import Common.Styles 1.0
diff --git a/linphone-app/ui/modules/Linphone/Chat/ChatAudioPreview.qml b/linphone-app/ui/modules/Linphone/Chat/ChatAudioPreview.qml
index 689898c7d..5a32d264c 100644
--- a/linphone-app/ui/modules/Linphone/Chat/ChatAudioPreview.qml
+++ b/linphone-app/ui/modules/Linphone/Chat/ChatAudioPreview.qml
@@ -73,7 +73,7 @@ Rectangle{
MediaProgressBar{
id: mediaProgressBar
anchors.fill: parent
- progressDuration: !vocalPlayer.item ? vocalRecorder.getDuration() : 0
+ progressDuration: !vocalPlayer.item && vocalRecorder? vocalRecorder.getDuration() : 0
progressPosition: !vocalPlayer.item ? progressDuration : 0
value: !vocalPlayer.item ? 0.01 * progressDuration / 5 : 100
stopAtEnd: !audioPreviewBlock.isRecording
diff --git a/linphone-app/ui/modules/Linphone/Timeline/Timeline.qml b/linphone-app/ui/modules/Linphone/Timeline/Timeline.qml
index a01d5fc53..17b2a397b 100644
--- a/linphone-app/ui/modules/Linphone/Timeline/Timeline.qml
+++ b/linphone-app/ui/modules/Linphone/Timeline/Timeline.qml
@@ -160,54 +160,61 @@ Rectangle {
anchors.right:parent.right
spacing:-4
function getFilterFlags(){
- return simpleFilter.value | secureFilter.value | groupFilter.value | secureGroupFilter.value | ephemeralsFilter.value;
- }
- CheckBoxText {
- id:simpleFilter
- //: 'Simple rooms' : Filter item
- //~ Mode Selecting it will show all simple rooms
- text:qsTr('timelineFilterSimpleRooms')
- property var value : (checkState==Qt.Checked?TimelineProxyModel.SimpleChatRoom: (checkState == Qt.PartiallyChecked ?TimelineProxyModel.NoSimpleChatRoom:0))
- onValueChanged: timeline.model.filterFlags = filterChoices.getFilterFlags()
- tristate: true
+ return secureFilter.value | groupFilter.value | ephemeralsFilter.value;
+ }
+ function getNextState(checkState){
+ if(checkState === Qt.Unchecked)
+ return Qt.Checked;
+ else if(checkState === Qt.Checked)
+ return Qt.PartiallyChecked;
+ else
+ return Qt.Unchecked;
}
CheckBoxText {
+ Layout.fillWidth: true
id:secureFilter
- //: 'Secure rooms' : Filter item
- //~ Mode Selecting it will show all secure rooms
- text:qsTr('timelineFilterSecureRooms')
- property var value : (checkState==Qt.Checked?TimelineProxyModel.SecureChatRoom: (checkState == Qt.PartiallyChecked ?TimelineProxyModel.NoSecureChatRoom:0))
+ //: 'Secure rooms' : Filter item. Selecting it will show all secure rooms.
+ text: checkState === Qt.Checked ? qsTr('timelineFilterSecureRooms') : checkState === Qt.Unchecked
+ //: 'All security levels' : Filter item. Selecting it will not do any filter on security level.
+ ? qsTr('timelineFilterAllSecureLevelRooms')
+ //: 'Standard rooms' : Filter item. Selecting it will show all simple rooms.
+ : qsTr('timelineFilterStandardRooms')
+ property var value : (checkState==Qt.Checked?TimelineProxyModel.SecureChatRoom: (checkState == Qt.PartiallyChecked ?TimelineProxyModel.StandardChatRoom:0))
onValueChanged: timeline.model.filterFlags = filterChoices.getFilterFlags()
tristate: true
+ visible: SettingsModel.secureChatEnabled && SettingsModel.standardChatEnabled
+ nextCheckState: function(){ return parent.getNextState(checkState)}
}
CheckBoxText {
id:groupFilter
- //: 'Chat groups' : Filter item
- //~ Mode Selecting it will show all chat groups (with more than one participant)
- text:qsTr('timelineFilterChatGroups')
- property var value : (checkState==Qt.Checked?TimelineProxyModel.GroupChatRoom: (checkState == Qt.PartiallyChecked ?TimelineProxyModel.NoGroupChatRoom:0))
- onValueChanged: timeline.model.filterFlags = filterChoices.getFilterFlags()
- tristate: true
- }
- CheckBoxText {
- id:secureGroupFilter
- //: 'Secure Chat Groups' : Filter item
- //~ Mode Selecting it will show all secure chat groups (with more than one participant)
- text:qsTr('timelineFilterSecureChatGroups')
- property var value : (checkState==Qt.Checked?TimelineProxyModel.SecureGroupChatRoom: (checkState == Qt.PartiallyChecked ?TimelineProxyModel.NoSecureGroupChatRoom:0))
+ Layout.fillWidth: true
+ //: 'Chat groups' : Filter item. Selecting it will show all chat groups (with more than one participant).
+ text: checkState === Qt.Checked ? qsTr('timelineFilterChatGroups') : checkState === Qt.Unchecked
+ //: 'Any conversations' : Filter item. Selecting it will not do any filter on the type of conversations.
+ ? qsTr('timelineFilterAnyChatRooms')
+ //: 'Simple rooms' : Filter item. Selecting it will show all secure chat groups (with more than one participant).
+ : qsTr('timelineFilterSimpleRooms')
+ property var value : (checkState==Qt.Checked?TimelineProxyModel.GroupChatRoom: (checkState == Qt.PartiallyChecked ?TimelineProxyModel.SimpleChatRoom:0))
onValueChanged: timeline.model.filterFlags = filterChoices.getFilterFlags()
tristate: true
+ visible: SettingsModel.secureChatEnabled || SettingsModel.standardChatEnabled
+ nextCheckState: function(){ return parent.getNextState(checkState)}
}
CheckBoxText {
id:ephemeralsFilter
- //: 'Ephemerals' : Filter item
- //~ Mode Selecting it will show all chat rooms where the ephemeral mode has been enabled.
- text:qsTr('timelineFilterEphemerals')
+ Layout.fillWidth: true
+ //: 'Ephemerals' : Filter item. Selecting it will show all chat rooms where the ephemeral mode has been enabled.
+ text: checkState === Qt.Checked ? qsTr('timelineFilterEphemerals') : checkState === Qt.Unchecked
+ //: 'Ephemerals on/off' : Filter item. Selecting it will not do any filter on ephemerals activation.
+ ? qsTr('timelineFilterAnyEphemerals')
+ //: 'No Ephemerals' : Filter item. Selecting it will hide all chat rooms where the ephemeral mode has been enabled.
+ : qsTr('timelineFilterNoEphemerals')
property var value : (checkState==Qt.Checked?TimelineProxyModel.EphemeralChatRoom: (checkState == Qt.PartiallyChecked ?TimelineProxyModel.NoEphemeralChatRoom:0))
+ visible: SettingsModel.secureChatEnabled || SettingsModel.standardChatEnabled
onValueChanged: timeline.model.filterFlags = filterChoices.getFilterFlags()
tristate: true
+ nextCheckState: function(){ return parent.getNextState(checkState)}
}
-
}
}
// -------------------------------------------------------------------------
diff --git a/linphone-app/ui/views/App/Main/Assistant/FetchRemoteConfiguration.qml b/linphone-app/ui/views/App/Main/Assistant/FetchRemoteConfiguration.qml
index 3833c4f98..62219587d 100644
--- a/linphone-app/ui/views/App/Main/Assistant/FetchRemoteConfiguration.qml
+++ b/linphone-app/ui/views/App/Main/Assistant/FetchRemoteConfiguration.qml
@@ -7,63 +7,69 @@ import Utils 1.0
// =============================================================================
AssistantAbstractView {
- mainAction: requestBlock.execute
- mainActionEnabled: url.text.length > 0
- mainActionLabel: qsTr('confirmAction')
-
- title: qsTr('fetchRemoteConfigurationTitle')
-
- // ---------------------------------------------------------------------------
-
- Connections {
- target: SettingsModel
-
- onRemoteProvisioningChanged: {
- requestBlock.stop('')
-
- window.detachVirtualWindow()
- window.attachVirtualWindow(Utils.buildDialogUri('ConfirmDialog'), {
- descriptionText: qsTr('remoteProvisioningUpdateDescription'),
- }, function (status) {
- if (status) {
- App.restart()
- } else {
- window.setView('Home')
- }
- })
- }
-
- onRemoteProvisioningNotChanged: requestBlock.stop(qsTr('remoteProvisioningError'))
- }
-
- // ---------------------------------------------------------------------------
-
- Column {
- anchors.fill: parent
-
- Form {
- orientation: Qt.Vertical
- width: parent.width
-
- FormLine {
- FormGroup {
- label: qsTr('urlLabel')
-
- TextField {
- id: url
- }
- }
- }
- }
-
- RequestBlock {
- id: requestBlock
-
- action: (function () {
- SettingsModel.remoteProvisioning = url.text
- })
-
- width: parent.width
- }
- }
+ mainAction: requestBlock.execute
+ mainActionEnabled: url.text.length > 0
+ mainActionLabel: qsTr('confirmAction')
+
+ title: qsTr('fetchRemoteConfigurationTitle')
+
+ // ---------------------------------------------------------------------------
+
+ Connections {
+ target: SettingsModel
+
+ onRemoteProvisioningChanged: {
+ requestBlock.stop('')
+
+ window.detachVirtualWindow()
+ window.attachVirtualWindow(Utils.buildDialogUri('ConfirmDialog'), {
+ descriptionText: qsTr('remoteProvisioningUpdateDescription'),
+ }, function (status) {
+ if (status) {
+ App.restart()
+ } else {
+ window.setView('Home')
+ }
+ })
+ }
+
+ onRemoteProvisioningNotChanged: requestBlock.stop(qsTr('remoteProvisioningError'))
+ }
+
+ // ---------------------------------------------------------------------------
+
+ Column {
+ anchors.fill: parent
+
+ Form {
+ orientation: Qt.Vertical
+ width: parent.width
+
+ FormLine {
+ FormGroup {
+ label: qsTr('urlLabel')
+
+ TextField {
+ id: url
+ }
+ }
+ }
+ }
+
+ RequestBlock {
+ id: requestBlock
+
+ action: (function () {
+ SettingsModel.remoteProvisioning = url.text
+ })
+
+ width: parent.width
+ }
+ }
+ Component.onCompleted: {
+ if( !CoreManager.isLastRemoteProvisioningGood() )
+ //: 'Last remote provisioning failed' : Test to warn the user that the last fetch of remote provisioning has failed.
+ requestBlock.stop(qsTr('lastProvisioningFailed'))
+ }
+
}