Commit graph

332 commits

Author SHA1 Message Date
sithlord48
8e83b16f5e chore: move platform/Wayland.h -> common/PlatformInfo.h 2025-11-06 09:12:18 -05:00
sithlord48
aba38b949f feat: add new setting Log::GuiDebug to control when the Gui shows debug messages no longer controled by an ENV var 2025-11-05 11:31:29 +00:00
sithlord48
67ceedcad0 refactor: Settings use static list of settings that default to true and another that default to false 2025-11-05 11:31:29 +00:00
sithlord48
e1c0803018 chore: remove unused kDebugBuild 2025-11-04 10:47:14 -05:00
sithlord48
1f950f4c2a refactor: define SYSAPI_WINDOWS and WINAPI_WINDOWS in cmake, remove the define from Common.h 2025-11-03 13:31:28 +00:00
sithlord48
14fa29505d refactor: Allow for colorful tray icon but fall back to symbolic with fallback 2025-10-30 09:40:00 +00:00
sithlord48
eee4efd59d refactor: Only use symbolic tray icon 2025-10-29 13:23:47 -04:00
sithlord48
f4ca17ba3d refactor: Remove RetryOnFailure, Client will always retry and Server will never retry 2025-10-29 08:32:58 -04:00
sithlord48
18d90aa0bf refactor: use curly initilize for list of QDirs in I18N 2025-10-28 07:18:53 -04:00
sithlord48
c3f0b18df6 feat: support translation generation 2025-10-27 17:54:32 -04:00
sithlord48
55a9596bd5 chore: use Settings::setingsFile in place of instance()->.. 2025-10-17 09:07:21 +01:00
Nick Bolton
687fd5411a refactor: Rename setSettingFile to setSettingsFile for consistency 2025-10-15 08:59:09 -04:00
Nick Bolton
bb1394ceeb feat: Change to local user ini (not native)
Windows registry is horrible to deal with and makes it impractical to pass settings to the Core when run via daemon on Windows.

- Pass settings path to Core when launched via daemon
- Introduce portable mode detection logic on Windows
- Generalize `m_settingsFile` use
- Reduce #ifdef size for Settings ctor path logic
2025-10-15 08:59:09 -04:00
Nick Bolton
0f335d46bb fix: Store server config window state in memory instead of on disk 2025-10-13 08:50:30 -04:00
sithlord48
b0fe79d527 refactor: move yscroll to coreArgs 2025-09-30 06:39:54 -04:00
sithlord48
1884ab3555 refactor: move --no-hooks to coreArgs 2025-09-30 06:39:54 -04:00
sithlord48
eeaf139bd9 refactor: move no-restart to CoreArgs
chore: Client remove unused ClientArgs member m_args
2025-09-30 06:39:54 -04:00
sithlord48
295137dbd2 refactor: CoreArgs Add display option 2025-09-30 06:39:54 -04:00
sithlord48
f3a1bbaf5b refactor: move setting of log level to CoreArgParser 2025-09-30 06:39:54 -04:00
sithlord48
6f574a3076 refactor: set const for Reverse FQDN name to use for deployment on linux 2025-09-30 06:17:23 -04:00
sithlord48
8192d7b2d8 refactor: remove Settings::Client::Binary and Settings::Server::Binary use kCoreBinName, instead 2025-09-28 10:53:16 -04:00
sithlord48
c4c2f7f37f feat: begin to use QStrings for strings
feat: get windows building with the UNICODE forced by using Qt
refactor: remove ARCHString use QString to convert to / from utf8
build: (arch) link to common
build: (base) link to arch
build: (io) Link to common
build: (client) link to common
build: (server) link to common
fix: Append to log file instead of creating a new one each log line
refactor: Trim cipher description for neater log output
fix: Update log messages to use wide string format for Unicode support
fix: Correct event creation to use wide string for Unicode compatibility
refactor: Use QStringDecoder for UTF-8 handling on Windows Daemon child process
fix: Use correct wide type for Win32 consts
2025-09-10 18:15:19 +01:00
sithlord48
9cf25c4caf feat: Allow suppression of generic client connection dialog
fixes 8907
2025-09-01 10:57:59 +01:00
sithlord48
78eb353985 refactor: Settings Allow all log levels to be shown in the Gui 2025-08-28 00:45:40 +01:00
sithlord48
3a66969dec refactor: add XdpRestoreToken to list of valid keys so its not removed if cleansettings is run 2025-08-21 07:54:21 -04:00
sithlord48
d3c0ce8895 refactor: move all exit codes to new ExitCodes
add new exitcode s_exitDuplicate for when exiting because of already running instance
2025-08-21 12:34:50 +01:00
sithlord48
3b2d7fc0b3 feat: Switch to deskflow-core instead of split binaries 2025-08-20 20:33:20 +01:00
sithlord48
7cac145500 fix: Allow Gui to work with core ,server or client binaries
fixes: #7951
2025-08-20 20:33:20 +01:00
sithlord48
b2aa638b1f feat: Support Remote Desktop token persistance 2025-08-19 15:46:14 +01:00
sithlord48
4eec183598 refactor: remove IInterface class, that only adds a virtual construcor 2025-08-18 11:45:21 +01:00
sithlord48
2c55f4fe06 refactor: windows write daemon log in ProgramData\Deskflow
remove old log file on update
2025-07-21 12:41:46 +01:00
sithlord48
a4c82869a6 fix: split version info in new header
a new file src/lib/VersionInfo.h.in now holds our version info vars
fixes #8657
2025-07-21 12:06:01 +01:00
sithlord48
1079c22736 refactor: Settings use Static methods where possible internally 2025-07-17 18:47:50 +01:00
sithlord48
9905f32738 refactor: Common.h replace anon enum with set constexpr exit codes 2025-07-11 03:06:24 -07:00
sithlord48
dddb6aadf1 refactor: Settings remove const for return by vaule 2025-06-20 09:39:26 +01:00
sithlord48
d246d9527a Feat: Define QT_NO_KEYWORDS, allowing us to use Qt in more places
must use Q_SIGNALS, Q_SLOTS and Q_EMIT in place of signals, slots and emit macros
2025-06-02 14:28:51 -07:00
sithlord48
332e6c4a4d refactor: do not write sha1 to localdb and no longer send sha1 as part of comparison 2025-05-15 15:46:16 +01:00
sithlord48
57cb7227a4 chore: Interface.h, use default for deconstructor 2025-05-02 12:12:17 +01:00
sithlord48
63d65bb47b chore: use nullptr where possible in place of NULL 2025-04-28 13:08:40 +01:00
sithlord48
41fda741b3 chore: Use override for override methods 2025-04-28 11:27:33 +01:00
sithlord48
71b6f07220 feat: remove stopOnDeskSwitch, its broken 2025-04-22 10:00:45 +01:00
sithlord48
c8408c4823 fix: Default external server config name should be *-server.conf 2025-04-14 10:05:20 +01:00
sithlord48
84ae597d69 fixes #8463 do not assume C for root 2025-04-10 11:57:05 +01:00
sithlord48
6e6892b6e7 refactor: use checkbox for elevate remove Settings::Core::ElevateMode and use Daemon::Elevate to hold the value 2025-04-07 03:09:30 -07:00
sithlord48
5ad2c9283d refactor: add a check box to enable stop on desk switch 2025-04-07 03:09:30 -07:00
sithlord48
8354a81706 refactor: Settings set default elevateMode based on settings type, for registry we use Always, ini mode uses Never 2025-04-02 12:39:54 +01:00
sithlord48
d9807a2693 refactor: Set default process Mode based on Settings type if we are INI Type we in desktop mode if Native (only on windows) we default to Service 2025-04-02 12:39:54 +01:00
sithlord48
1b8067797e refactor: settings for windows try to use registry unless portable install
new Settings::isUsingRegistry() true when using the registry
          move daemon log back to config dir
2025-04-02 12:39:54 +01:00
sithlord48
cf4fe32aab refactor: allow proxy to load from registry if no file is provided 2025-04-02 12:39:54 +01:00
sithlord48
d2bf5e63e4 refactor: allow settings to use XDG_CONFIG_DIR if defined
fixes: #8421
2025-03-31 06:12:46 -07:00
sithlord48
3ed0915b57 refactor: settings for windows use Appdata/local, always save daemon log to app install path 2025-03-31 06:12:46 -07:00
sithlord48
01878b0522 refactor: settings, prefix portableSettingsFile with app dir at runtime 2025-03-31 06:12:46 -07:00
sithlord48
af6b42fe9e newMethod Settings::validKeys to return the known Settings keys 2025-03-31 06:12:46 -07:00
sithlord48
a0051ea0bc chore: lib/common/settings remove unused signal writableChanged 2025-03-31 06:12:46 -07:00
sithlord48
40c915f6bd chore: lib/common/settings remove unused signal scopeChanged 2025-03-31 06:12:46 -07:00
sithlord48
1cee520e2b chore: lib/common/settings remove unused private isPortableSettings 2025-03-31 06:12:46 -07:00
sithlord48
eb74d8ca99 refactor: replace EnvVars.h with a new item in settings Settings::Core::UpdateUrl 2025-03-21 12:47:46 +00:00
sithlord48
65b6fe7ca3 refactor: move lib/gui/Constants.h => lib/common/UrlConstants.h 2025-03-21 12:47:46 +00:00
sithlord48
e00058a332 chore: remove unused MacOSXPrecomp.h 2025-03-21 11:42:32 +00:00
sithlord48
45b6ff19e7 chore: remove StdExcept and include stdexcept directly where needed
remove _NOEXCEPT define and just use throw()
2025-03-21 11:42:32 +00:00
sithlord48
1798d7e4e6 chore: remove StdOStream and include ostream directly where needed 2025-03-21 11:42:32 +00:00
sithlord48
854787e6b3 chore: remove StdIStream and include istream directly where needed 2025-03-21 11:42:32 +00:00
sithlord48
498ffe85c3 chore: remove StdSet and include set directly where needed 2025-03-21 11:42:32 +00:00
sithlord48
cd3f9b2e7d chore: remove StdMap and include map directly where needed 2025-03-21 11:42:32 +00:00
sithlord48
42b16efdb9 chore: remove StdList and include list directly where needed 2025-03-21 11:42:32 +00:00
sithlord48
003f87db9e chore: remove StdVector and include vector directly where needed 2025-03-21 11:42:32 +00:00
sithlord48
86dca27e4c chore: remove StdDeque and include deque directly where needed 2025-03-21 11:42:32 +00:00
sithlord48
d9798a9b2b chore: remove StdPost / StdPre 2025-03-21 11:42:32 +00:00
sithlord48
13c325eb3f chore: rename lib/common/stdvector.h => lib/common/StdVector.h 2025-03-20 13:06:45 +00:00
sithlord48
a3ad66dfb0 chore: rename lib/common/stdset.h => lib/common/StdSet.h 2025-03-20 13:06:45 +00:00
sithlord48
c9d1a50bb0 chore: rename lib/common/stdpre.h => lib/common/StdPre.h 2025-03-20 13:06:45 +00:00
sithlord48
cb3e516206 chore: rename lib/common/stdpost.h => lib/common/StdPost.h 2025-03-20 13:06:45 +00:00
sithlord48
de2e3fb9ce chore: rename lib/common/stdostream.h => lib/common/StdOStream.h 2025-03-20 13:06:45 +00:00
sithlord48
3bad718bb7 chore: rename lib/common/stdmap.h => lib/common/StdMap.h 2025-03-20 13:06:45 +00:00
sithlord48
40c10766f3 chore: rename lib/common/stdlist.h => lib/common/StdList.h 2025-03-20 13:06:45 +00:00
sithlord48
bf09df835d chore: rename lib/common/stdistream.h => lib/common/StdIStream.h 2025-03-20 13:06:45 +00:00
sithlord48
4a16804d27 chore: rename lib/common/stdexcept.h => lib/common/StdExcept.h 2025-03-20 13:06:45 +00:00
sithlord48
5e1aa9eb5d chore: rename lib/common/stddeque.h => lib/common/StdDeque.h 2025-03-20 13:06:45 +00:00
sithlord48
3c86d9dc83 chore: rename lib/common/constants.h.in => lib/common/Constants.h.in 2025-03-20 13:06:45 +00:00
sithlord48
099262d8ce chore: rename lib/common/common.h => lib/common/Common.h 2025-03-20 13:06:45 +00:00
sithlord48
d9e6ec4b70 chore: rename lib/config.h.in => lib/Config.h.in 2025-03-20 13:06:45 +00:00
sithlord48
b051c5ae60 refactor: new Setting::tlsTrustedClientssDb() method to return trusted client fingerprint db 2025-03-19 20:01:01 +00:00
sithlord48
38f00da704 refactor: new Setting::tlsTrustedServersDb() method to return trusted server fingerprint db 2025-03-19 20:01:01 +00:00
sithlord48
dcd2c62880 refactor: new Setting::tlsLocalDb() method to return local fingerprint db 2025-03-19 20:01:01 +00:00
sithlord48
b7f29d76c3 refactor: use new Setting::tlsDir() method to return current tlsdir where needed 2025-03-19 20:01:01 +00:00
sithlord48
6963c28219 fix: typo in settings checkPeerFingerprints 2025-03-17 13:01:51 -04:00
sithlord48
99ed548495 fix: typo in settings invertScrollDirection key 2025-03-17 13:01:51 -04:00
Nick Bolton
d37bda6edb fix: Use correct casing for RemoteHost value in Settings.h 2025-03-17 13:01:51 -04:00
sithlord48
613f3651ea refactor: move daemon settings to Settings
fixes #8353
2025-03-17 16:59:43 +00:00
sithlord48
0e3cee6287 feat: handle scope automaticaly
fixes #8358
2025-03-17 13:58:28 +00:00
sithlord48
5647121dd8 refacator: allow settings to expose a proxy and emit saving 2025-03-17 13:58:28 +00:00
sithlord48
5ee39c9b00 refactor: Settings allow override file of settings/Deskflow.conf 2025-03-14 14:10:19 +00:00
sithlord48
f50e4e850b refactor: QSettingsProxy use Settings paths for user and system paths 2025-03-13 13:58:25 +00:00
sithlord48
3cd3d7b1ff refactor: mv lib/gui/proxy/QSettingsProxy => lib/common 2025-03-13 13:58:25 +00:00
sithlord48
af17b14224 refactor: move serverconfigdialog visible to Settings 2025-03-13 13:58:25 +00:00
sithlord48
8606dc8618 refactor: move Coremode control to Settings
newKey core/coreMode <= General/serverGroupEnabled , Genaral/clientGroupEnabled
remove core mode items from appconfig
2025-03-13 13:58:25 +00:00
sithlord48
085a70d5a5 refactor: move elevateMode to Settings
newKey: core/elevateMode <= General/elevateMode + General/elevateModeEnum
Remove elevate mode from appConfig
2025-03-13 13:58:25 +00:00
sithlord48
5fa70d0d0a refactor: move ProcessMode to Settings
newKey core/processMode
remove processmode from app config
2025-03-13 13:58:25 +00:00
sithlord48
d01c07cab8 refactor: move screenName to Settings
newkey: core/screenName <= General/screenName
remove screenName from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
6834862413 refactor: move logFile to Settings
newKey log/file <= General/logFilename
remove logfilename from appConfig
2025-03-13 13:58:25 +00:00
sithlord48
4273fe2318 refactor: move logLevel and loglevelText to Settings
newKey: log/level <= General/logLevel2
remove logLevel from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
266a4a5edf refactor: move logToFile to Settings
newkey: log/logToFile <= General/logToFile
remove logToFile from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
5e6381c88a refactor: move port to Settigns
newkey: core/port <= General/port
remove port from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
9aa1d6b79d refactor: move networkinterface to Settings
newkey: core/interface <= General/interface
remove networkinterface from appconfig
2025-03-13 13:58:25 +00:00
sithlord48
d45d6baacb refactor: move langageSync to Settings
newkey: client/languageSync <= General/languageSync
removed languageSync from appconfig
2025-03-13 13:58:25 +00:00
sithlord48
a887ac066c refactor: move invertscrolling to Settings
newkey: client/invertscrolldirection <= General/invertScrollDirection
remove invertScrollDirection from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
b20d6361d6 refactor: move external configfile to Settings
newkey: server/externalConfigFile <= General/configFile
remove configFile from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
b833ca7a45 refactor: move appconfig useExternal config to Settings
newkey: server/externalConfig <= General/useExternalConfig
remove useExternalConfig from appConfig
2025-03-13 13:58:25 +00:00
sithlord48
dc9e104f8c refactor: move serverHostname to Settings
newKey: client/remoteHost <= General/serverHostName
remove serverHostname from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
f456aab196 refactor: move serverBinary to Settings
newkey: server/binary <= General/coreServerBinary
remove coreServer from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
de3b9d8e2e refactor: move clientBinary to Settings
newkey: client/binary <= General/coreClientBinary
remove coreBinary from AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
b7960eecb4 refactor: move preventSleep to Settings
newkey: core/preventSleep <= General/preventSleep
remove prevent sleep from app config
2025-03-13 13:58:25 +00:00
sithlord48
03f142977f refactor: move lastVersion to Settings
newkey: core/lastVersion <= General/lastVersion
Remove from app config
2025-03-13 13:58:25 +00:00
sithlord48
5360fb3c89 refactor: move requirepeerchecking to Settings
newkey: security/checkpeerfingerprints <= General/requireClientCerts
remove requireClientCerts from appconfig
2025-03-13 13:58:25 +00:00
sithlord48
737328d7b0 refactor: move TlsCertPath to Settings
newkey: security/certPath <= General/tlsCertPath
remove tlsCertPath from appConfig
2025-03-13 13:58:25 +00:00
sithlord48
bee0f84556 refactor: move tlsKeyLength to Settings
newkey: security/keySize <= General/tlsKeyLength
removed tlsKeyLength from appconfig
2025-03-13 13:58:25 +00:00
sithlord48
2721de220a refactor: move tlsEnabled to Settings
newkey: security/tlsEnabled <= General/cryptoEnabled
remove tlsEnabled from appconfig
2025-03-13 13:58:25 +00:00
sithlord48
4c6195cc5d refactor: move windowgeometry to Settings
newkey: gui/windowGeometry <= General/mainWindowSize and General/mainWindowPosition
mainWindowSize and Position remove from `AppConfig`
2025-03-13 13:58:25 +00:00
sithlord48
1e46bd2727 refactor: move CloseReminder setting to Settings
newkeyL gui/closeReminder <= General/showCloseReminder
remove closeReminder from `AppConfig`
2025-03-13 13:58:25 +00:00
sithlord48
54ecdad101 refactor: move startedBefore settings to Settings
newkey core/startedBefore <= General/startedBefore
startedBefore has been removed from `AppConfig`
2025-03-13 13:58:25 +00:00
sithlord48
51a749b109 refactor: move closeToTray setting to Settings
newkey: gui/closeToTray <= General/closeToTray
remove closeToTray from `AppConfig`
2025-03-13 13:58:25 +00:00
sithlord48
788f6c3eb2 refactor: Move update check setting to Settings
newkey: gui/enableUpdateCheck <= General/enableUpdateCheck
remove update check from `AppConfig`
2025-03-13 13:58:25 +00:00
sithlord48
e01c595071 refactor move Tray icon setting to Settings
newKey: gui/symbolicTrayIcon <= General/colorfulIcon
the colorfulIcon settings has been removed from `AppConfig`
2025-03-13 13:58:25 +00:00
sithlord48
bcd90434a2 refactor: move autohide setting to Settings
newkey: gui/autoHide <= General/autoHide
auto hide has been removed from `AppConfig`
2025-03-13 13:58:25 +00:00
sithlord48
698fd3f83c refactor: move logExpanded to Settings
newkey: gui/logExpanded <= General/logExpanded
remove logExpanded AppConfig
2025-03-13 13:58:25 +00:00
sithlord48
53487e757b feat: New Settings class 2025-03-13 13:58:25 +00:00
Nick Bolton
38f8159e9d refactor: Update global event names to use project proper name 2025-03-12 12:18:32 -04:00
Nick Bolton
3bcc1e11ed chore: Move Windows event constants to constants file 2025-03-12 12:18:32 -04:00
Nick Bolton
d26c75a784 refactor: Move Windows specific constants to #ifdef 2025-03-12 12:18:32 -04:00
Nick Bolton
5b091dee56 refactor: Rename SAS IPC event name to be more specific 2025-03-12 12:18:32 -04:00
Nick Bolton
57d1e42eca feat: Check MSVC redist version in WiX installer 2025-03-12 08:04:16 -04:00
Nick Bolton
bb38ad0766 chore: Rename TLS constants for consistency 2025-03-10 18:57:29 +00:00
sithlord48
256ba2411b refactor: move qt automoc, uic and rcc to a single place in Librarires.cmake 2025-03-07 13:16:09 +00:00
sithlord48
0a23e62093 refactor: replace version.h with kDisplayVersion const 2025-03-07 13:16:09 +00:00
sithlord48
e38a8e6b15 build: build lib/common as static library 2025-03-07 13:16:09 +00:00
sithlord48
38b2798bb7 chore: remove unused common/stdfstream 2025-03-06 19:17:53 +00:00
sithlord48
d580dfba57 chore: remove unused common/stdsstream 2025-03-06 19:17:53 +00:00
sithlord48
da4237f349 chore: rm unused common/stdbitset.h 2025-03-06 19:17:53 +00:00
sithlord48
3a4bf35e22 refactor: Remove unneeed find_packate calls for Qt Components. Qt is found by Libaraies.cmake and accesable to all items in the src folder 2025-03-06 19:17:53 +00:00
Nick Bolton
a7ce936d68 fix: Remove duplicate includes in deskflow-daemon.cpp 2025-03-05 13:59:26 -05:00
Nick Bolton
f6ccd2a25b feat: Show Git SHA in Windows daemon version number 2025-03-05 13:59:26 -05:00
Nick Bolton
b64942e3a3 fix: Delete HKEY_LOCAL_MACHINE\SOFTWARE\Deskflow when clearing settings 2025-03-03 15:05:09 -05:00
Nick Bolton
13ed447a93 chore: Move daemon constants to constants file 2025-02-28 17:58:16 +00:00
Nick Bolton
5a7f6bd1c0 refactor: Remove old Windows TCP IPC implementation (replaced by Qt equivalent) 2025-02-28 17:58:16 +00:00
Nick Bolton
e07a2efbcc refactor: Implement Windows event loop in AppUtilWindows for graceful shutdown handling 2025-02-28 17:58:16 +00:00
Nick Bolton
7c672b06d8 refactor: Update IPC server to handle log level and elevate mode changes 2025-02-28 17:58:16 +00:00
Nick Bolton
0d2d9f385d feat: Implement basic IPC connection between Daemon and GUI 2025-02-28 17:58:16 +00:00
sithlord48
e51956e2c7 feat: Client ID verification
based on barrier: 229abab
  Fixes: CVE-2021-42072, CVE-2021-42073
2025-02-17 16:26:29 +00:00
sithlord48
5288546231 refactor: use const for tlsDb expected size 2025-02-14 12:44:29 +00:00
sithlord48
d0d5182425 refactor: use new Fingerprint database
based-on: 50534ecb43
   based-on: be8ba0d132
2025-02-12 13:41:45 +00:00