Povilas Kanapickas
3598eb6a47
refactor: RM IEventQueueBuffer::newTimer and IEventQueueBuffer::deleteTimer
...
port: https://github.com/input-leap/input-leap/pull/1592
Original Message:
base: Remove IEventQueueBuffor newTimer and deleteTimer APIs
In the current implementation timers are not platform-specific. On all
currently supported platforms timer constrution and destruction is
simple new and delete, so it does not make sense having this
customization point.
Original Author: p12tic
Ported By: sithlord48
2026-01-02 12:27:24 +00:00
sithlord48
61fcad2c14
refactor: MainWindow::updateIpLabel, remove single use vars
2026-01-02 11:43:34 +00:00
sithlord48
a84e91a3f2
refactor: Mainwindow::updateIpLabel return early if we are using fixedIp from settings
2026-01-02 11:43:34 +00:00
sithlord48
c2314ad893
refactor: MainWindow, remove m_currentIPValid by reducing its scope to the method where its used
2026-01-02 11:43:34 +00:00
sithlord48
1973005e98
refactor: MainWindow, simplify ip update if core is not running
2026-01-02 11:43:34 +00:00
sithlord48
00235ba189
refactor: NetworkMonitor, use ranged sort for ip ranges
2026-01-02 11:43:34 +00:00
sithlord48
495277c7c9
refactor: NetworkMonitor, use isLocalLink to check for 169.254/16 range
2026-01-02 11:43:34 +00:00
sithlord48
a73057f3a7
refactor: NetworkMonitor, short phyical using isPrivateUse()
...
this an Ip is considered private when its in a RFC1918 range
10/8, 172.16/12 and 192.168/16 are private IPs
2026-01-02 11:43:34 +00:00
sithlord48
a0f06d907f
refactor: NetworkMonitor, set m_isMonitoring initial state in header
2026-01-02 11:43:34 +00:00
Nick Bolton
3d8cf17d57
chore: gui Remove custom tab stops from settings dialog and use default
2025-12-30 18:31:05 +00:00
Nick Bolton
ca418b3ba5
chore: gui, Improve log message for disabled update check
2025-12-30 18:31:05 +00:00
Nick Bolton
189053697b
refactor: Log server response on version check error
...
Qt `errorString()` only contains the error code and error text, but not the response body. And, in HTTP/2 the error string is gone but the error is still printed like it's there: https://bugreports.qt.io/browse/QTBUG-140126
2025-12-30 18:31:05 +00:00
Nick Bolton
e674d8b27c
refactor: Rename setting Settings::Core::UpdateUrl => Settings::Gui::UpdateCheckUrl
2025-12-30 18:31:05 +00:00
sithlord48
7682e17afe
refactor: Move src/lib/Config => src/lib/platform/XWindowsConfig
...
This file is used only in XWindows related platform code.
2025-12-30 17:22:00 +00:00
sithlord48
163ec18730
refactor: VersionInfo is now part of common
2025-12-30 17:22:00 +00:00
sithlord48
d27fd22d8f
refactor: SettingsDialog adjust network section so IP is on left and port is on right
2025-12-30 17:03:47 +00:00
re2zero
cbebaad3b8
feat: add network monitoring and IP address management
...
- introduce NetworkMonitor class to track network addresses change
- replace QLineEdit with QComboBox for interface selection in settings
- implement automatic IP detection and suggestion logic
- add signal-slot connections for real-time network updates
Log: add network monitoring and IP address management.
2025-12-30 17:03:47 +00:00
sithlord48
f8d9de1f2e
build: platform, remove unneeeded include_dir for mac os system path
2025-12-30 13:41:33 +00:00
sithlord48
53d2c5e399
build: platform, remove link_wayland_libs macro and do it in its only used place allowing more simplification of the linking platform lib
2025-12-30 13:41:33 +00:00
sithlord48
89ee932db3
build: adjust spacing for cmake files
2025-12-30 13:41:33 +00:00
sithlord48
fb63b70e8d
build: lib/common/CMakeLists.txt, remove unneeded unset calls
2025-12-30 13:41:33 +00:00
Christian Schmidt
2dd0360dec
fix: Restore clipboard sharing after 53441821e0
...
We wanted the value contained in the string as size_t, not the size (length) of
the string. size_t is (normally) an alias for unsigned long, so toUlong() should
do the trick.
2025-12-30 13:16:36 +00:00
sithlord48
9976caafab
refactor: LineEditValidator only call errorMessage::isEmpty once
2025-12-30 12:58:11 +00:00
sithlord48
530bcad8a6
chore: remove unused gui/Styles
2025-12-30 12:58:11 +00:00
sithlord48
949913cd6e
refactor: use crimson for the error color
2025-12-30 12:58:11 +00:00
sithlord48
1855d33e1f
refactor: ValidationError, use palette to set the colors used
2025-12-30 12:58:11 +00:00
sithlord48
ccd40c2927
refactor: validatorError::setMessage return early
2025-12-30 12:58:11 +00:00
sithlord48
6851046c5a
refactor: validatorError, make clear a private method
2025-12-30 12:58:11 +00:00
sithlord48
1a9316150d
refactor: ValidatorError, m_pLabel -> m_label
2025-12-30 12:58:11 +00:00
sithlord48
b56dd3f387
chore: ValidatorError, create explicit private section
2025-12-30 12:58:11 +00:00
sithlord48
2cbe2c65e8
refactor: screenSettingsDialog, do not set the initial style for name alias lineedits
2025-12-30 12:58:11 +00:00
sithlord48
b8b7799a47
refactor: LineEditValidator, adjust border style based on the Qt Style in use
2025-12-30 12:58:11 +00:00
sithlord48
2b8e7fa6b2
refactor: screensetting dialog, adjust spacers for dead corners
2025-12-30 12:58:11 +00:00
sithlord48
fdb5405e2c
refactor: use system color for hyperlinks
2025-12-24 11:23:13 +00:00
sithlord48
0c440843b0
chore: replace deskflow::gui::style::kColorWhite with the svg color white
2025-12-24 11:23:13 +00:00
sithlord48
caf77fe342
chore: remove unused deskflow::gui::style::kLightGreyColor
2025-12-24 11:23:13 +00:00
enzious
b432cbc145
fix: error on start shows gui
...
do not show client errors if the windows is not visible
2025-12-23 13:28:02 +00:00
sithlord48
ce97817d45
refactor: constants, move kTlsFingerprintTrustedClientsFilename => Settings::defaultValue where used
2025-12-22 14:41:04 +00:00
sithlord48
2b4b6a8470
refactor: constants, move kTlsFingerprintTrustedServersFilename => Settings::defaultValue where used
2025-12-22 14:41:04 +00:00
sithlord48
5c34d0edc5
refactor: constants, move kTlsCertificateFileanme to => Settings::defaultValue where used
2025-12-22 14:41:04 +00:00
sithlord48
049f8d718a
refactor: constants, move kTlsDir to => Settings::tlsDir where used
2025-12-22 14:41:04 +00:00
sithlord48
c693d258fd
refactor: constants, move kDefaultLogFile to => Settings::defaultValue where used
2025-12-22 14:41:04 +00:00
sithlord48
b23e9f9b04
refactor: constants, move kDaemonLogFile => Settings::defaultValue where used
2025-12-22 14:41:04 +00:00
sithlord48
a5bb310e94
chore: constants remove unused kWindowsRegistryKey
2025-12-22 14:41:04 +00:00
sithlord48
7f3d661e31
refactor: net, lookup hostname using any valid Ip4 or Ip6 address
...
fixes : #9110
2025-12-22 14:24:02 +00:00
sithlord48
2a54f57532
chore: add Q_OBJECT macro to Validators with translations
2025-12-18 13:10:09 +00:00
sithlord48
f0e77c499b
chore: settings, remove unneeded {}
2025-12-18 13:10:09 +00:00
sithlord48
fa78b957b5
refactor: settings, use state not settings in the log when changing the state file
2025-12-18 13:10:09 +00:00
sithlord48
60d5bb8378
chore (settings): fix typo peroid -> period
2025-12-18 13:10:09 +00:00
sithlord48
d8e2537d47
refactor: Settings::logLevelToInt simplify the method and add tests to cover it
2025-12-18 13:10:09 +00:00
sithlord48
5e347d8725
fix: Mac os log file not working
...
fixes : #9274
The log file path is not able to be empty since Settings::value will return the default path if it is, Do not send a c_str to create our FileLogger it wants a QString
2025-12-15 14:41:01 +00:00
sithlord48
dfe6c82a5c
refactor: I18N make sure m_currentLang is set to the 639 name on initial load
2025-12-15 14:22:40 +00:00
sithlord48
97b11bf2da
refactor: I18n, add static s_prefix -> "_" to use when loading
2025-12-15 14:22:40 +00:00
sithlord48
023c9509e0
refactor: correct typo I18N::langaugesChanged => I18N::languagesChanged
2025-12-09 13:54:05 +00:00
sithlord48
13750f4175
chore: remove unused io/Filesystem
2025-12-08 11:24:36 +00:00
sithlord48
27579e4fae
refactor: Move file open logic to SecureUtil where its used
2025-12-08 11:24:36 +00:00
sithlord48
cb4621cad7
chore: SecureUtils::generatePemSelfSignedCert take QString for path
2025-12-08 11:24:36 +00:00
sithlord48
2d682d9151
chore: io/FileSystem remove unused methods
2025-12-08 11:24:36 +00:00
sithlord48
b151666f6b
refactor: I18N use short (ISO639) names to save and load not native strings, the documentation says we use these already
2025-12-04 08:27:59 -05:00
sithlord48
d1e2865319
fix: macOS not showing Colorful icon
...
fixes : #9255
2025-12-04 11:09:59 +00:00
sithlord48
70c54d6cf7
chore: remove unused Unicode::UTF8ToUCS4
2025-12-04 10:36:48 +00:00
sithlord48
62a73996b9
chore: remove unused Unicode::UTF8ToUTF32
2025-12-04 10:36:48 +00:00
sithlord48
75a1ab9719
chore: remove unused Unicode::UCS4ToUTF8
2025-12-04 10:36:48 +00:00
sithlord48
6174043c7f
chore: remove unused Unicode::UTF32ToUTF8
2025-12-04 10:36:48 +00:00
sithlord48
53441821e0
refactor: Replace deskflow::string::stringToSizeType with QString::size()
2025-12-03 12:14:11 +00:00
sithlord48
f012cf2e4b
refactor: replace deskflow::string::sizeTypeToString with QString::number()
2025-12-03 12:14:11 +00:00
sithlord48
a6daff59f6
refactor: SecureSocket::doWrite remove unnessessary reset of bufferSize
2025-12-02 08:37:30 -05:00
sithlord48
dc76366a48
fix: SecureSocket::secureConnect, uset SSL host name before connect
2025-12-02 08:37:30 -05:00
sithlord48
9b40bf2f9b
chore: remove unused base/Path class
2025-12-02 08:37:30 -05:00
sithlord48
ea0222b1e6
refactor: App::loadConfig(const std::string&) => App::loadConfig(const QString &)
2025-12-02 08:37:30 -05:00
sithlord48
78234f60c4
refactor: base/Path use QString to convert to WString fo windows
2025-12-02 08:37:30 -05:00
sithlord48
7d07222832
refactor: SecureSocket::loadCertificates(const std::string) & => SecureSocket::loadCertificate(const QString &)
2025-12-02 08:37:30 -05:00
sithlord48
e5513101a6
refactor: Use the Settings::Gui::AutoStartCore to control if the Gui should start the core when starting up
...
removes Settings::Core::StartedBefore
2025-12-02 08:19:46 -05:00
sithlord48
df78f0757e
refactor: Gui control if the server first shown message is shown with its own setting
2025-12-02 08:19:46 -05:00
sithlord48
8e8ab25fd0
refactor: use Settings::Gui::ShownFirstConnectionMessage to control message popup on initial connection a to client / server
2025-12-02 08:19:46 -05:00
sithlord48
13219ca49c
fix: only restore the size if the windows was in the tray
...
fixes : #9237
2025-12-01 08:39:01 -05:00
sithlord48
0446db93e6
refactor: handle error suppression in gui not message stack
2025-12-01 08:39:01 -05:00
sithlord48
a37d30c6ab
refactor: SecureUtils::GenerateFingerprintArt, auto type for char pool
2025-12-01 13:20:47 +00:00
sithlord48
a78702d68f
refactor: make DaemonIpcServer::writeToClietnSocket const
2025-12-01 13:20:47 +00:00
sithlord48
7831ba293a
fix: Mac os Preferences missing when translated
...
fixes : #9226
In the MainWindow give all menu items a role to prevent mac os from misplacing them due to their label when translated
2025-11-30 10:14:46 -05:00
sithlord48
a01a6b0b89
fix: key repeat regression for windows caused by #9217
2025-11-30 14:48:35 +00:00
sithlord48
c1b5e125b0
refactor: ServerConnection: keep track of ignored clients so we only prompt for them once
2025-11-30 09:31:08 -05:00
sithlord48
accb9d9c59
refactor: ServerConnection: Handle the new client via signals
...
Use QtTests now that we can for ServerConnnecitonTests
2025-11-30 09:31:08 -05:00
sithlord48
11fa5d636e
refactor: ServerConnection return a bool for the results of the newClientPrompt no Enum needed
2025-11-30 09:31:08 -05:00
sithlord48
cca6f80cb5
refactor: ClientConnection, use signal to ask for dialog
...
move ClientConnectionTests to Qt Tests
track if the dialog is open in the gui
track suppression in clientConnection based on connect / disconnect message
2025-11-30 14:13:35 +00:00
sithlord48
1ebcab60e2
refactor: Move messages client connection error to common, new common/Enums
2025-11-30 14:13:35 +00:00
sithlord48
2485916ad1
refactor: new signal ClientConnection::requestShowError
2025-11-30 14:13:35 +00:00
sithlord48
5287c51957
refactor: clearer ClientConnection::showMesssage logic
2025-11-30 14:13:35 +00:00
sithlord48
695dc04c00
refactor: new ClientError::NoError
2025-11-30 14:13:35 +00:00
sithlord48
fd94403a73
fix: ServerApp, do not blindly read the external config path for our settings location
...
use the default value unless the setting for using the external config is also set
fixes : #9227
2025-11-28 16:22:16 +00:00
PseudoResonance
d35716f574
feat: Configure default screen lock state
...
fixes : #7907
2025-11-27 08:22:13 -05:00
sithlord48
b6bc9202db
chore: remove unused SecureUtils::pemFileCertFingerprint
2025-11-27 08:05:04 -05:00
sithlord48
4cb184989c
refactor: TlsUtility::isCertValid we only use RSA keys for now
2025-11-27 08:05:04 -05:00
sithlord48
ff02285a6a
refactor: move SecureUtils::getCertLength -> TlsUtility, and use Qt to get the length of the key file
2025-11-27 08:05:04 -05:00
sithlord48
1a6f81a34b
refactor: SecureUtils use QStringLiterals where possible
2025-11-27 08:05:04 -05:00
sithlord48
2dfba73cfb
refactor: use QCryptographicHash::Algorithm in place of Fingerprint::Type
2025-11-27 08:05:04 -05:00
sithlord48
2f5166fafa
fix: keyholding
...
fixes : #7971
suggested by: PseudoResonance https://github.com/deskflow/deskflow/issues/7971#issuecomment-3570046036
2025-11-27 12:05:47 +00:00
sithlord48
274fae1e31
fix: macOS, crash when log is open and you minimize the gui
...
fixes : #9206
on macOS the minimize creates a race to show and hide the log
2025-11-25 11:54:24 -05:00
sithlord48
7e278b6210
chore: move gui/tls/TlsUtility -> gui/TlsUtility
2025-11-24 11:23:35 +00:00
sithlord48
5736566a79
refactor: TlsUtility a collection of methods in a namespace
2025-11-24 11:23:35 +00:00
sithlord48
bd4db268f1
chore: remove unused TlsCertificate class
2025-11-24 11:23:35 +00:00
sithlord48
c13421c20a
refactor: TlsUtility::generateCertificate() handle all the steps internally and make method static
2025-11-24 11:23:35 +00:00
sithlord48
0d5d66b880
chore: remove unused Settings::tlsLocalDb we no longer use the local fingerprint file
2025-11-24 11:23:35 +00:00
sithlord48
ad01e296dc
chore: remove unused TlsCertificate::generateFingerprint
2025-11-24 11:23:35 +00:00
sithlord48
4698326717
refactor: MainWindow keep a local copy of the fingerprint
...
This also makes it so MainWindow does not use the local_fingerprint file
2025-11-24 11:23:35 +00:00
sithlord48
2087097415
refactor: new static TlsUtility::certFingerprint to generate fingerprint on the fly
2025-11-24 11:23:35 +00:00
sithlord48
94eaa79768
chore: rename MainWindow::regenerateLocalFingerprints -> MainWindow::generateCertificate
2025-11-24 11:23:35 +00:00
sithlord48
6f10cd269e
refactor: move TlsCertificate::getCertKeyLength -> static TlsUtility::getCertKeyLength
2025-11-24 11:23:35 +00:00
sithlord48
c4a2dfd300
chore: remove unused TlsUtility::persistCertificate
2025-11-24 11:23:35 +00:00
sithlord48
393c2fa9bc
refactor: remove unused TlsCertificate::isCertificateValid
2025-11-24 11:23:35 +00:00
sithlord48
91b9680643
refactor: new static TlsUtiliy::isCertValid
2025-11-24 11:23:35 +00:00
sithlord48
4216acdb3a
refactor: TlsUtility::isEnabled is now a static member
2025-11-24 11:23:35 +00:00
Yoshiaki Kasahara
d8bdad4e1d
fix: translate MainWindow::coreProcessError warning
2025-11-21 09:30:36 -05:00
sithlord48
525123573e
chore: use U for wlclipboard setting name
2025-11-21 10:38:50 +00:00
sithlord48
858a5d71bd
fix: enable translations for validators
2025-11-20 16:18:16 -05:00
Nick Bolton
b547493bc5
refactor(ipc): Add newline in utility write function
2025-11-20 15:08:57 +00:00
Nick Bolton
cace2892ba
fix: append newline to logPath response in DaemonIpcServer
2025-11-20 15:08:57 +00:00
sithlord48
92e3e9ac64
refactor: wlClipboard fix some sonar issues
2025-11-20 07:57:31 -05:00
sithlord48
50fd3365e8
chore: WlClipboard remove unused process control methods
2025-11-20 07:57:31 -05:00
sithlord48
4ebf5ff479
refactor: WlClipbaord::empty use QProcess
2025-11-20 07:57:31 -05:00
sithlord48
ab4feaa037
refactor: WlClipbaord::add use QProcess to set the clipboard
2025-11-20 07:57:31 -05:00
sithlord48
21900ade68
refactor: make WlClipboard a QObject subclass
2025-11-20 07:57:31 -05:00
sithlord48
7b0e8e8188
chore: WlClipboard remove unused executeCommand
2025-11-20 07:57:31 -05:00
sithlord48
c5f7a3792a
refactor: WlClipboard::get use QProcess
2025-11-20 07:57:31 -05:00
sithlord48
7a60f0cc9e
refactor: WlClipboard, use QProcess to get available mimeTypes
2025-11-20 07:57:31 -05:00
sithlord48
9ed0b06a42
refactor: WlClipboard mimetypes use QStrings
2025-11-20 07:57:31 -05:00
sithlord48
5ef4f64b11
refactor: use QDateTime::currentMSecsSinceEpoc behind WlClipboard::getCurrentTime
2025-11-20 07:57:31 -05:00
sithlord48
c7e90d3cf5
refactor: WlClipboard::isAvailable use QStandardPaths::findExecutable to check if the apps exist. remove WlClipboard::checkCommandExists
2025-11-20 07:57:31 -05:00
sithlord48
d157713a85
feat: Settings expose settings to use wl-clipboard backend. Disable clipboard on wayland if this settings is disabled
2025-11-20 07:57:31 -05:00
sithlord48
90e7d475f8
refactor: WlClipboardCollection minor sonar cleanup
2025-11-20 07:57:31 -05:00
sithlord48
ecb03297fd
refactor: EiScreen Sonar cleanup for new clipboard items
2025-11-20 07:57:31 -05:00
sithlord48
a09dfad22a
chore: WlClipboard remove unused private setClipboardData and setClipboardData methods
2025-11-20 07:57:31 -05:00
sithlord48
9960b657e3
chore: rename EiClipboard -> WaylandClipboardCollection
2025-11-20 07:57:31 -05:00
sithlord48
bbabb91d42
chore: rename src/lib/platform/WaylandClipboard -> src/lib/platform/WlClipboard
2025-11-20 07:57:31 -05:00
Jörg Thalheim
e55c67fa2f
feat: add wayland clipboard support via wl-clipboard
...
this is currently based on wl-copy/wl-paste.
One could probably just implement wl-copy/wl-paste without adding much
complexity and better performance.
Co-authored-by: KoljaFrahm <GitHub.Kolja@dfgh.net>
2025-11-20 07:57:31 -05:00
sithlord48
56bb41a291
refactor: also check qt6 paths for translations
2025-11-20 07:29:01 -05:00
sithlord48
4285361413
refactor: replace Q_OS_MAC -> Q_OS_MACOS
2025-11-20 07:29:01 -05:00
sithlord48
37177f8e45
refactor: macos move bundle resources to Deskflow.app/Resources/translations
2025-11-20 07:29:01 -05:00
sithlord48
82c18e26e5
doc: fix dev documents mis aligned quotes
2025-11-20 07:07:32 -05:00
Yoshiaki Kasahara
e7018bd75a
fix: Fix broken <br/> tag in the tooltop of suggested IP addresses
2025-11-20 06:29:54 -05:00
sithlord48
bc9bc906a5
refactor: EventLogger sonar suggestion to define index2 in the if
2025-11-17 12:07:00 +00:00
sithlord48
0890bcac42
chore: logger make deconstructor an override
2025-11-17 12:07:00 +00:00
sithlord48
22d27f7245
fix: Settings, add a new private cleanScreenName method to update the screenName
...
Fixes : #9156
Names: contain only A-Z a-z 0-9 or - or . or _
replace any spaces with _
are < 256 characters in length
can not start or end with - _ or .
Set a screen name if the settings does not have one do this instead of returning a default value
2025-11-17 10:21:31 +00:00
sithlord48
1a9e468c86
refactor: Settings store envvar checks so they only need to be read once when checking
2025-11-14 09:55:28 -05:00
sithlord48
204a6cca8a
refactor: Settings make the name checking regex static in the method
2025-11-14 09:55:28 -05:00
sithlord48
4df7c54afb
refactor: Settings make the internal setting objects children
2025-11-14 09:55:28 -05:00
sithlord48
999f174441
fix: Gui save and restore the window when closing and restoring to the tray
2025-11-14 09:55:28 -05:00
sithlord48
aca08a5e74
feat: save geometry into into a state file
...
fixes : #9132
2025-11-14 09:55:28 -05:00
sithlord48
ddcd2f0ff1
refactor: Logger store a local copy of the used setting value for guiDebug, update it went the settings have changed
2025-11-14 09:22:40 -05:00
sithlord48
ec9f7efcff
refactor: Logger is now a proper singleton
2025-11-14 09:22:40 -05:00