From 2069e990af6fce89c3570b8606d4b61de82c34af Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Mon, 20 Mar 2017 10:12:10 +0100 Subject: [PATCH] feat(ui/views/App/Main/MainWindow): add a hidden button to refresh registers --- .../src/components/core/CoreManager.cpp | 10 +++++++++ .../src/components/core/CoreManager.hpp | 2 ++ .../ui/views/App/Main/MainWindow.qml | 22 +++++++++++++++++++ 3 files changed, 34 insertions(+) diff --git a/linphone-desktop/src/components/core/CoreManager.cpp b/linphone-desktop/src/components/core/CoreManager.cpp index 3ba412ec3..b4aac924c 100644 --- a/linphone-desktop/src/components/core/CoreManager.cpp +++ b/linphone-desktop/src/components/core/CoreManager.cpp @@ -26,6 +26,7 @@ #include "CoreManager.hpp" #include +#include #include #include @@ -77,10 +78,19 @@ void CoreManager::init (QObject *parent, const QString &config_path) { ); } +// ----------------------------------------------------------------------------- + VcardModel *CoreManager::createDetachedVcardModel () { return new VcardModel(linphone::Factory::get()->createVcard()); } +void CoreManager::forceRefreshRegisters () { + qInfo() << QStringLiteral("Refresh registers."); + m_instance->m_core->refreshRegisters(); +} + +// ----------------------------------------------------------------------------- + void CoreManager::setDatabasesPaths () { m_core->setFriendsDatabasePath(Paths::getFriendsListFilepath()); m_core->setCallLogsDatabasePath(Paths::getCallHistoryFilepath()); diff --git a/linphone-desktop/src/components/core/CoreManager.hpp b/linphone-desktop/src/components/core/CoreManager.hpp index 05a76f4e1..b2b1bb08e 100644 --- a/linphone-desktop/src/components/core/CoreManager.hpp +++ b/linphone-desktop/src/components/core/CoreManager.hpp @@ -100,6 +100,8 @@ public: // Warning: The ownership of `VcardModel` is `QQmlEngine::JavaScriptOwnership` by default. Q_INVOKABLE VcardModel *createDetachedVcardModel (); + Q_INVOKABLE void forceRefreshRegisters (); + private: CoreManager (QObject *parent, const QString &config_path); diff --git a/linphone-desktop/ui/views/App/Main/MainWindow.qml b/linphone-desktop/ui/views/App/Main/MainWindow.qml index 7f617e2e1..d4b7076e7 100644 --- a/linphone-desktop/ui/views/App/Main/MainWindow.qml +++ b/linphone-desktop/ui/views/App/Main/MainWindow.qml @@ -272,4 +272,26 @@ Controls1.ApplicationWindow { } } } + + // --------------------------------------------------------------------------- + // Hiden button to force registration. + // --------------------------------------------------------------------------- + + Button { + anchors { + top: parent.top + left: parent.left + } + + background: Rectangle { + color: 'transparent' // Not a style. + } + + flat: true + + height: accountStatus.height + width: MainWindowStyle.toolBar.leftMargin + + onClicked: CoreManager.forceRefreshRegisters() + } }