Commit graph

3752 commits

Author SHA1 Message Date
sithlord48
9dae55fc6f chore: remove unused ClientProxy1_5::m_events 2025-09-25 15:01:17 +01:00
sithlord48
e35a2b1c29 chore: remove unused ClientProxy1_7::m_events 2025-09-25 15:01:17 +01:00
sithlord48
4157367aaa chore: remove unused InputFilter::RestartServer::m_events 2025-09-25 15:01:17 +01:00
sithlord48
3945dc927c chore: remove unused ArgsBase::m_disableTray 2025-09-25 14:41:35 +01:00
Nick Bolton
801ada88b7 fix: correct spelling of convertLayoutToISO in X11LayoutsParser 2025-09-25 09:18:06 -04:00
Nick Bolton
c234f2fc66 fix: Do not reuse listen sockets on Windows 2025-09-25 14:00:48 +01:00
sithlord48
7b866ec632 refactor: make sure to use static args on ArgParsers::NameTest 2025-09-24 16:28:19 +01:00
sithlord48
ff1726677b chore: remove unused --service and --relaunch options for windows 2025-09-24 16:28:19 +01:00
sithlord48
57e34ded54 chore: rename IApp::standardStartup -> IApp::start 2025-09-24 16:28:19 +01:00
sithlord48
03e014c753 feat: Remove daemon / no-daemon option 2025-09-24 16:28:19 +01:00
Roman Vasiyarov
9f8c45b449 fix: XWindowsScreen: stop centering panned screens on client when leaving screen
panned screens still needs `xtestIsXineramaUnaware` option enabled. this change
forcefully uses XTest only when leaving
useful examples:
* double 1 FullHD screen (main output) by:
	`xrandr --fb 3840x1080 --output DP-1 --panning 3840x1080+0+0/3840x1000+0+80`,
	leaving top 80 pixels for moving mouse out without actual panning
* dedicate right half of framebuffer to FullHD TV (second output):
	`xrandr --fb 3840x1080 --output HDMI-0 --panning 1920x1080+1920+0`
2025-09-23 12:12:59 +01:00
Roman Vasiyarov
bf5b0de6ee fix: XWindowsScreen: properly calculate xrandr/xinerama screens
this allows screens to overlap, use panning, etc
2025-09-23 12:12:59 +01:00
Roman Vasiyarov
3aef2f4309 chore: XWindowsScreen: remove duplicate function 2025-09-23 12:12:59 +01:00
sithlord48
35c7fe7fc4 fix: screensettingsDialog, do not allow aliases to be ip addresses
fixes: #8952
2025-09-15 16:31:52 +01:00
sithlord48
612ca91f9c chore: rename XWindowsPowerManager => XDGPowerManager
fixes: 8949
2025-09-15 13:21:51 +01:00
Nick Bolton
fcdea215be Reapply "refactor: App use Uniqueprt for SocketMultiplexer"
This reverts commit 6f18cf74c5.
2025-09-12 16:03:22 +01:00
Nick Bolton
6f18cf74c5 Revert "refactor: App use Uniqueprt for SocketMultiplexer"
This reverts commit 4d738b4784.
2025-09-12 15:03:52 +01:00
Nick Bolton
162cb85811 fix: Improve output loop error handling in MSWindowsWatchdog
Prevents high CPU usage while waiting for data (ERROR_NO_DATA)
2025-09-12 13:17:50 +01:00
Nick Bolton
5ea8d0326a fix: Use QString for Windows error functions
Was returning only first char of error message (mild-mojibake)
2025-09-12 13:17:50 +01:00
Louis des Landes
7a2591a1fa fix: wayland sleep inhibit on client
Fixes #8827
Adds the XWindowsPowerManager to the EiScreen as, despite the name, this
works on Wayland as well.
2025-09-12 10:54:25 +01:00
sithlord48
2f2754ab97 refactor: LogDock::eventFilter mark as override 2025-09-11 14:53:20 +01:00
sithlord48
9883fb988a refactor: remove Arch::hostname, use QSysInfo::machineHostName directly in the only place its used 2025-09-11 14:53:20 +01:00
sithlord48
38a74d7d0f refactor: Arch::getHostName(), use QSysInfo::machineHostname in place of system specific impl 2025-09-11 11:18:12 +01:00
sithlord48
949f1d6534 refactor: MainWindow, minimize / restore action use window-*-pip icons 2025-09-11 10:57:08 +01:00
sithlord48
de42f53d68 refactor: new LogDock, handle hiding and float correctly' 2025-09-11 10:57:08 +01: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
66a022a012 fix: Adjust log level for unconfigured client as we react to this in the gui 2025-09-10 14:31:13 +01:00
Nick Bolton
19eefd65c1 fix: Prevent log visibility toggle when window is hidden 2025-09-10 11:51:37 +00:00
Nick Bolton
ad383ad9d4 chore: Remove unused daemon installation and uninstallation methods 2025-09-10 11:32:02 +00:00
sithlord48
539ddcaf48 refactor: ScreenConfigDialog, make sure to populate the screen model with the server config after its been made 2025-09-09 15:59:07 +00:00
sithlord48
b30f8d253c refactor: XWindowsKeyState remove name for unused KeyId in remapKeyModifiers 2025-09-05 11:52:17 +01:00
sithlord48
c477d0fcc6 refactor: XWindowsKeyState::init remove unused display var 2025-09-05 11:52:17 +01:00
sithlord48
bc63961e7e refactor: EIEventQueueBuffer remove unused screen from constructor 2025-09-05 11:52:17 +01:00
sithlord48
30ce0bdf45 refactor: SecureSocket, remove names for unused parameters for socket service accept and serviceConnect 2025-09-05 11:52:17 +01:00
sithlord48
dd66dd21bb refactor: IDataSocket, add maybe_unused for constructors event pointer 2025-09-05 11:52:17 +01:00
sithlord48
27075a0260 refactor: StreamBuffer::write use emplace when adding m_chunks 2025-09-05 11:52:17 +01:00
sithlord48
6cfd89af8c refacor: ServerConfigDialog::toggleClipboard use static access to ServerConfig::defaultClipboardSharingSize 2025-09-05 11:52:17 +01:00
sithlord48
8e99700657 refactor: ServerConfigDialog mark that deselected maybe_unused when calling the selectionChanged for our lists 2025-09-05 11:52:17 +01:00
sithlord48
e21c4cdd4d refactor: CoreProcess::addGenericArgs remove unused processMode var 2025-09-05 11:52:17 +01:00
sithlord48
88efc14bc2 refactor: ServerConfig, use static access to switchCornerNames() 2025-09-05 11:52:17 +01:00
sithlord48
a9d518fbc8 refactor: X11LayoutParser:appendVectorUniq, capture elem by ref in our lambda 2025-09-05 11:52:17 +01:00
sithlord48
43b1014700 refactor: X11LayoutParser::getAllLanguageData , do not shadow variables from outer for loop with the inner one (i.e use differnt nanes for each var) 2025-09-05 11:52:17 +01:00
sithlord48
2e722bdfeb refactor: Server::handleToggleScreenEvent remove name of the incomming event var to indicate its not used in the method 2025-09-05 11:52:17 +01:00
sithlord48
aedbffa809 refactor: server/Config use empty() to check if args are empty 2025-09-05 11:52:17 +01:00
sithlord48
dc0db9d192 refactor: LogWidget remove unused Q_SIGNALS delclaration 2025-09-05 11:52:17 +01:00
sithlord48
9f3e724218 refactor: ScreenSettingsDialog::removeAlias make const 2025-09-05 11:52:17 +01:00
Jonathan Wakely
f98f8b10d1 refactor: Construct std::string outside critical section
There's no need to hold the mutex while constructing a `std::string`
from the `char` string.

Also use `inet_ntop` instead of the potentially thread-unsafe
`inet_ntoa` that might use a static buffer for the result.

This makes the `INet` case match the `INet6` case below.
2025-09-04 16:56:46 +01:00
Jonathan Wakely
b788d63044 refactor: Give internal linkage to global mutex
The `static` keyword was removed by #8674 but I think it should be
restored so that this global can't clash with anything else called
`::s_mutex` elsewhere in the executable.
2025-09-04 16:56:46 +01:00
sithlord48
d5936a9e08 refactor: ScreenSettingsDialog, do not use auto connect slots 2025-09-03 10:38:59 +01:00
sithlord48
81c53d3690 refactor: ScreenSettingsDialog, conform to naming conventions 2025-09-03 10:38:59 +01:00
sithlord48
89003082d7 refactor: continue to improve the screen settings dialog ui 2025-09-03 10:38:59 +01:00
Tomaz Canabrava
fe1a48fa28 refactor: Rework Computer Settings
Removed almost half of the lines, and still made it
more pretty.
2025-09-03 10:38:59 +01:00
Tomaz Canabrava
c4b2f91424 refactor: Move ServerConfig to the config folder 2025-09-03 10:38:59 +01:00
Tomaz Canabrava
f16c13fa54 refactor: ScreenSettingsDialog, Constify validator variables 2025-09-03 10:38:59 +01:00
sithlord48
43ce3c50e5 refactor: move log to dockwidget simplifying resize code 2025-09-01 18:12:41 +01:00
sithlord48
204a6b5a44 refactor: New LogWidget to handle log output in the mainwindow 2025-09-01 18:12:41 +01:00
sithlord48
a6dc455477 fix: Settings reset on windows, create new profile dir when not in native mode
fixes: #8916
2025-09-01 17:22:15 +01:00
sithlord48
138ede0536 refactor: use If in place of switch that looks for single case 2025-09-01 16:57:39 +01:00
sithlord48
eae089d3ec chore: ServerConfigDialog, conform to naming standards for members 2025-09-01 16:57:39 +01:00
sithlord48
340df69ca2 refactor: ServerConfigDialog, set members in alphbetical order, correct initlization order 2025-09-01 16:57:39 +01:00
sithlord48
507c98adff refactor: EIKeyState::fakeKey use if in place of a switch that cares only about a single case 2025-09-01 16:57:39 +01:00
sithlord48
0501f2892d chore: Messages::showClientError remove unneeded capture from lambda 2025-09-01 16:57:39 +01:00
Kris
104d2facdb feat: add switchToNextScreen hotkey to cycle through computers 2025-09-01 11:39:52 -04:00
Kris
398c9726f3 fix: fixes the mouse label issue 2025-09-01 11:39:52 -04:00
sithlord48
eb2f885983 chore: conform CoreProcess to naming standards 2025-09-01 16:18:02 +01:00
Nick Bolton
4a16931c5d refactor: Remove QProcessProxy and simplify CoreProcess
Making a proxy class for QProcess to make GTest work is an excellent example of over-abstraction making simple things hard to do. I just wanted to call a function on QProcess and had to jump through hoops to do it.

Bye bye QProcessProxy! We can do much better with QTest.
2025-09-01 16:18:02 +01:00
Nick Bolton
78b83c5639 fix: Use correct log function for process exit status in onProcessFinished 2025-09-01 08:05:07 -04:00
sithlord48
9cf25c4caf feat: Allow suppression of generic client connection dialog
fixes 8907
2025-09-01 10:57:59 +01:00
sithlord48
f0e02724ee refactor: CoreProcess::onProcessFinished add using for ProcessState enum 2025-09-01 10:04:52 +01:00
sithlord48
60e71aad38 fix: missing IPC messages
fixes #8905
2025-09-01 10:04:52 +01:00
sithlord48
d1897efa8b chore: LogTests, Fix codeQL issue with args in the printTestWithArgs test 2025-08-30 10:07:41 +01:00
sithlord48
490dac5048 refactor: LogTests use private log member 2025-08-30 10:07:41 +01:00
sithlord48
549133e619 refactor: LogTests, read buffer capture before release 2025-08-28 08:20:14 +01:00
sithlord48
323d011476 chore: remove unused include for ArchString 2025-08-28 08:20:14 +01:00
sithlord48
4e8a67925f refactor: Add Tooltip to log levels and show a label with info about debug level affecting performance
fixes: #8889
2025-08-28 00:45:40 +01:00
sithlord48
cba3881f41 refactor: Move all messages that are checked for by GUI in the log to new IPC Level so the gui can work with any filter level 2025-08-28 00:45:40 +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
e7880b72f1 chore: Mainwindow convert comments for regenerateLocalFingerprint to doxygen comments 2025-08-27 19:18:59 -04:00
sithlord48
d864361085 feat: Improve fingerprint comparison dialog, to show both remote and local prints (server is always on left of dialog)
fixes: #8866
2025-08-27 19:18:59 -04:00
sithlord48
66366dd95b refactor: Fingerprintprevew, Add optional title text, remove label for cypher type and add option to toggle the sha mode so art or hash is visible 2025-08-27 19:18:59 -04:00
sithlord48
2c6c65f71e refactor: MainWindow new localFingerprint method to read the local fingerprint from the db, this is split from showMyFingerprint 2025-08-27 19:18:59 -04:00
sithlord48
9eede5470c refactor: TLSUtil do not check it tls is enabled before regenerating the certificate
fixes #8890
2025-08-27 05:51:15 -04:00
Nick Bolton
07edccb469 fix: Add 'Hyper' key handling
In the X11 code, we mapped hyper to super, so perhaps it makes sense to do that here too:

`src/lib/platform/XWindowsUtil.cpp`
```
  case XK_Super_L:
  case XK_Super_R:
  case XK_Hyper_L:
  case XK_Hyper_R:
    return kKeyModifierBitSuper;
```
2025-08-26 09:52:43 -04:00
Zhuofeng Wang
927075688c fix: Pass ClientScrollDirection to EiScreen 2025-08-26 09:08:45 -04:00
sithlord48
b18c3b588f refactor: EIKeyState, compare to the current state when seeing if modifiers are inactive, suggested by wismill 2025-08-26 11:23:29 +01:00
sithlord48
fb144a5e66 refactor: LogTests are now built with QTest 2025-08-26 05:20:34 -04:00
Nick Bolton
34c439b3de refactor: Use single case to ignore mods in EI mod mask 2025-08-22 17:04:16 +01:00
Nick Bolton
934ddf1499 fix: Disable meta mod (fixes alt key bug) 2025-08-22 17:04:16 +01:00
Nick Bolton
4302d50a42 feat: Use xkb_keymap_mod_get_mask in EiKeyState if available
Introduced in xkbcommon v1.10.0
2025-08-22 16:06:03 +01:00
sithlord48
3e96c4d0aa refactor: Include breeze fallback icons for connect and disconnect 2025-08-22 09:54:20 +01:00
sithlord48
53f787d6ea refactor: deskflow-core adjust already running message 2025-08-22 09:54:20 +01:00
sithlord48
d368b92165 refactor: CoreProcess::onProcessFinished Stop trying to restart the core process if its already running 2025-08-22 09:54:20 +01:00
sithlord48
97e3524a24 build: SecureSocket, include io/FileSystem in SecureSocket.cpp 2025-08-22 09:54:20 +01:00
sithlord48
299ebea0e2 refactor: replace QString::toStdString().c_str with qPrintable(...) 2025-08-22 09:54:20 +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
65c5d3673d refactor: add header info to deskflow-core help message 2025-08-21 12:34:50 +01:00
sithlord48
e2b4bc45bd feat: add --version option to deskflow-core 2025-08-21 12:34:50 +01: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
2b3e7adc0b feat: Prevent core, client and or server from running at the same time
fixes: #8258
2025-08-21 12:34:50 +01:00
sithlord48
26983dc0e4 refactor MainWindow, move start and restart inline with mode options
update labels for the mode buttons actions and menu actions
                     use callstart / callstop for connect and disconect icons
2025-08-20 16:09:08 -04:00