Conversation: avoid network calls on first click

Change-Id: Ib6866069f49f1a401a143bd3f2905df46bb5220a
This commit is contained in:
Ilyas Erdogan
2025-11-26 13:23:41 -05:00
committed by Adrien Béraud
parent bf8d3416de
commit 58eb557e68
5 changed files with 13 additions and 3 deletions

View File

@@ -20,6 +20,8 @@
#include "global.h"
#include "connectivitymonitor.h"
#include <api/pluginmodel.h>
#include <QBuffer>
#include <QMutex>
#include <QObject>
@@ -73,6 +75,13 @@ LRCInstance::LRCInstance(const QString& updateUrl,
connect(&accountModel(), &AccountModel::accountRemoved, this, &LRCInstance::onAccountRemoved, Qt::DirectConnection);
connect(&pluginModel(), &lrc::api::PluginModel::modelUpdated, this, [this] {
set_callMediaHandlersListCount(pluginModel().getCallMediaHandlers().size());
set_chatHandlersListCount(pluginModel().getChatHandlers().size());
});
set_callMediaHandlersListCount(pluginModel().getCallMediaHandlers().size());
set_chatHandlersListCount(pluginModel().getChatHandlers().size());
// set the current account if any
auto accountList = accountModel().getAccountList();
if (accountList.size()) {

View File

@@ -53,6 +53,8 @@ class LRCInstance : public QObject
QML_PROPERTY(QString, currentAccountId)
QML_RO_PROPERTY(lrc::api::profile::Type, currentAccountType)
QML_PROPERTY(bool, currentAccountAvatarSet)
QML_RO_PROPERTY(int, callMediaHandlersListCount)
QML_RO_PROPERTY(int, chatHandlersListCount)
public:
explicit LRCInstance(const QString& updateUrl,

View File

@@ -455,7 +455,7 @@ Control {
icon.source: JamiResources.plugins_24dp_svg
icon.color: "white"
text: JamiStrings.viewExtension
enabled: PluginAdapter.callMediaHandlersListCount
enabled: LRCInstance.callMediaHandlersListCount
onEnabledChanged: CallOverlayModel.setEnabled(this, pluginsAction.enabled)
},
Action {

View File

@@ -208,7 +208,7 @@ Rectangle {
QWKSetParentHitTestVisible {
}
visible: PluginAdapter.chatHandlersListCount && interactionButtonsVisibility
visible: LRCInstance.chatHandlersListCount && interactionButtonsVisibility
source: JamiResources.plugins_24dp_svg
toolTipText: JamiStrings.showExtensions

View File

@@ -74,7 +74,6 @@ PluginAdapter::PluginAdapter(LRCInstance* instance, AppSettingsManager* settings
&PluginVersionManager::newVersionAvailable,
pluginListModel_,
&PluginListModel::onNewVersionAvailable);
getPluginsFromStore();
}
void