From 266a4a5edff8eaa65495af0df846b7fb271be49f Mon Sep 17 00:00:00 2001 From: sithlord48 Date: Sat, 8 Mar 2025 19:34:50 -0500 Subject: [PATCH] refactor: move logToFile to Settings newkey: log/logToFile <= General/logToFile remove logToFile from AppConfig --- src/apps/deskflow-gui/dialogs/SettingsDialog.cpp | 4 ++-- src/lib/common/Settings.cpp | 12 +++++++----- src/lib/common/Settings.h | 5 +++++ src/lib/gui/config/AppConfig.cpp | 14 +------------- src/lib/gui/config/AppConfig.h | 5 +---- src/lib/gui/config/IAppConfig.h | 2 -- src/lib/gui/core/CoreProcess.cpp | 7 +++---- src/test/shared/gui/mocks/AppConfigMock.h | 2 -- 8 files changed, 19 insertions(+), 32 deletions(-) diff --git a/src/apps/deskflow-gui/dialogs/SettingsDialog.cpp b/src/apps/deskflow-gui/dialogs/SettingsDialog.cpp index 39eaec1a3..b6815473d 100644 --- a/src/apps/deskflow-gui/dialogs/SettingsDialog.cpp +++ b/src/apps/deskflow-gui/dialogs/SettingsDialog.cpp @@ -146,7 +146,7 @@ void SettingsDialog::accept() Settings::setValue(Settings::Core::Port, ui->sbPort->value()); Settings::setValue(Settings::Core::Interface, ui->lineInterface->text()); m_appConfig.setLogLevel(ui->comboLogLevel->currentIndex()); - m_appConfig.setLogToFile(ui->cbLogToFile->isChecked()); + Settings::setValue(Settings::Log::ToFile, ui->cbLogToFile->isChecked()); m_appConfig.setLogFilename(ui->lineLogFilename->text()); m_appConfig.setElevateMode(static_cast(ui->comboElevate->currentIndex())); Settings::setValue(Settings::Gui::Autohide, ui->cbAutoHide->isChecked()); @@ -181,7 +181,7 @@ void SettingsDialog::loadFromConfig() ui->sbPort->setValue(Settings::value(Settings::Core::Port).toInt()); ui->lineInterface->setText(Settings::value(Settings::Core::Interface).toString()); ui->comboLogLevel->setCurrentIndex(m_appConfig.logLevel()); - ui->cbLogToFile->setChecked(m_appConfig.logToFile()); + ui->cbLogToFile->setChecked(Settings::value(Settings::Log::ToFile).toBool()); ui->lineLogFilename->setText(m_appConfig.logFilename()); ui->cbAutoHide->setChecked(Settings::value(Settings::Gui::Autohide).toBool()); ui->cbPreventSleep->setChecked(Settings::value(Settings::Core::PreventSleep).toBool()); diff --git a/src/lib/common/Settings.cpp b/src/lib/common/Settings.cpp index fb64c9c8d..b07166bc5 100644 --- a/src/lib/common/Settings.cpp +++ b/src/lib/common/Settings.cpp @@ -47,6 +47,7 @@ bool Settings::isPortableSettings() void Settings::initSettings() { + if (m_settings) m_settings->deleteLater(); @@ -70,14 +71,15 @@ void Settings::cleanSettings() QVariant Settings::defaultValue(const QString &key) { - if ((key == Core::Scope) || (key == Gui::Autohide) || (key == Core::StartedBefore) || - (key == Core::PreventSleep) || (key == Server::ExternalConfig) || (key == Client::InvertScrollDirection)) { + if ((key == Core::Scope) || (key == Settings::Gui::Autohide) || (key == Core::StartedBefore) || + (key == Core::PreventSleep) || (key == Server::ExternalConfig) || (key == Client::InvertScrollDirection) || + (key == Log::ToFile)) { return false; } - if ((key == Gui::CloseToTray) || (key == Gui::LogExpanded) || (key == Gui::SymbolicTrayIcon) - || (key == Gui::CloseReminder) || (key == Security::TlsEnabled) || (key == Security::CheckPeers) - || (key == Client::LanguageSync)) { + if ((key == Gui::CloseToTray) || (key == Gui::LogExpanded) || (key == Gui::SymbolicTrayIcon) || + (key == Gui::CloseReminder) || (key == Security::TlsEnabled) || (key == Security::CheckPeers) || + (key == Client::LanguageSync)) { return true; } diff --git a/src/lib/common/Settings.h b/src/lib/common/Settings.h index c3d5b1f4f..24a02a48f 100644 --- a/src/lib/common/Settings.h +++ b/src/lib/common/Settings.h @@ -55,6 +55,10 @@ public: inline static const auto SymbolicTrayIcon = QStringLiteral("gui/symbolicTrayIcon"); inline static const auto WindowGeometry = QStringLiteral("gui/windowGeometry"); }; + struct Log + { + inline static const auto ToFile = QStringLiteral("log/toFile"); + }; struct Security { inline static const auto CheckPeers = QStringLiteral("security/checkpeerfingerprints"); @@ -109,6 +113,7 @@ private: , Core::PreventSleep , Core::Scope , Core::StartedBefore + , Log::ToFile , Gui::Autohide , Gui::AutoUpdateCheck , Gui::CloseReminder diff --git a/src/lib/gui/config/AppConfig.cpp b/src/lib/gui/config/AppConfig.cpp index 36634feb9..3b02580aa 100644 --- a/src/lib/gui/config/AppConfig.cpp +++ b/src/lib/gui/config/AppConfig.cpp @@ -37,7 +37,7 @@ const char *const AppConfig::m_SettingsName[] = { "", // port moved to deskflow settings "", // interface moved to deskflow settings "logLevel2", - "logToFile", + "", // Log to file Moved to Deskflow settings "logFilename", "", // 6 wizardLastRun, obsolete "", // 7 statedBefore moved to deskflow settings @@ -115,7 +115,6 @@ void AppConfig::recallFromCurrentScope() recallElevateMode(); m_LogLevel = getFromCurrentScope(kLogLevel, m_LogLevel).toInt(); - m_LogToFile = getFromCurrentScope(kLogToFile, m_LogToFile).toBool(); m_LogFilename = getFromCurrentScope(kLogFilename, m_LogFilename).toString(); m_ServerGroupChecked = getFromCurrentScope(kServerGroupChecked, m_ServerGroupChecked).toBool(); m_UseInternalConfig = getFromCurrentScope(kUseInternalConfig, m_UseInternalConfig).toBool(); @@ -153,7 +152,6 @@ void AppConfig::commit() if (isActiveScopeWritable()) { setInCurrentScope(kScreenName, m_ScreenName); setInCurrentScope(kLogLevel, m_LogLevel); - setInCurrentScope(kLogToFile, m_LogToFile); setInCurrentScope(kLogFilename, m_LogFilename); setInCurrentScope(kElevateMode, static_cast(m_ElevateMode)); setInCurrentScope(kElevateModeLegacy, m_ElevateMode == ElevateMode::kAlways); @@ -362,11 +360,6 @@ int AppConfig::logLevel() const return m_LogLevel; } -bool AppConfig::logToFile() const -{ - return m_LogToFile; -} - const QString &AppConfig::logFilename() const { return m_LogFilename; @@ -444,11 +437,6 @@ void AppConfig::setLogLevel(int i) Q_EMIT logLevelChanged(); } -void AppConfig::setLogToFile(bool b) -{ - m_LogToFile = b; -} - void AppConfig::setLogFilename(const QString &s) { m_LogFilename = s; diff --git a/src/lib/gui/config/AppConfig.h b/src/lib/gui/config/AppConfig.h index 77609bbfb..a70f1a39b 100644 --- a/src/lib/gui/config/AppConfig.h +++ b/src/lib/gui/config/AppConfig.h @@ -58,7 +58,7 @@ private: // kPort = 1, moved to deskflow settings // kInterface = 2, moved to deskflow settings kLogLevel = 3, - kLogToFile = 4, + // 4 = LogToFile moved to deskflow settings kLogFilename = 5, // 6 = show first run wizard, obsolete // 7 Started before moved to deskflow settings @@ -132,7 +132,6 @@ public: ElevateMode elevateMode() const override; QString logLevelText() const override; const QString &screenName() const override; - bool logToFile() const override; const QString &logFilename() const override; void persistLogDir() const override; bool isActiveScopeWritable() const override; @@ -155,7 +154,6 @@ public: void setScreenName(const QString &s) override; void setLogLevel(int i) override; - void setLogToFile(bool b) override; void setLogFilename(const QString &s) override; void setElevateMode(ElevateMode em) override; void setEnableService(bool enabled) override; @@ -226,7 +224,6 @@ private: static const char *const m_SettingsName[]; int m_LogLevel = 0; - bool m_LogToFile = false; QString m_LogFilename = logDir() + deskflow::gui::kDefaultLogFile; ElevateMode m_ElevateMode = deskflow::gui::kDefaultElevateMode; bool m_ServerGroupChecked = false; diff --git a/src/lib/gui/config/IAppConfig.h b/src/lib/gui/config/IAppConfig.h index da908ae50..8402039a9 100644 --- a/src/lib/gui/config/IAppConfig.h +++ b/src/lib/gui/config/IAppConfig.h @@ -36,7 +36,6 @@ public: virtual ElevateMode elevateMode() const = 0; virtual QString logLevelText() const = 0; virtual const QString &screenName() const = 0; - virtual bool logToFile() const = 0; virtual const QString &logFilename() const = 0; virtual void persistLogDir() const = 0; virtual int logLevel() const = 0; @@ -52,7 +51,6 @@ public: virtual void setLoadFromSystemScope(bool loadFromSystemScope) = 0; virtual void setScreenName(const QString &screenName) = 0; virtual void setLogLevel(int logLevel) = 0; - virtual void setLogToFile(bool logToFile) = 0; virtual void setLogFilename(const QString &logFilename) = 0; virtual void setElevateMode(ElevateMode elevateMode) = 0; virtual void setEnableService(bool enableService) = 0; diff --git a/src/lib/gui/core/CoreProcess.cpp b/src/lib/gui/core/CoreProcess.cpp index ff66fe2c4..0e1bf9a92 100644 --- a/src/lib/gui/core/CoreProcess.cpp +++ b/src/lib/gui/core/CoreProcess.cpp @@ -390,7 +390,7 @@ void CoreProcess::start(std::optional processModeOption) qDebug("log level: %s", qPrintable(m_appConfig.logLevelText())); - if (m_appConfig.logToFile()) + if (Settings::value(Settings::Log::ToFile).toBool()) qInfo("log file: %s", qPrintable(m_appConfig.logFilename())); if (processMode == ProcessMode::kDesktop) { @@ -528,9 +528,8 @@ bool CoreProcess::addServerArgs(QStringList &args, QString &app) return false; } - if (m_appConfig.logToFile()) { + if (Settings::value(Settings::Log::ToFile).toBool()) { m_appConfig.persistLogDir(); - args << "--log" << m_appConfig.logFilename(); } @@ -576,7 +575,7 @@ bool CoreProcess::addClientArgs(QStringList &args, QString &app) return false; } - if (m_appConfig.logToFile()) { + if (Settings::value(Settings::Log::ToFile).toBool()) { m_appConfig.persistLogDir(); args << "--log" << m_appConfig.logFilename(); } diff --git a/src/test/shared/gui/mocks/AppConfigMock.h b/src/test/shared/gui/mocks/AppConfigMock.h index 774932bc1..15cebf6e8 100644 --- a/src/test/shared/gui/mocks/AppConfigMock.h +++ b/src/test/shared/gui/mocks/AppConfigMock.h @@ -35,7 +35,6 @@ public: MOCK_METHOD(ElevateMode, elevateMode, (), (const, override)); MOCK_METHOD(QString, logLevelText, (), (const, override)); MOCK_METHOD(const QString &, screenName, (), (const, override)); - MOCK_METHOD(bool, logToFile, (), (const, override)); MOCK_METHOD(const QString &, logFilename, (), (const, override)); MOCK_METHOD(void, persistLogDir, (), (const, override)); MOCK_METHOD(int, logLevel, (), (const, override)); @@ -51,7 +50,6 @@ public: MOCK_METHOD(void, setLoadFromSystemScope, (bool loadFromSystemScope), (override)); MOCK_METHOD(void, setScreenName, (const QString &screenName), (override)); MOCK_METHOD(void, setLogLevel, (int logLevel), (override)); - MOCK_METHOD(void, setLogToFile, (bool logToFile), (override)); MOCK_METHOD(void, setLogFilename, (const QString &logFilename), (override)); MOCK_METHOD(void, setElevateMode, (ElevateMode elevateMode), (override)); MOCK_METHOD(void, setEnableService, (bool enableService), (override));