From 21965cc9a2129addccbbd5bbb440dc7e277a52a4 Mon Sep 17 00:00:00 2001 From: Julien Wadel Date: Thu, 23 Feb 2023 10:23:14 +0100 Subject: [PATCH] Unset URL handlers on exit( as specified by Qt). Fix uppercase avatar initials. --- linphone-app/src/app/App.hpp | 4 ++-- linphone-app/src/components/url-handlers/UrlHandlers.cpp | 5 +++++ linphone-app/src/components/url-handlers/UrlHandlers.hpp | 3 ++- linphone-app/src/utils/Utils.cpp | 3 ++- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/linphone-app/src/app/App.hpp b/linphone-app/src/app/App.hpp index b1cf7532f..00b1e564a 100644 --- a/linphone-app/src/app/App.hpp +++ b/linphone-app/src/app/App.hpp @@ -84,6 +84,8 @@ public: return mImageListModel; } + QLocale getLocale () const; + //static ColorListModel *getColorListModel () const { //return App::getInstance()-getColorListModel(); //} @@ -142,8 +144,6 @@ private: QString getConfigLocale () const; void setConfigLocale (const QString &locale); - QLocale getLocale () const; - QVariantList getAvailableLocales () const { return mAvailableLocales; } diff --git a/linphone-app/src/components/url-handlers/UrlHandlers.cpp b/linphone-app/src/components/url-handlers/UrlHandlers.cpp index ee41fbbc9..927642a1a 100644 --- a/linphone-app/src/components/url-handlers/UrlHandlers.cpp +++ b/linphone-app/src/components/url-handlers/UrlHandlers.cpp @@ -31,6 +31,11 @@ UrlHandlers::UrlHandlers (QObject *parent) : QObject(parent) { QDesktopServices::setUrlHandler("sips", this, "handleSip"); } +UrlHandlers::~UrlHandlers(){ + QDesktopServices::unsetUrlHandler("sips"); + QDesktopServices::unsetUrlHandler("sip"); +} + void UrlHandlers::handleSip (const QUrl &url) { emit sip(SipAddressesModel::interpretSipAddress(url)); } diff --git a/linphone-app/src/components/url-handlers/UrlHandlers.hpp b/linphone-app/src/components/url-handlers/UrlHandlers.hpp index abfc9c338..68645a67f 100644 --- a/linphone-app/src/components/url-handlers/UrlHandlers.hpp +++ b/linphone-app/src/components/url-handlers/UrlHandlers.hpp @@ -26,10 +26,11 @@ // ============================================================================= class UrlHandlers : public QObject { - Q_OBJECT; + Q_OBJECT public: UrlHandlers (QObject *parent = Q_NULLPTR); + ~UrlHandlers(); public slots: void handleSip (const QUrl &url); diff --git a/linphone-app/src/utils/Utils.cpp b/linphone-app/src/utils/Utils.cpp index 656e454a9..cf74df505 100644 --- a/linphone-app/src/utils/Utils.cpp +++ b/linphone-app/src/utils/Utils.cpp @@ -32,6 +32,7 @@ #include "config.h" #include "Utils.hpp" #include "UriTools.hpp" +#include "app/App.hpp" #include "components/core/CoreManager.hpp" #include "components/contacts/ContactsListModel.hpp" #include "components/contact/ContactModel.hpp" @@ -138,7 +139,7 @@ QString Utils::getInitials(const QString& username){ initials << QString::fromStdU32String(char32); } } - return initials.join(""); + return App::getInstance()->getLocale().toUpper(initials.join("")); } QString Utils::toString(const LinphoneEnums::TunnelMode& mode){