This commit is contained in:
Nethius 2025-06-25 15:25:54 +03:00 committed by GitHub
commit 527b956fcd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 748 additions and 34 deletions

View file

@ -151,6 +151,9 @@ void CoreController::initControllers()
m_apiPremV1MigrationController.reset(new ApiPremV1MigrationController(m_serversModel, m_settings, this));
m_engine->rootContext()->setContextProperty("ApiPremV1MigrationController", m_apiPremV1MigrationController.get());
m_updateController.reset(new UpdateController(m_settings));
m_engine->rootContext()->setContextProperty("UpdateController", m_updateController.get());
}
void CoreController::initAndroidController()
@ -226,6 +229,7 @@ void CoreController::initSignalHandlers()
initImportPremiumV2VpnKeyHandler();
initShowMigrationDrawerHandler();
initStrictKillSwitchHandler();
initUpdateFoundHandler();
}
void CoreController::initNotificationHandler()
@ -393,6 +397,16 @@ void CoreController::initStrictKillSwitchHandler()
&VpnConnection::onKillSwitchModeChanged);
}
void CoreController::initUpdateFoundHandler()
{
#if !defined(Q_OS_ANDROID) && !defined(Q_OS_IOS)
connect(m_updateController.get(), &UpdateController::updateFound, this,
[this]() { QTimer::singleShot(1000, this, [this]() { m_pageController->showChangelogDrawer(); }); });
m_updateController->checkForUpdates();
#endif
}
QSharedPointer<PageController> CoreController::pageController() const
{
return m_pageController;

View file

@ -19,6 +19,7 @@
#include "ui/controllers/settingsController.h"
#include "ui/controllers/sitesController.h"
#include "ui/controllers/systemController.h"
#include "ui/controllers/updateController.h"
#include "ui/models/allowed_dns_model.h"
#include "ui/models/containers_model.h"
@ -86,6 +87,7 @@ private:
void initImportPremiumV2VpnKeyHandler();
void initShowMigrationDrawerHandler();
void initStrictKillSwitchHandler();
void initUpdateFoundHandler();
QQmlApplicationEngine *m_engine {}; // TODO use parent child system here?
std::shared_ptr<Settings> m_settings;
@ -109,6 +111,7 @@ private:
QScopedPointer<SystemController> m_systemController;
QScopedPointer<AppSplitTunnelingController> m_appSplitTunnelingController;
QScopedPointer<AllowedDnsController> m_allowedDnsController;
QScopedPointer<UpdateController> m_updateController;
QScopedPointer<ApiSettingsController> m_apiSettingsController;
QScopedPointer<ApiConfigsController> m_apiConfigsController;