Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package linphoneqt for openSUSE:Factory 
checked in at 2021-11-23 22:10:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/linphoneqt (Old)
 and      /work/SRC/openSUSE:Factory/.linphoneqt.new.1895 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "linphoneqt"

Tue Nov 23 22:10:32 2021 rev:5 rq:933176 version:4.3.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/linphoneqt/linphoneqt.changes    2021-11-17 
01:14:24.994175759 +0100
+++ /work/SRC/openSUSE:Factory/.linphoneqt.new.1895/linphoneqt.changes  
2021-11-23 22:12:46.566440235 +0100
@@ -1,0 +2,15 @@
+Mon Nov 22 15:31:13 UTC 2021 - Klaus K??mpf <[email protected]>
+
+- Require liblinphone-data (bsc#1181746)
+
+-------------------------------------------------------------------
+Sun Nov 21 01:45:50 UTC 2021 - Giacomo Comes <[email protected]> - 4.3.2
+
+- Update to version 4.3.2:
+  * ALSA volumes can be view/changed while being in call.
+  * Remove constraints on actions (call/chat) that were based on friends 
capabilities.
+  * Unblock secure group chat activation.
+  * Unselect current contact if history call view is displayed.
+  * Show chat actions in history view
+
+-------------------------------------------------------------------
@@ -5,5 +20,9 @@
-  * Feature: Reply to a message
-  * When removing all entries : delete all history and call logs
-  * Protect config from using contact if it doesn't exist while checking 
authentication
-  * Allow qml to have access to the Application Name
-  * Add a settings to change URL of version check
+  * A banner is shown when copying text.
+  * Options to enable standard and secure chats.
+  * Add tunnel support if build.
+  * Overhaul of color managment and use monochrome images.
+  * Change Contact Edit and SIP Addresses selections to start a standard chat 
or a secure one.
+  * Call history button in the timeline panel.
+  * Timeout of incoming call notification is now based on `inc_timeout`
+  * More actions in contact edit panel (call/video call).
+  * Allow to make a readonly variable in configuration (only for enabling 
chats yet).

Old:
----
  linphone-desktop-4.3.1.tar.bz2

New:
----
  linphone-desktop-4.3.2.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ linphoneqt.spec ++++++
--- /var/tmp/diff_new_pack.USVW2U/_old  2021-11-23 22:12:46.970438899 +0100
+++ /var/tmp/diff_new_pack.USVW2U/_new  2021-11-23 22:12:46.978438873 +0100
@@ -18,7 +18,7 @@
 
 %define _name   linphone
 Name:           linphoneqt
-Version:        4.3.1
+Version:        4.3.2
 Release:        0
 Summary:        Qt interface for Linphone
 License:        GPL-3.0-or-later
@@ -61,6 +61,7 @@
 %package -n %{_name}
 Summary:        Web Phone
 Group:          Productivity/Telephony/SIP/Clients
+Requires:       liblinphone-data
 Recommends:     %{_name}-cli
 Obsoletes:      %{_name}-lang < %{version}
 
@@ -85,6 +86,10 @@
 
 %build
 sed -i 
'/^add_custom_command/s@${CMAKE_INSTALL_PREFIX}/include/@%{buildroot}%{_includedir}/@;/^add_custom_command/s@${CMAKE_INSTALL_PREFIX}/lib/@%{buildroot}%{_libdir}/@'
 linphone-app/CMakeLists.txt
+#fix install error for 4.3.2
+if [[ %version = 4.3.2 ]]; then
+    sed -i '/install(DIRECTORY.*linphone/d' 
linphone-app/cmake_builder/linphone_package/CMakeLists.txt
+fi
 %cmake \
   -DCMAKE_CXX_FLAGS="-fpermissive" \
   -DCMAKE_BUILD_TYPE=Release \

++++++ linphone-desktop-4.3.1.tar.bz2 -> linphone-desktop-4.3.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/linphone-desktop-4.3.1/CHANGELOG.md 
new/linphone-desktop-4.3.2/CHANGELOG.md
--- old/linphone-desktop-4.3.1/CHANGELOG.md     2021-11-04 21:32:32.000000000 
+0100
+++ new/linphone-desktop-4.3.2/CHANGELOG.md     2021-11-10 00:52:03.000000000 
+0100
@@ -6,6 +6,17 @@
 
 ## 4.4.0 - [Undefined]
 
+## 4.3.2 - 2021-11-09
+
+### Fixed
+
+- ALSA volumes can be view/changed while being in call.
+- Remove constraints on actions (call/chat) that were based on friends 
capabilities.
+- Unblock secure group chat activation.
+- Unselect current contact if history call view is displayed.
+- Show chat actions in history view
+- Group chat creation : If no groupchat capabilities has been found in recent 
contacts, ignore test on capability and display them.
+
 ## 4.3.1 - 2021-11-04
 
 ### Added
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/linphone-desktop-4.3.1/CMakeLists.txt 
new/linphone-desktop-4.3.2/CMakeLists.txt
--- old/linphone-desktop-4.3.1/CMakeLists.txt   2021-11-04 21:32:32.000000000 
+0100
+++ new/linphone-desktop-4.3.2/CMakeLists.txt   2021-11-10 00:52:03.000000000 
+0100
@@ -113,6 +113,8 @@
 option(ENABLE_DAEMON "Enable the linphone daemon interface." NO)
 option(ENABLE_CONSOLE_UI "Turn on or off compilation of console interface." NO)
 
+option(ENABLE_APP_LICENSE "Enable the license in packages." YES)
+
 
 
 
@@ -138,6 +140,8 @@
 list(APPEND APP_OPTIONS "-DENABLE_DAEMON=${ENABLE_DAEMON}")
 list(APPEND APP_OPTIONS "-DENABLE_CONSOLE_UI=${ENABLE_CONSOLE_UI}")
 list(APPEND APP_OPTIONS "-DENABLE_VIDEO=${ENABLE_VIDEO}")
+list(APPEND APP_OPTIONS "-DENABLE_APP_LICENSE=${ENABLE_APP_LICENSE}")
+
 
        
 if(ENABLE_V4L)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/assets/languages/hu.ts 
new/linphone-desktop-4.3.2/linphone-app/assets/languages/hu.ts
--- old/linphone-desktop-4.3.1/linphone-app/assets/languages/hu.ts      
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/assets/languages/hu.ts      
2021-11-10 00:52:03.000000000 +0100
@@ -532,6 +532,16 @@
         <extracomment>&apos;Hide delivery status&apos; : Item menu that lead 
to IMDN of a message</extracomment>
         <translation>K??zbes??t??si ??llapot elrejt??se</translation>
     </message>
+    <message>
+        <source>menuForward</source>
+        <extracomment>&apos;Forward&apos; : Forward a message from 
menu</extracomment>
+        <translation>Tov??bb??t??s</translation>
+    </message>
+    <message>
+        <source>menuReply</source>
+        <extracomment>&apos;Reply&apos; : Reply to a message from 
menu</extracomment>
+        <translation>V??lasz</translation>
+    </message>
 </context>
 <context>
     <name>ChatNoticeModel</name>
@@ -561,6 +571,22 @@
     </message>
 </context>
 <context>
+    <name>ChatReplyMessage</name>
+    <message>
+        <source>headerReply</source>
+        <extracomment>&apos;Reply&apos; : Header on a message that contains a 
reply.</extracomment>
+        <translation>V??lasz</translation>
+    </message>
+</context>
+<context>
+    <name>ChatReplyPreview</name>
+    <message>
+        <source>titleReply</source>
+        <extracomment>&apos;Reply to %1&apos; : Title for a reply preview to 
know who said what.</extracomment>
+        <translation>V??laszul erre: %1</translation>
+    </message>
+</context>
+<context>
     <name>Cli</name>
     <message>
         <source>appCliDescription</source>
@@ -2519,17 +2545,17 @@
     <message>
         <source>mipmapLabel</source>
         <extracomment>&apos;Enable Mipmap&apos;</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>Mipmap enged??lyez??se</translation>
     </message>
     <message>
         <source>mipmapTooltip1</source>
         <extracomment>&apos;This property holds whether the image uses mipmap 
filtering when scaled or transformed.&apos; : first line of a tooltip about 
Mipmap mode.</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>Ez a tulajdons??g megmarad, f??ggetlen??l att??l, hogy a 
k??p mipmap-sz??r??st haszn??l-e m??retez??skor vagy 
??talak??t??skor.</translation>
     </message>
     <message>
         <source>mipmapTooltip2</source>
         <extracomment>&apos;Mipmap filtering gives better visual quality when 
scaling down compared to smooth, but it may come at a performance cost (both 
when initializing the image and during rendering).&apos; : Second line of a 
tooltip about Mipmap mode.</extracomment>
-        <translation type="unfinished"></translation>
+        <translation>A mipmap-sz??r??s jobb vizu??lis min??s??get biztos??t 
kicsiny??t??skor, mint a sima, de teljes??tm??nyk??lts??ggel j??rhat (mind a 
k??p inicializ??l??sakor, mind a renderel??s sor??n).</translation>
     </message>
 </context>
 <context>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
 
new/linphone-desktop-4.3.2/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
--- 
old/linphone-desktop-4.3.1/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
       2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/cmake_builder/linphone_package/CMakeLists.txt
       2021-11-10 00:52:03.000000000 +0100
@@ -133,7 +133,7 @@
        file(GLOB GRAMMAR_FILES 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/Belr/grammars/*")
        install(FILES ${GRAMMAR_FILES} DESTINATION 
"${CMAKE_INSTALL_DATAROOTDIR}/belr/grammars/" )
        install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/images" DESTINATION 
"${CMAKE_INSTALL_DATAROOTDIR}" USE_SOURCE_PERMISSIONS OPTIONAL)
-       install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/sounds" DESTINATION 
"${CMAKE_INSTALL_DATAROOTDIR}" USE_SOURCE_PERMISSIONS)
+       install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/sounds/linphone/" 
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/sounds/${EXECUTABLE_NAME}" 
USE_SOURCE_PERMISSIONS)
        
        install(FILES 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/Linphone/rootca.pem" 
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/${EXECUTABLE_NAME}/")
        install(FILES 
"${CMAKE_CURRENT_SOURCE_DIR}/../../assets/linphonerc-factory" DESTINATION 
"${CMAKE_INSTALL_DATAROOTDIR}/${EXECUTABLE_NAME}")
@@ -194,7 +194,7 @@
   file(GLOB GRAMMAR_FILES 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/Belr/grammars/*")
   install(FILES ${GRAMMAR_FILES} DESTINATION 
"${APPLICATION_NAME}.app/Contents/Resources/${CMAKE_INSTALL_DATAROOTDIR}/belr/grammars/")
   install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/images" DESTINATION 
"${APPLICATION_NAME}.app/Contents/Resources/${CMAKE_INSTALL_DATAROOTDIR}" 
USE_SOURCE_PERMISSIONS OPTIONAL)
-  install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/sounds" DESTINATION 
"${APPLICATION_NAME}.app/Contents/Resources/${CMAKE_INSTALL_DATAROOTDIR}" 
USE_SOURCE_PERMISSIONS)
+  install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/sounds/linphone/" 
DESTINATION 
"${APPLICATION_NAME}.app/Contents/Resources/${CMAKE_INSTALL_DATAROOTDIR}/sounds/${EXECUTABLE_NAME}"
 USE_SOURCE_PERMISSIONS)
   install(FILES 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/Linphone/rootca.pem" 
DESTINATION 
"${APPLICATION_NAME}.app/Contents/Resources/${CMAKE_INSTALL_DATAROOTDIR}/${EXECUTABLE_NAME}")
   install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/../../assets/linphonerc-factory" 
DESTINATION 
"${APPLICATION_NAME}.app/Contents/Resources/${CMAKE_INSTALL_DATAROOTDIR}/${EXECUTABLE_NAME}")
   
@@ -266,6 +266,13 @@
                install(FILES ${SHARED_LIBRARIES} DESTINATION "lib64")
        endif()
        install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/" DESTINATION 
"${CMAKE_INSTALL_DATAROOTDIR}" USE_SOURCE_PERMISSIONS)
+       install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/" DESTINATION 
"${CMAKE_INSTALL_DATAROOTDIR}" USE_SOURCE_PERMISSIONS
+                       PATTERN "linphone" EXCLUDE
+                       PATTERN "sounds" EXCLUDE
+                       )
+       install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/linphone/" DESTINATION 
"${CMAKE_INSTALL_DATAROOTDIR}/${EXECUTABLE_NAME}" USE_SOURCE_PERMISSIONS)
+       install(DIRECTORY 
"${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/sounds/linphone/" 
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/sounds/${EXECUTABLE_NAME}" 
USE_SOURCE_PERMISSIONS)
+ 
        if(ENABLE_BUILD_VERBOSE)
                message("INSTALLATION : 
${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/" )
        endif()
@@ -341,7 +348,14 @@
                set(CPACK_PACKAGE_VERSION_PATCH ${LINPHONE_MICRO_VERSION})
        endif ()
        set(CPACK_PACKAGE_EXECUTABLES "${EXECUTABLE_NAME};${APPLICATION_NAME}")
-       set(CPACK_RESOURCE_FILE_LICENSE 
"${CMAKE_CURRENT_SOURCE_DIR}/../../../LICENSE.txt")
+
+       if(ENABLE_APP_LICENSE)
+               set(CPACK_RESOURCE_FILE_LICENSE 
"${CMAKE_CURRENT_SOURCE_DIR}/../../../LICENSE.txt")
+       else()
+               unset(CPACK_RESOURCE_FILE_LICENSE)
+       endif()
+       set(CPACK_RESOURCE_FILE_LICENSE_PROVIDED ENABLE_APP_LICENSE)
+
        set(CPACK_PACKAGE_INSTALL_DIRECTORY "${APPLICATION_NAME}")
        set(CPACK_PACKAGE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/Packages")
        set(CPACK_PACKAGE_ICON 
"${CMAKE_CURRENT_SOURCE_DIR}/../../assets/icon.ico")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/cmake_builder/linphone_package/windows/NSIS.template.in
 
new/linphone-desktop-4.3.2/linphone-app/cmake_builder/linphone_package/windows/NSIS.template.in
--- 
old/linphone-desktop-4.3.1/linphone-app/cmake_builder/linphone_package/windows/NSIS.template.in
     2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/cmake_builder/linphone_package/windows/NSIS.template.in
     2021-11-10 00:52:03.000000000 +0100
@@ -549,7 +549,10 @@
 ;Pages
   !insertmacro MUI_PAGE_WELCOME
 
-  !insertmacro MUI_PAGE_LICENSE "@CPACK_RESOURCE_FILE_LICENSE@"
+  !if @CPACK_RESOURCE_FILE_LICENSE_PROVIDED@
+    !insertmacro MUI_PAGE_LICENSE "@CPACK_RESOURCE_FILE_LICENSE@"
+  !endif
+
   Page custom InstallOptionsPage
   !insertmacro MUI_PAGE_DIRECTORY
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/linphone-desktop-4.3.1/linphone-app/src/app/App.cpp 
new/linphone-desktop-4.3.2/linphone-app/src/app/App.cpp
--- old/linphone-desktop-4.3.1/linphone-app/src/app/App.cpp     2021-11-04 
21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/app/App.cpp     2021-11-10 
00:52:03.000000000 +0100
@@ -372,8 +372,18 @@
        mEngine->addImageProvider(ExternalImageProvider::ProviderId, new 
ExternalImageProvider());
        mEngine->addImageProvider(ThumbnailProvider::ProviderId, new 
ThumbnailProvider());
        
+       mEngine->rootContext()->setContextProperty("applicationName", 
APPLICATION_NAME);
+#ifdef APPLICATION_URL
        mEngine->rootContext()->setContextProperty("applicationUrl", 
APPLICATION_URL);
+#else
+       mEngine->rootContext()->setContextProperty("applicationUrl", "");
+#endif
+       
+#ifdef APPLICATION_VENDOR
        mEngine->rootContext()->setContextProperty("applicationVendor", 
APPLICATION_VENDOR);
+#else
+       mEngine->rootContext()->setContextProperty("applicationVendor", "");
+#endif
 #ifdef APPLICATION_LICENCE
        mEngine->rootContext()->setContextProperty("applicationLicence", 
APPLICATION_LICENCE);
 #else
@@ -862,7 +872,7 @@
     "Exec=" + exec + " --iconified\n"
     "Terminal=false\n"
     "Categories=Network;Telephony;\n"
-    
"MimeType=x-scheme-handler/sip-linphone;x-scheme-handler/sip;x-scheme-handler/sips-linphone;x-scheme-handler/sips;x-scheme-handler/tel;x-scheme-handler/callto;\n"
+    "MimeType=x-scheme-handler/sip-" EXECUTABLE_NAME 
";x-scheme-handler/sip;x-scheme-handler/sips-" EXECUTABLE_NAME 
";x-scheme-handler/sips;x-scheme-handler/tel;x-scheme-handler/callto;\n"
   );
        
        mAutoStart = enabled;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/app/paths/Paths.cpp 
new/linphone-desktop-4.3.2/linphone-app/src/app/paths/Paths.cpp
--- old/linphone-desktop-4.3.1/linphone-app/src/app/paths/Paths.cpp     
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/app/paths/Paths.cpp     
2021-11-10 00:52:03.000000000 +0100
@@ -227,6 +227,10 @@
   return writable ? getWritableFilePath(path) : getReadableFilePath(path);
 }
 
+std::string Paths::getDatabaseFilePath (){
+       return 
getWritableDirPath(QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation))
 + Constants::PathDatabase;
+}
+
 string Paths::getFactoryConfigFilePath () {
   return getReadableFilePath(getAppFactoryConfigFilePath());
 }
@@ -239,6 +243,10 @@
   return 
getWritableDirPath(QStandardPaths::writableLocation(QStandardPaths::DownloadLocation));
 }
 
+std::string Paths::getLimeDatabasePath (){
+       return 
getWritableDirPath(QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation))
 + Constants::PathLimeDatabase;
+}
+
 string Paths::getLogsDirPath () {
   return 
getWritableDirPath(QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation)
 + Constants::PathLogs);
 }
@@ -259,6 +267,10 @@
   return getReadableDirPath(getAppPackagePluginsDirPath() + 
Constants::PathPluginsApp);
 }
 
+std::string Paths::getPackageSoundsResourcesDirPath (){
+       return getReadableDirPath(getAppPackageDataDirPath() + 
Constants::PathSounds);
+}
+
 string Paths::getPluginsAppDirPath () {
   return getWritableDirPath(getAppPluginsDirPath() + 
Constants::PathPluginsApp);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/app/paths/Paths.hpp 
new/linphone-desktop-4.3.2/linphone-app/src/app/paths/Paths.hpp
--- old/linphone-desktop-4.3.1/linphone-app/src/app/paths/Paths.hpp     
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/app/paths/Paths.hpp     
2021-11-10 00:52:03.000000000 +0100
@@ -36,14 +36,17 @@
   std::string getCodecsDirPath ();
   std::string getConfigDirPath (bool writable = true);
   std::string getConfigFilePath (const QString &configPath = QString(), bool 
writable = true);
+  std::string getDatabaseFilePath ();
   std::string getDownloadDirPath ();
   std::string getFactoryConfigFilePath ();
   std::string getFriendsListFilePath ();
+  std::string getLimeDatabasePath ();
   std::string getLogsDirPath ();
   std::string getMessageHistoryFilePath ();
   std::string getPackageDataDirPath ();
   std::string getPackageMsPluginsDirPath ();
   std::string getPackagePluginsAppDirPath ();
+  std::string getPackageSoundsResourcesDirPath ();
   std::string getPluginsAppDirPath ();
   QStringList getPluginsAppFolders();
   std::string getRootCaFilePath ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/components/call/CallModel.cpp 
new/linphone-desktop-4.3.2/linphone-app/src/components/call/CallModel.cpp
--- old/linphone-desktop-4.3.1/linphone-app/src/components/call/CallModel.cpp   
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/components/call/CallModel.cpp   
2021-11-10 00:52:03.000000000 +0100
@@ -199,22 +199,34 @@
 // 
-----------------------------------------------------------------------------
 
 float CallModel::getSpeakerVolumeGain () const {
-       return mCall->getSpeakerVolumeGain();
+       float gain = mCall->getSpeakerVolumeGain();
+       if( gain < 0)
+               gain = 
CoreManager::getInstance()->getSettingsModel()->getPlaybackGain();
+       return gain;
 }
 
 void CallModel::setSpeakerVolumeGain (float volume) {
        Q_ASSERT(volume >= 0.0f && volume <= 1.0f);
-       mCall->setSpeakerVolumeGain(volume);
+       if( mCall->getSpeakerVolumeGain() >= 0)
+               mCall->setSpeakerVolumeGain(volume);
+       else
+               
CoreManager::getInstance()->getSettingsModel()->setPlaybackGain(volume);
        emit speakerVolumeGainChanged(getSpeakerVolumeGain());
 }
 
 float CallModel::getMicroVolumeGain () const {
-       return mCall->getMicrophoneVolumeGain();
+       float gain = mCall->getMicrophoneVolumeGain();
+       if( gain < 0)
+               gain = 
CoreManager::getInstance()->getSettingsModel()->getCaptureGain();
+       return gain;
 }
 
 void CallModel::setMicroVolumeGain (float volume) {
        Q_ASSERT(volume >= 0.0f && volume <= 1.0f);
-       mCall->setMicrophoneVolumeGain(volume);
+       if(mCall->getMicrophoneVolumeGain() >= 0)
+               mCall->setMicrophoneVolumeGain(volume);
+       else
+               
CoreManager::getInstance()->getSettingsModel()->setCaptureGain(volume);
        emit microVolumeGainChanged(getMicroVolumeGain());
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/components/core/CoreManager.cpp 
new/linphone-desktop-4.3.2/linphone-app/src/components/core/CoreManager.cpp
--- old/linphone-desktop-4.3.1/linphone-app/src/components/core/CoreManager.cpp 
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/components/core/CoreManager.cpp 
2021-11-10 00:52:03.000000000 +0100
@@ -208,14 +208,11 @@
 // 
-----------------------------------------------------------------------------
 
 void CoreManager::setOtherPaths () {
-       if (mCore->getZrtpSecretsFile().empty() || 
!Paths::filePathExists(mCore->getZrtpSecretsFile(), true))
-               mCore->setZrtpSecretsFile(Paths::getZrtpSecretsFilePath());
+       mCore->setZrtpSecretsFile(Paths::getZrtpSecretsFilePath());
        qInfo() << "Using ZrtpSecrets path : " << 
QString::fromStdString(mCore->getZrtpSecretsFile());
-       if (mCore->getUserCertificatesPath().empty() || 
!Paths::filePathExists(mCore->getUserCertificatesPath(), true))
-               
mCore->setUserCertificatesPath(Paths::getUserCertificatesDirPath());
+       mCore->setUserCertificatesPath(Paths::getUserCertificatesDirPath());
        qInfo() << "Using UserCertificate path : " << 
QString::fromStdString(mCore->getUserCertificatesPath());
-       if (mCore->getRootCa().empty() || 
!Paths::filePathExists(mCore->getRootCa()))
-               mCore->setRootCa(Paths::getRootCaFilePath());
+       mCore->setRootCa(Paths::getRootCaFilePath());
        qInfo() << "Using RootCa path : " << 
QString::fromStdString(mCore->getRootCa());
 }
 
@@ -223,6 +220,7 @@
        shared_ptr<linphone::Factory> factory = linphone::Factory::get();
        factory->setMspluginsDir(Paths::getPackageMsPluginsDirPath());
        factory->setTopResourcesDir(Paths::getPackageDataDirPath());
+       
factory->setSoundResourcesDir(Paths::getPackageSoundsResourcesDirPath());
 }
 
 // 
-----------------------------------------------------------------------------
@@ -258,11 +256,15 @@
        // Force capture/display.
        // Useful if the app was built without video support.
        // (The capture/display attributes are reset by the core in this case.)
+       shared_ptr<linphone::Config> config = mCore->getConfig();
        if (mCore->videoSupported()) {
-               shared_ptr<linphone::Config> config = mCore->getConfig();
                config->setInt("video", "capture", 1);
                config->setInt("video", "display", 1);
        }
+       if(!config->hasEntry("storage", "uri"))
+               config->setString("storage", "uri", 
Paths::getDatabaseFilePath());
+       if(!config->hasEntry("lime", "x3dh_db_path"))
+               config->setString("lime", "x3dh_db_path", 
Paths::getLimeDatabasePath());
        mCore->start();
        setDatabasesPaths();
        setOtherPaths();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/components/settings/SettingsModel.cpp
 
new/linphone-desktop-4.3.2/linphone-app/src/components/settings/SettingsModel.cpp
--- 
old/linphone-desktop-4.3.1/linphone-app/src/components/settings/SettingsModel.cpp
   2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/src/components/settings/SettingsModel.cpp
   2021-11-10 00:52:03.000000000 +0100
@@ -224,6 +224,7 @@
 }
 
 void SettingsModel::setPlaybackGain(float gain) {
+       
CoreManager::getInstance()->getCore()->setPlaybackGainDb(MediastreamerUtils::linearToDb(gain));
        if (mSimpleCaptureGraph && mSimpleCaptureGraph->isRunning()) {
                mSimpleCaptureGraph->setPlaybackGain(gain);
        }
@@ -235,6 +236,7 @@
 }
 
 void SettingsModel::setCaptureGain(float gain) {
+       
CoreManager::getInstance()->getCore()->setMicGainDb(MediastreamerUtils::linearToDb(gain));
        if (mSimpleCaptureGraph && mSimpleCaptureGraph->isRunning()) {
                mSimpleCaptureGraph->setCaptureGain(gain);
        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/components/timeline/TimelineListModel.cpp
 
new/linphone-desktop-4.3.2/linphone-app/src/components/timeline/TimelineListModel.cpp
--- 
old/linphone-desktop-4.3.1/linphone-app/src/components/timeline/TimelineListModel.cpp
       2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/src/components/timeline/TimelineListModel.cpp
       2021-11-10 00:52:03.000000000 +0100
@@ -154,24 +154,27 @@
 QVariantList TimelineListModel::getLastChatRooms(const int& maxCount) const{
        QVariantList contacts;
        QMultiMap<qint64, ChatRoomModel*> sortedData;
-       int count = 0;
-       
        QDateTime currentDateTime = QDateTime::currentDateTime();
+       bool doTest = true;
        
        for(auto timeline : mTimelines){
                auto chatRoom = timeline->getChatRoomModel();
-               if(chatRoom && chatRoom->isCurrentProxy() && 
!chatRoom->isGroupEnabled() && !chatRoom->haveEncryption()) {
+               if(chatRoom && chatRoom->isCurrentProxy() && 
chatRoom->isOneToOne() && !chatRoom->haveEncryption()) {
                        
sortedData.insert(chatRoom->mLastUpdateTime.secsTo(currentDateTime),chatRoom);
                }
        }
-       for(auto contact : sortedData){
-               if(Utils::hasCapability(contact->getFullPeerAddress(),  
LinphoneEnums::FriendCapabilityGroupChat)  ) {
-                       ++count;
-                       contacts << QVariant::fromValue(contact);
-                       if(count >= maxCount)
-                               return contacts;
+       do{
+               int count = 0;
+               for(auto contact : sortedData){
+                       if(!doTest || 
Utils::hasCapability(contact->getFullPeerAddress(),  
LinphoneEnums::FriendCapabilityGroupChat)  ) {
+                               ++count;
+                               contacts << QVariant::fromValue(contact);
+                               if(count >= maxCount)
+                                       return contacts;
+                       }
                }
-       }
+               doTest = false;
+       }while( contacts.size() == 0 && sortedData.size() > 0);// no friends 
capability have been found : take contacts without testing capabilities.
        
        return contacts;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/utils/Constants.cpp 
new/linphone-desktop-4.3.2/linphone-app/src/utils/Constants.cpp
--- old/linphone-desktop-4.3.1/linphone-app/src/utils/Constants.cpp     
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/utils/Constants.cpp     
2021-11-10 00:52:03.000000000 +0100
@@ -40,14 +40,17 @@
 constexpr char Constants::PathPlugins[];
 #endif
 constexpr char Constants::PathPluginsApp[];
+constexpr char Constants::PathSounds[];
 constexpr char Constants::PathThumbnails[];
 constexpr char Constants::PathUserCertificates[];
 
 constexpr char Constants::PathCallHistoryList[];
 constexpr char Constants::PathConfig[];
+constexpr char Constants::PathDatabase[];
 constexpr char Constants::PathFactoryConfig[];
 constexpr char Constants::PathRootCa[];
 constexpr char Constants::PathFriendsList[];
+constexpr char Constants::PathLimeDatabase[];
 constexpr char Constants::PathMessageHistoryList[];
 constexpr char Constants::PathZrtpSecrets[];
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/utils/Constants.hpp 
new/linphone-desktop-4.3.2/linphone-app/src/utils/Constants.hpp
--- old/linphone-desktop-4.3.1/linphone-app/src/utils/Constants.hpp     
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/utils/Constants.hpp     
2021-11-10 00:52:03.000000000 +0100
@@ -86,14 +86,17 @@
        static constexpr char PathPlugins[] = "/plugins/";
 #endif
        static constexpr char PathPluginsApp[] = "app/";
+       static constexpr char PathSounds[] = "/sounds/" EXECUTABLE_NAME;
        static constexpr char PathThumbnails[] = "/thumbnails/";
        static constexpr char PathUserCertificates[] = "/usr-crt/";
        
        static constexpr char PathCallHistoryList[] = "/call-history.db";
        static constexpr char PathConfig[] = "/linphonerc";
+       static constexpr char PathDatabase[] = "/" EXECUTABLE_NAME ".db";
        static constexpr char PathFactoryConfig[] = "/" EXECUTABLE_NAME 
"/linphonerc-factory";
        static constexpr char PathRootCa[] = "/" EXECUTABLE_NAME "/rootca.pem";
        static constexpr char PathFriendsList[] = "/friends.db";
+       static constexpr char PathLimeDatabase[] = "/x3dh.c25519.sqlite3";
        static constexpr char PathMessageHistoryList[] = "/message-history.db";
        static constexpr char PathZrtpSecrets[] = "/zidcache";
        
@@ -114,7 +117,7 @@
        static constexpr char QtDomain[] = "qt";
        static constexpr char SrcPattern[] = "/src/";
        
-       static constexpr char VcardScheme[] = "linphone-desktop:/";
+       static constexpr char VcardScheme[] = EXECUTABLE_NAME "-desktop:/";
        static constexpr int CbsCallInterval = 20;
        static constexpr char RcVersionName[] = "rc_version";
        static constexpr int RcVersionCurrent = 2;// 2 = Conference URI
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/src/utils/Utils.cpp 
new/linphone-desktop-4.3.2/linphone-app/src/utils/Utils.cpp
--- old/linphone-desktop-4.3.1/linphone-app/src/utils/Utils.cpp 2021-11-04 
21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/src/utils/Utils.cpp 2021-11-10 
00:52:03.000000000 +0100
@@ -76,7 +76,7 @@
        if(contact)
                return contact->hasCapability(capability);
        else
-               return true;
+               return false;
 }
 
 QString Utils::toDateTimeString(QDateTime date){
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml
 
new/linphone-desktop-4.3.2/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml
--- 
old/linphone-desktop-4.3.1/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml
       2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/ui/modules/Linphone/SmartSearchBar/SmartSearchBar.qml
       2021-11-10 00:52:03.000000000 +0100
@@ -88,7 +88,7 @@
                                colorSet: 
SettingsModel.getShowStartChatButton() ? SipAddressesViewStyle.chat : 
SipAddressesViewStyle.history,
                                secure: 1,
                                visible: SettingsModel.secureChatEnabled && 
AccountSettingsModel.conferenceURI != '',
-                               visibleHandler : function(entry) {
+                               secureIconVisibleHandler : function(entry) {
                                                                        
if(entry)
                                                                                
return UtilsCpp.hasCapability(entry.sipAddress ? entry.sipAddress : entry,  
LinphoneEnums.FriendCapabilityLimeX3Dh);
                                                                        else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/modules/Linphone/View/ParticipantsView.qml
 
new/linphone-desktop-4.3.2/linphone-app/ui/modules/Linphone/View/ParticipantsView.qml
--- 
old/linphone-desktop-4.3.1/linphone-app/ui/modules/Linphone/View/ParticipantsView.qml
       2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/ui/modules/Linphone/View/ParticipantsView.qml
       2021-11-10 00:52:03.000000000 +0100
@@ -120,11 +120,20 @@
                                                                        
isCustom: true
                                                                        
backgroundRadius: 90
                                                                        
colorSet: modelData.colorSet
-                                                                       
visible: (sipAddressesView.actions[index].visibleHandler ? 
sipAddressesView.actions[index].visibleHandler($sipAddress) : 
sipAddressesView.actions[index].visible)
+                                                                       
visible: sipAddressesView.actions[index].visible
                                                                        
                                                                        
onClicked: sipAddressesView.actions[index].handler({
                                                                                
                                                                                
                   sipAddress: sipAddressesView.interpretableSipAddress
                                                                                
                                                                                
           })
+                                                                       Icon{
+                                                                               
visible: modelData.secure>0 &&
+                                                                               
        (sipAddressesView.actions[index].secureIconVisibleHandler ? 
sipAddressesView.actions[index].secureIconVisibleHandler($sipAddress) : true)
+                                                                               
icon:modelData.secure === 2?'secure_level_2':'secure_level_1'
+                                                                               
iconSize:15
+                                                                               
anchors.right:parent.right
+                                                                               
anchors.top:parent.top
+                                                                               
anchors.topMargin: -3
+                                                                       }
                                                                }
                                                        }
                                                }
@@ -282,12 +291,13 @@
                                                        colorSet: 
modelData.colorSet
                                                        anchors.verticalCenter: 
parent.verticalCenter
                                                        
tooltipText:modelData.tooltipText?modelData.tooltipText:''
-                                                       visible: 
(sipAddressesView.actions[index].visibleHandler ? 
sipAddressesView.actions[index].visibleHandler($sipAddress) : 
sipAddressesView.actions[index].visible)
+                                                       visible: 
sipAddressesView.actions[index].visible
                                                        onClicked: {
                                                                
sipAddressesView.actions[index].handler(contactView.entry)
                                                        }
                                                        Icon{
-                                                               visible: 
modelData.secure>0
+                                                               visible: 
modelData.secure>0 &&
+                                                                       
(sipAddressesView.actions[index].secureIconVisibleHandler ? 
sipAddressesView.actions[index].secureIconVisibleHandler($sipAddress) : true)
                                                                
icon:modelData.secure === 2?'secure_level_2':'secure_level_1'
                                                                iconSize:15
                                                                
anchors.right:parent.right
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/modules/Linphone/View/SipAddressesView.qml
 
new/linphone-desktop-4.3.2/linphone-app/ui/modules/Linphone/View/SipAddressesView.qml
--- 
old/linphone-desktop-4.3.1/linphone-app/ui/modules/Linphone/View/SipAddressesView.qml
       2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/ui/modules/Linphone/View/SipAddressesView.qml
       2021-11-10 00:52:03.000000000 +0100
@@ -122,13 +122,14 @@
                                                                        
backgroundRadius: 90
                                                                        
colorSet: modelData.colorSet
                                                                        
-                                                                       
visible: (sipAddressesView.actions[index].visibleHandler ? 
sipAddressesView.actions[index].visibleHandler({ sipAddress : 
sipAddressesView.interpretableSipAddress}) : 
sipAddressesView.actions[index].visible)
+                                                                       
visible: sipAddressesView.actions[index].visible
 
                                                                        
onClicked: sipAddressesView.actions[index].handler({
                                                                                
                                                                                
                   sipAddress: sipAddressesView.interpretableSipAddress
                                                                                
                                                                                
           })
                                                                        Icon{
-                                                                               
visible: modelData.secure>0
+                                                                               
visible: modelData.secure>0 && 
+                                                                               
        (sipAddressesView.actions[index].secureIconVisibleHandler ? 
sipAddressesView.actions[index].secureIconVisibleHandler({ sipAddress : 
sipAddressesView.interpretableSipAddress}) : true)
                                                                                
icon: 'secure_on'
                                                                                
iconSize:15
                                                                                
anchors.right:parent.right
@@ -281,12 +282,13 @@
                                                        backgroundRadius: 90
                                                        colorSet: 
modelData.colorSet
                                                        
tooltipText:modelData.tooltipText?modelData.tooltipText:''
-                                                       visible: 
(sipAddressesView.actions[index].visibleHandler ? 
sipAddressesView.actions[index].visibleHandler($sipAddress) : 
sipAddressesView.actions[index].visible)
+                                                       visible: 
sipAddressesView.actions[index].visible
                                                        onClicked: {
                                                                
sipAddressesView.actions[index].handler($sipAddress)
                                                        }
                                                        Icon{
-                                                               visible: 
modelData.secure>0
+                                                               visible: 
modelData.secure>0 && 
+                                                                       
(sipAddressesView.actions[index].secureIconVisibleHandler ? 
sipAddressesView.actions[index].secureIconVisibleHandler($sipAddress) : true)
                                                                icon: 
'secure_on'
                                                                iconSize:15
                                                                
anchors.right:parent.right
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/ContactEdit.qml 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/ContactEdit.qml
--- old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/ContactEdit.qml   
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/ContactEdit.qml   
2021-11-10 00:52:03.000000000 +0100
@@ -186,7 +186,7 @@
                                                isCustom: true
                                                backgroundRadius: 90
                                                colorSet: 
SettingsModel.getShowStartChatButton() ? ContactEditStyle.chat : 
ContactEditStyle.history
-                                               visible: 
SettingsModel.secureChatEnabled && _contact && 
_contact.hasCapability(LinphoneEnums.FriendCapabilityLimeX3Dh)
+                                               visible: 
SettingsModel.secureChatEnabled
                                                enabled: 
AccountSettingsModel.conferenceURI != ''
                                                Icon{
                                                        icon:'secure_level_1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Contacts.qml 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Contacts.qml
--- old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Contacts.qml      
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Contacts.qml      
2021-11-10 00:52:03.000000000 +0100
@@ -164,7 +164,7 @@
                                                                        
isCustom: true
                                                                        
backgroundRadius: 90
                                                                        
colorSet: SettingsModel.getShowStartChatButton() ? ContactsStyle.chat : 
ContactsStyle.history
-                                                                       
visible: SettingsModel.secureChatEnabled && 
$contact.hasCapability(LinphoneEnums.FriendCapabilityLimeX3Dh)
+                                                                       
visible: SettingsModel.secureChatEnabled
                                                                        
enabled: AccountSettingsModel.conferenceURI != ''
                                                                        Icon{
                                                                                
icon:'secure_level_1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Conversation.qml 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Conversation.qml
--- old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Conversation.qml  
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Conversation.qml  
2021-11-10 00:52:03.000000000 +0100
@@ -277,7 +277,7 @@
                                                isCustom: true
                                                backgroundRadius: 1000
                                                colorSet: 
ConversationStyle.bar.actions.chat
-                                               visible: 
SettingsModel.secureChatEnabled && SettingsModel.getShowStartChatButton() && 
!conversation.haveMoreThanOneParticipants && conversation.securityLevel == 1 && 
UtilsCpp.hasCapability(conversation.peerAddress,  
LinphoneEnums.FriendCapabilityLimeX3Dh)
+                                               visible: 
SettingsModel.secureChatEnabled && SettingsModel.getShowStartChatButton() && 
!conversation.haveMoreThanOneParticipants && conversation.securityLevel == 1
                                                
                                                onClicked: 
CallsListModel.launchChat(chatRoomModel.participants.addressesToString, 1)
                                                Icon{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Dialogs/InfoChatRoom.qml
 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Dialogs/InfoChatRoom.qml
--- 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Dialogs/InfoChatRoom.qml
  2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Dialogs/InfoChatRoom.qml
  2021-11-10 00:52:03.000000000 +0100
@@ -89,9 +89,9 @@
                                        colorSet: 
InfoChatRoomStyle.addParticipant,
                                        secure: chatRoomModel.haveEncryption,
                                        visible: true,
-                                       visibleHandler : function(entry) {
-                                                                       return 
!chatRoomModel.haveEncryption || UtilsCpp.hasCapability(entry.sipAddress,  
LinphoneEnums.FriendCapabilityLimeX3Dh);
-                                                               },
+                                       secureIconVisibleHandler : 
function(entry) {
+                                                                       return 
chatRoomModel.haveEncryption && UtilsCpp.hasCapability(entry.sipAddress,  
LinphoneEnums.FriendCapabilityLimeX3Dh);
+                                                               },
                                        handler: function (entry) {
                                                
selectedParticipants.addAddress(entry.sipAddress)
                                        },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml
 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml
--- 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml
   2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/Dialogs/NewChatRoom.qml
   2021-11-10 00:52:03.000000000 +0100
@@ -123,8 +123,9 @@
                                                        
                                                        onClicked: {
                                                                var newCheck = 
checked
-                                                               if(! ( 
SettingsModel.standardChatEnabled && !checked || 
SettingsModel.secureChatEnabled && checked))
+                                                               
if(SettingsModel.standardChatEnabled && checked || 
SettingsModel.secureChatEnabled && !checked)
                                                                                
newCheck = !checked;
+/*     Uncomment if we need to remove participants that doesn't have the 
capability (was commented because we cannot get capabilities in all cases)
                                                                        
if(newCheck){   // Remove all participants that have not the capabilities
                                                                                
var participants = selectedParticipants.getParticipants()
                                                                                
for(var index in participants){
@@ -132,6 +133,7 @@
                                                                                
                participantView.removeParticipant(participants[index])
                                                                                
}
                                                                        }
+*/
                                                                checked = 
newCheck;
                                                        }
                                                        indicatorStyle: 
SwitchStyle.aux
@@ -310,17 +312,14 @@
                                                placeholderText: 
qsTr('participantSelectionPlaceholder')
                                                //: 'Search in your contacts or 
add a custom one to the chat room.'
                                                tooltipText: 
qsTr('participantSelectionTooltip')
-                                               function isUsable(sipAddress){
-                                                                       return  
UtilsCpp.hasCapability(sipAddress,  LinphoneEnums.FriendCapabilityGroupChat) && 
-                                                                               
(secureSwitch.checked ? UtilsCpp.hasCapability(sipAddress,  
LinphoneEnums.FriendCapabilityLimeX3Dh) : true);
-                                               }
+                                               
                                                actions:[{
                                                                colorSet: 
NewChatRoomStyle.addParticipant,
                                                                secure: 
secureSwitch.checked,
                                                                visible: true,
-                                                               visibleHandler 
: function(entry) {
-                                                                       return 
isUsable(entry.sipAddress)
-                                                               },
+                                                               
secureIconVisibleHandler : function(entry) {
+                                                                       return 
UtilsCpp.hasCapability(entry.sipAddress,  
LinphoneEnums.FriendCapabilityLimeX3Dh)
+                                                               },
                                                                handler: 
function (entry) {
                                                                        
selectedParticipants.addAddress(entry.sipAddress)
                                                                        
smartSearchBar.addAddressToIgnore(entry.sipAddress);
@@ -329,11 +328,9 @@
                                                        }]
                                                
                                                onEntryClicked: {
-                                                       if( isUsable(entry)){
                                                                
selectedParticipants.addAddress(entry)
                                                                
smartSearchBar.addAddressToIgnore(entry);
                                                                
++lastContacts.reloadCount
-                                                       }
                                                }
                                        }
                                        Text{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/HistoryView.qml 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/HistoryView.qml
--- old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/HistoryView.qml   
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/HistoryView.qml   
2021-11-10 00:52:03.000000000 +0100
@@ -12,143 +12,166 @@
 // 
=============================================================================
 
 ColumnLayout  {
-  id: historyView
-
-  property string peerAddress
-  property string fullPeerAddress
-
-  readonly property var _sipAddressObserver: 
peerAddress?SipAddressesModel.getSipAddressObserver((fullPeerAddress?fullPeerAddress:peerAddress),
 ''):null
-
-
-  // 
---------------------------------------------------------------------------
-
-  spacing: 0
-
-  // 
---------------------------------------------------------------------------
-  // Contact bar.
-  // 
---------------------------------------------------------------------------
-
-  Rectangle {
-    Layout.fillWidth: true
-    Layout.preferredHeight: 
peerAddress?HistoryViewStyle.bar.height:HistoryViewStyle.bar.height/2
-
-    color: HistoryViewStyle.bar.backgroundColor
-
-    RowLayout {
-      anchors {
-        fill: parent
-        leftMargin: HistoryViewStyle.bar.leftMargin
-        rightMargin: HistoryViewStyle.bar.rightMargin
-      }
-      spacing: HistoryViewStyle.bar.spacing
-      
-        layoutDirection: peerAddress?Qt.LeftToRight :Qt.RightToLeft 
-
-      Avatar {
-        id: avatar
-
-        Layout.preferredHeight: HistoryViewStyle.bar.avatarSize
-        Layout.preferredWidth: HistoryViewStyle.bar.avatarSize
-
-        image: peerAddress?Logic.getAvatar():null
-
-        presenceLevel: 
historyView._sipAddressObserver?Presence.getPresenceLevel(
-          historyView._sipAddressObserver.presenceStatus
-        ):null
-
-        username: peerAddress? 
UtilsCpp.getDisplayName(historyView._sipAddressObserver.peerAddress):null
-        visible:peerAddress
-      }
-
-      ContactDescription {
-        Layout.fillHeight: true
-        Layout.fillWidth: true
-
-        sipAddress: historyView.peerAddress
-        sipAddressColor: HistoryViewStyle.bar.description.sipAddressColor
-        username: avatar.username
-        usernameColor: HistoryViewStyle.bar.description.usernameColor
-        visible:peerAddress
-      }
-
-      Row {
-        Layout.fillHeight: true
-
-        spacing: HistoryViewStyle.bar.actions.spacing
-        
-        ActionBar {
-          anchors.verticalCenter: parent.verticalCenter
-          iconSize: HistoryViewStyle.bar.actions.call.iconSize
-
-          ActionButton {
-            isCustom: true
-                       backgroundRadius: 90
-                       colorSet: HistoryViewStyle.videoCall
-            visible: peerAddress && SettingsModel.videoSupported && 
SettingsModel.outgoingCallsEnabled && SettingsModel.showStartVideoCallButton
-
-            onClicked: CallsListModel.launchVideoCall(historyView.peerAddress)
-          }
-
-          ActionButton {
-            isCustom: true
-                       backgroundRadius: 90
-                       colorSet: HistoryViewStyle.call
-            visible: peerAddress && SettingsModel.outgoingCallsEnabled
-
-            onClicked: CallsListModel.launchAudioCall(historyView.peerAddress)
-          }
-        }
-
-        ActionBar {
-          anchors.verticalCenter: parent.verticalCenter
-
-          ActionButton {
-                       isCustom: true
-                       backgroundRadius: 4
-                       colorSet: historyView._sipAddressObserver && 
historyView._sipAddressObserver.contact ? 
ConversationStyle.bar.actions.edit.viewContact : 
ConversationStyle.bar.actions.edit.addContact
-            iconSize: HistoryViewStyle.bar.actions.edit.iconSize
-            visible: peerAddress && SettingsModel.contactsEnabled
-
-            onClicked: window.setView('ContactEdit', { sipAddress: 
historyView.peerAddress })
-            tooltipText: peerAddress?Logic.getEditTooltipText():''
-          }
-
-          ActionButton {
-            isCustom: true
-                       backgroundRadius: 90
-                       colorSet: HistoryViewStyle.deleteAction
-
-            onClicked: Logic.removeAllEntries()
-
-            tooltipText: qsTr('cleanHistory')
-          }
-        }
-      }
-    }
-  }
-
-  // 
---------------------------------------------------------------------------
-  // History.
-  // 
---------------------------------------------------------------------------
-
-  History {
-    Layout.fillHeight: true
-    Layout.fillWidth: true
-    
-    onEntryClicked:{
-        historyView.fullPeerAddress=sipAddress
-        historyView.peerAddress=sipAddress
-        historyProxyModel.resetMessageCount()
-    }
-
-    proxyModel: HistoryProxyModel {
-      id: historyProxyModel
-
-      Component.onCompleted: {
-          setEntryTypeFilter()
-          resetMessageCount()
-      }
-    }
-  }
-
+       id: historyView
+       
+       property string peerAddress
+       property string fullPeerAddress
+       
+       readonly property var _sipAddressObserver: 
peerAddress?SipAddressesModel.getSipAddressObserver((fullPeerAddress?fullPeerAddress:peerAddress),
 ''):null
+       
+       
+       // 
---------------------------------------------------------------------------
+       
+       spacing: 0
+       
+       // 
---------------------------------------------------------------------------
+       // Contact bar.
+       // 
---------------------------------------------------------------------------
+       
+       Rectangle {
+               Layout.fillWidth: true
+               Layout.preferredHeight: 
peerAddress?HistoryViewStyle.bar.height:HistoryViewStyle.bar.height/2
+               
+               color: HistoryViewStyle.bar.backgroundColor
+               
+               RowLayout {
+                       anchors {
+                               fill: parent
+                               leftMargin: HistoryViewStyle.bar.leftMargin
+                               rightMargin: HistoryViewStyle.bar.rightMargin
+                       }
+                       spacing: HistoryViewStyle.bar.spacing
+                       
+                       layoutDirection: peerAddress?Qt.LeftToRight 
:Qt.RightToLeft 
+                       
+                       Avatar {
+                               id: avatar
+                               
+                               Layout.preferredHeight: 
HistoryViewStyle.bar.avatarSize
+                               Layout.preferredWidth: 
HistoryViewStyle.bar.avatarSize
+                               
+                               image: peerAddress?Logic.getAvatar():null
+                               
+                               presenceLevel: 
historyView._sipAddressObserver?Presence.getPresenceLevel(
+                                                                               
                                                        
historyView._sipAddressObserver.presenceStatus
+                                                                               
                                                        ):null
+                               
+                               username: peerAddress? 
UtilsCpp.getDisplayName(historyView._sipAddressObserver.peerAddress):null
+                               visible:peerAddress
+                       }
+                       
+                       ContactDescription {
+                               Layout.fillHeight: true
+                               Layout.fillWidth: true
+                               
+                               sipAddress: historyView.peerAddress
+                               sipAddressColor: 
HistoryViewStyle.bar.description.sipAddressColor
+                               username: avatar.username
+                               usernameColor: 
HistoryViewStyle.bar.description.usernameColor
+                               visible:peerAddress
+                       }
+                       
+                       Row {
+                               Layout.fillHeight: true
+                               
+                               spacing: HistoryViewStyle.bar.actions.spacing
+                               
+                               ActionBar {
+                                       anchors.verticalCenter: 
parent.verticalCenter
+                                       iconSize: 
HistoryViewStyle.bar.actions.call.iconSize
+                                       
+                                       ActionButton {
+                                               isCustom: true
+                                               backgroundRadius: 90
+                                               colorSet: 
HistoryViewStyle.videoCall
+                                               visible: peerAddress && 
SettingsModel.videoSupported && SettingsModel.outgoingCallsEnabled && 
SettingsModel.showStartVideoCallButton
+                                               
+                                               onClicked: 
CallsListModel.launchVideoCall(historyView.peerAddress)
+                                       }
+                                       
+                                       ActionButton {
+                                               isCustom: true
+                                               backgroundRadius: 90
+                                               colorSet: HistoryViewStyle.call
+                                               visible: peerAddress && 
SettingsModel.outgoingCallsEnabled
+                                               
+                                               onClicked: 
CallsListModel.launchAudioCall(historyView.peerAddress)
+                                       }
+                                       ActionButton {
+                                               isCustom: true
+                                               backgroundRadius: 90
+                                               colorSet: HistoryViewStyle.chat
+                                               
+                                               visible: peerAddress && 
SettingsModel.standardChatEnabled && SettingsModel.getShowStartChatButton() 
+                                               
+                                               onClicked: 
CallsListModel.launchChat(historyView.peerAddress, 0)
+                                       }
+                                       ActionButton {
+                                               isCustom: true
+                                               backgroundRadius: 1000
+                                               colorSet: HistoryViewStyle.chat
+                                               visible: peerAddress && 
SettingsModel.secureChatEnabled && SettingsModel.getShowStartChatButton()
+                                               onClicked: 
CallsListModel.launchChat(historyView.peerAddress, 1)
+                                               Icon{
+                                                       icon:'secure_level_1'
+                                                       iconSize:15
+                                                       
anchors.right:parent.right
+                                                       anchors.top:parent.top
+                                                       anchors.topMargin: -3
+                                               }
+                                       }
+                               }
+                               
+                               ActionBar {
+                                       anchors.verticalCenter: 
parent.verticalCenter
+                                       
+                                       ActionButton {
+                                               isCustom: true
+                                               backgroundRadius: 4
+                                               colorSet: 
historyView._sipAddressObserver && historyView._sipAddressObserver.contact ? 
ConversationStyle.bar.actions.edit.viewContact : 
ConversationStyle.bar.actions.edit.addContact
+                                               iconSize: 
HistoryViewStyle.bar.actions.edit.iconSize
+                                               visible: peerAddress && 
SettingsModel.contactsEnabled
+                                               
+                                               onClicked: 
window.setView('ContactEdit', { sipAddress: historyView.peerAddress })
+                                               tooltipText: 
peerAddress?Logic.getEditTooltipText():''
+                                       }
+                                       
+                                       ActionButton {
+                                               isCustom: true
+                                               backgroundRadius: 90
+                                               colorSet: 
HistoryViewStyle.deleteAction
+                                               
+                                               onClicked: 
Logic.removeAllEntries()
+                                               
+                                               tooltipText: 
qsTr('cleanHistory')
+                                       }
+                               }
+                       }
+               }
+       }
+       
+       // 
---------------------------------------------------------------------------
+       // History.
+       // 
---------------------------------------------------------------------------
+       
+       History {
+               Layout.fillHeight: true
+               Layout.fillWidth: true
+               
+               onEntryClicked:{
+                       historyView.fullPeerAddress=sipAddress
+                       historyView.peerAddress=sipAddress
+                       historyProxyModel.resetMessageCount()
+               }
+               
+               proxyModel: HistoryProxyModel {
+                       id: historyProxyModel
+                       
+                       Component.onCompleted: {
+                               setEntryTypeFilter()
+                               resetMessageCount()
+                       }
+               }
+       }
+       
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/MainWindow.qml 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/MainWindow.qml
--- old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Main/MainWindow.qml    
2021-11-04 21:32:32.000000000 +0100
+++ new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Main/MainWindow.qml    
2021-11-10 00:52:03.000000000 +0100
@@ -332,6 +332,7 @@
                                                        
menu.resetSelectedEntry()
                                                }
                                                onShowHistoryRequest: {
+                                                       
timeline.model.unselectAll()
                                                        
window.setView('HistoryView')
                                                }
                                        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Styles/Main/HistoryViewStyle.qml
 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Styles/Main/HistoryViewStyle.qml
--- 
old/linphone-desktop-4.3.1/linphone-app/ui/views/App/Styles/Main/HistoryViewStyle.qml
       2021-11-04 21:32:32.000000000 +0100
+++ 
new/linphone-desktop-4.3.2/linphone-app/ui/views/App/Styles/Main/HistoryViewStyle.qml
       2021-11-10 00:52:03.000000000 +0100
@@ -80,4 +80,15 @@
                property color foregroundHoveredColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 'l_h_b_fg').color
                property color foregroundPressedColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 'l_p_b_fg').color
        }
+       property QtObject chat: QtObject {
+               property int iconSize: 40
+               property string name : 'chat'
+               property string icon : 'chat_custom'
+               property color backgroundNormalColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 's_n_b_bg').color
+               property color backgroundHoveredColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 's_h_b_bg').color
+               property color backgroundPressedColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 's_p_b_bg').color
+               property color foregroundNormalColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 's_n_b_fg').color
+               property color foregroundHoveredColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 's_h_b_fg').color
+               property color foregroundPressedColor : 
ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 's_p_b_fg').color
+       }
 }

Reply via email to