Add in-app screenshot preventing (#606)

In-app screenshot preventing fixes
This commit is contained in:
isamnezia 2024-03-06 04:18:19 +03:00 committed by GitHub
parent 5b4ec608c8
commit 840c388ab9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 116 additions and 55 deletions

View file

@ -24,6 +24,7 @@
#if defined(Q_OS_IOS)
#include "platforms/ios/ios_controller.h"
#include <AmneziaVPN-Swift.h>
#endif
#if defined(Q_OS_ANDROID) || defined(Q_OS_IOS)
@ -98,6 +99,10 @@ void AmneziaApplication::init()
connect(m_settings.get(), &Settings::saveLogsChanged,
AndroidController::instance(), &AndroidController::setSaveLogs);
AndroidController::instance()->setScreenshotsEnabled(m_settings->isScreenshotsEnabled());
connect(m_settings.get(), &Settings::screenshotsEnabledChanged,
AndroidController::instance(), &AndroidController::setScreenshotsEnabled);
connect(m_settings.get(), &Settings::serverRemoved,
AndroidController::instance(), &AndroidController::resetLastServer);
@ -134,6 +139,11 @@ void AmneziaApplication::init()
m_pageController->goToPageSettingsBackup();
m_settingsController->importBackupFromOutside(filePath);
});
AmneziaVPN::toggleScreenshots(m_settings->isScreenshotsEnabled());
connect(m_settings.get(), &Settings::screenshotsEnabledChanged, [](bool enabled) {
AmneziaVPN::toggleScreenshots(enabled);
});
#endif
m_notificationHandler.reset(NotificationHandler::create(nullptr));