From e574569119fc981fac74f5120c38639d344375c7 Mon Sep 17 00:00:00 2001 From: Felix Weilbach Date: Wed, 3 Nov 2021 13:53:45 +0100 Subject: [PATCH] Don't do a connection checks when using push notifications When using push notifications, it is not necessary to do regular connection checks because the push notifications will take care of it. Signed-off-by: Felix Weilbach --- src/gui/application.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/gui/application.cpp b/src/gui/application.cpp index 9a7cd6a225fd4..f153224b21fb1 100644 --- a/src/gui/application.cpp +++ b/src/gui/application.cpp @@ -34,6 +34,7 @@ #include "sharedialog.h" #include "accountmanager.h" #include "creds/abstractcredentials.h" +#include "pushnotifications.h" #if defined(BUILD_UPDATER) #include "updater/ocupdater.h" @@ -459,9 +460,10 @@ void Application::slotCheckConnection() // Don't check if we're manually signed out or // when the error is permanent. - if (state != AccountState::SignedOut - && state != AccountState::ConfigurationError - && state != AccountState::AskingCredentials) { + const auto pushNotifications = accountState->account()->pushNotifications(); + const auto pushNotificationsAvailable = (pushNotifications && pushNotifications->isReady()); + if (state != AccountState::SignedOut && state != AccountState::ConfigurationError + && state != AccountState::AskingCredentials && !pushNotificationsAvailable) { accountState->checkConnectivity(); } }