Commit graph

804 commits

Author SHA1 Message Date
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
299ebea0e2 refactor: replace QString::toStdString().c_str with qPrintable(...) 2025-08-22 09:54:20 +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
b2aa638b1f feat: Support Remote Desktop token persistance 2025-08-19 15:46:14 +01:00
sithlord48
bcb6c368b1 refactor: remove unneeded common/Common includes 2025-08-18 11:45:21 +01:00
sithlord48
4eec183598 refactor: remove IInterface class, that only adds a virtual construcor 2025-08-18 11:45:21 +01:00
sithlord48
d2d28f5ad6 refactor: XWinowsUtil make s_keymap a std::array 2025-08-15 12:15:40 +01:00
sithlord48
2e193c6a78 chore: PortalInputCapture, conform to naming conventions 2025-08-11 12:58:52 -04:00
sithlord48
f95230549a chore: EiScreen: conform to nameing conventions 2025-08-11 12:58:52 -04:00
sithlord48
a13803df94 chore: EiKeyState, conform to naming conventions 2025-08-11 12:58:52 -04:00
sithlord48
2ba7fb2f05 chore: EiEventQueueBuffer, conform to naming conventions 2025-08-11 12:58:52 -04:00
sithlord48
9442295227 chore: remove unused HYPER key 2025-08-11 12:32:50 -04:00
sithlord48
a21d48defb refactor: reorder initilization order in XWindowEventQueueBuffer constructor 2025-08-11 12:32:50 -04:00
sithlord48
3770e2c39e chore: XWindowsScreen::handleSystemEvent, remove unused Window variables 2025-08-11 12:32:50 -04:00
sithlord48
8d90515446 chore: define var on seperate line from type 2025-08-11 12:32:50 -04:00
sithlord48
6153f64fb7 chore: remove uneeded casts 2025-08-11 12:32:50 -04:00
sithlord48
85d89f9846 refactor: XArch Classes => Arch Exception Classes 2025-08-11 17:14:45 +01:00
sithlord48
e4a9d1eb78 refactor: XScreen Classes => ScreenException Classes 2025-08-11 17:14:45 +01:00
Nick Bolton
a4c0e30bb8 fix: Ignore Mod2 and Mod3 to make log quieter 2025-08-07 15:31:52 -04:00
Peter Hutterer
a5c9744258 fix: Account for more modifiers in the EI keymap calculation
Some modifiers, notably LevelThree, were not accounted for in the
modifier mask calculation. This leads to an incorrect keymap where some
key symbols were listed for keys without (or insufficient) modifiers.
Emulating those keys can then produce the wrong keysyms.

Reproducible with server and client on English(UK) layout and typing
e.g. [. That key has its own key AD11 (right of P) but is also on
the third level of AE08 (the 8 key). When the server sends the keyid 91
(for [) the client looks it up in the pre-generated keymap. It is found
first on the 8 key with no modifiers (because LevelThree was previously
ignored), hence the client simulates a key 8 press without modifiers.
This erroneously produced an 8 instead of the wanted [.

Fix this by ensuring that all modifiers are accounted for in the key
map. This fix is likely incomplete as it does not account for the full
virtual modifier to real modifier mappings possible (e.g. Mod5 *may* be
something other than AltGr) but it does push the can a bit further down
the road, for someone else to release the worms.

Closes: #8168
2025-08-07 15:31:52 -04:00
sithlord48
2a84ef0ebf refactor: update log calls to LOG_... fixes #8819 2025-08-06 16:18:38 +01:00
Nick Bolton
9a9bd7e262 chore: Improve logging for active sides
For the longest time, this log line has bugged me:
```
active sides: e
```

It's hex, but it looks like a bug, since there's no `0x` prefix. Also, most humans can't read hex, so I added a string representation.

New version:
```
[2025-08-06T11:56:00] DEBUG: active sides: LRT (0x0e)
```
2025-08-06 08:38:00 -04:00
sithlord48
0cbc922478 refactor: MSWindowsDesks::getCursorPos initialize pos to 0,0 2025-08-06 11:44:38 +01:00
sithlord48
1f92f2a2ed chore: XWindowsScreen declare vars on seperate lines 2025-08-01 13:03:51 -04:00
sithlord48
023037f7ee refactor: XWindowsClipboard, user std::format_to_n in place of snprintf 2025-08-01 13:03:51 -04:00
sithlord48
c78665dc35 refactor: XWindowsKeyState, updateKeysymMap use std::ranges::fill to fill modifier array 2025-08-01 13:03:51 -04:00
sithlord48
c4c4c09eb2 refactor: XwindowsClipboard , use std::ranges::for_each in sendReply 2025-08-01 13:03:51 -04:00
sithlord48
2cccc3d0c8 refactor: use std::ranges::find_if when possible 2025-08-01 13:03:51 -04:00
Corentin Rossignon
11caf55522 fix: Wrong m_buttons vector size in case of maxButton inferior to numButtons 2025-08-01 08:18:57 -04:00
sithlord48
8977d70dd9 refactor: IClipboard::EFormat => enum class Clipboard::Format 2025-07-31 13:41:29 +01:00
sithlord48
49e36cfdc6 refactor: Event, make non default constructors explicit 2025-07-29 13:41:34 +01:00
sithlord48
283e0c6367 refactor: KeyMap EType => enum class KeyType 2025-07-29 13:41:34 +01:00
Nick Bolton
51e467d45e feat: Enable 'MouseKeys' on screen setup and never restore old settings
Previously we were toggling the 'MouseKeys' Windows accessibility feature on and off, but this was causing many bugs; cursor show delay while Windows brings up the mouse stack(?) and often forever lost mouse cursor when toggling off the 'MouseKeys' feature. After a few days of hacking away at this, it seems safest to just leave it on.
2025-07-28 21:45:05 +01:00
Nick Bolton
e184475a24 feat: Add logging in MSWindowsScreen for setup and cursor centering 2025-07-28 21:45:05 +01:00
Nick Bolton
1fb2789cb1 fix: Prevent flicker on desk leave with 30ms delay 2025-07-28 21:45:05 +01:00
Nick Bolton
8979d7f94f feat: Cursor visibility retry mechanism
The `ShowCursor` function does not directly show/hide the cursor; it increments or decrements the internal display counter. When that counter reaches a certain positive/negative number, then the cursor is shown or hidden at a particular threshold.
2025-07-28 21:45:05 +01:00
Nick Bolton
9033198aed refactor: Change mouse keys functions names to expose actual behavior 2025-07-28 21:45:05 +01:00
Nick Bolton
db55c3f0e7 build: remove unused includes from MSWindowsDesks.cpp|h 2025-07-28 21:45:05 +01:00
sithlord48
d1b810baa5 refactor: use std::size to get size of arrays 2025-07-17 18:47:50 +01:00
sithlord48
f51abad8cc feat: Wayland, only set a side to a border if if has a neighboring screen
move protocolTypes Direction enum to new base/DirectionTypes
use the direction info when calling
fixes #8572
fixes #8452
fixes #8605
fixes #8005
2025-07-14 10:31:50 +01:00
sithlord48
ae5ba4e51f chore: remove dev method PortalInputCapture::fakeEisFd 2025-07-14 10:31:50 +01:00
sithlord48
e37cea2d6b refactor: replace anon Enum in XWindowsKeyState with static vars 2025-07-11 03:06:24 -07:00
sithlord48
181d862838 refactor EiEventQueue remove anon enum for a few static members 2025-07-11 03:06:24 -07:00
sithlord48
b9964b5e90 refactor: remove anon enum in IKeyState and replace with static s_numButtons 2025-07-11 03:06:24 -07:00
sithlord48
422b4c3a23 refactor ClientArgs ClientScrollDirection to enum class use Members Normal and Inverted for names 2025-07-11 03:06:24 -07:00
sithlord48
9905f32738 refactor: Common.h replace anon enum with set constexpr exit codes 2025-07-11 03:06:24 -07:00
sithlord48
3ececbcfd9 refactor: Event anon enum => EventFlags struct 2025-07-11 03:06:24 -07:00
sithlord48
c12aa4c6e9 refactor: Make IEventQueueBuffer Types an enum class, use proper names rename kNone => Unknown to reflect its unknowns an unknown type of event 2025-07-11 03:06:24 -07:00
sithlord48
77bdde5434 refactor: Elevel => LogLevel enum class, use proper names for items in the class 2025-07-11 03:06:24 -07:00
sithlord48
36e985d8ab chore: add missing default for switches 2025-07-07 17:53:56 +01:00
sithlord48
dded2e3711 refactor: ProtocolTypes EDirectionMask => enum class DirectionMask 2025-07-07 17:53:56 +01:00
sithlord48
0ea2576032 refactor: XWindowsEventQueueBuffer, use static const for timeoutd delay 2025-07-07 17:53:56 +01:00
sithlord48
5aa9b1bfd4 refactor: PortalRemoteDesktop, do not create nested pointer in new Thread call 2025-07-07 17:53:56 +01:00
sithlord48
cfbfa88cdc refactor: PortalInputCapture: do not create nested pointer in new Thread call 2025-07-07 17:53:56 +01:00
sithlord48
ede27975d7 chore: clean up remaing sonar warnings to use in class intializers where possible 2025-07-07 17:53:56 +01:00
sithlord48
a175c293f6 chore: comment empty methods that do nothing 2025-07-07 17:53:56 +01:00
sithlord48
ab4fbd1c85 refactor: use using enum EventTypes when possible to reduce verbosity 2025-07-03 03:24:16 +00:00
sithlord48
42cd01efd7 refactor: PortalInputCapture, fix a missed non compliant variable names
refactor: PortalInputCapture, more const args
2025-06-20 18:10:40 +01:00
sithlord48
a7a54ad8a7 refactor: PortalInputCapture use std::map to hold signals and enum class as the key
fixes: InputCapturePortal crash in debug builds
2025-06-20 18:10:40 +01:00
sithlord48
20bc88eb1f refactor: PortalInputCapture sonar adjustments 2025-06-20 12:41:34 +01:00
sithlord48
969b642e0b refactor: EiScreen sonar adjustments 2025-06-20 12:41:34 +01:00
sithlord48
a89f3b6892 refactor: conform EiScreen to code standards
fixes #8700
2025-06-20 12:41:34 +01:00
sithlord48
a973d4277c refactor: conform PortalInputCapture to coding standards 2025-06-20 12:41:34 +01:00
sithlord48
b8124107aa refactor: conform EiKeyState to coding standards 2025-06-20 12:41:34 +01:00
sithlord48
0691d586e7 refactor: conform EiEventQueueBuffer to coding standards 2025-06-20 12:41:34 +01:00
sithlord48
e8c85611a0 refactor: conform PortalRemoteDesktop to naming standards
remove unused method and includes
2025-06-20 12:41:34 +01:00
sithlord48
59ed15628e refactor: remove redundant access specifiers 2025-06-20 09:39:26 +01:00
sithlord48
b29c5b1bb2 refactor: use contains to find if an item is in a container 2025-06-20 09:39:26 +01:00
sithlord48
66e201c8ef chore: remove handle* methods that are a single oneline forward and use the line directly 2025-06-18 13:17:16 +01:00
sithlord48
3a35b183d3 refactor: use std::function for Event callback
based on 6d347337c3
2025-06-18 13:17:16 +01:00
sithlord48
c15214aee7 refactor: use std::scoped_lock inplace of std::lock_guard 2025-06-17 10:23:42 +01:00
sithlord48
5fd4d93f7f refactor: replace ARCH->sleep(...) calls with Arch::sleep(...) 2025-06-17 10:23:42 +01:00
sithlord48
84e289bc30 refactor: replace ARCH->time() with Arch::time() 2025-06-17 10:23:42 +01:00
sithlord48
782702fe74 refactor: use std::mutex in platform/XWindowsEventQueue 2025-06-14 09:37:48 +01:00
sithlord48
60a148ce68 build: remove HAVE_DPMS_PROTOTYPES, Single use and assumed due to another var being set 2025-06-14 08:22:55 +01:00
sithlord48
da5a2088c8 build: remove unset X_DISPLAY_MISSING checks 2025-06-14 08:22:55 +01:00
sithlord48
87704fedb1 build: unistd.h is manditory on unix platforms 2025-06-14 08:22:55 +01:00
sithlord48
8170dd4e99 chore use std::getenv Not c style getenv
idea from: https://github.com/debauchee/barrier/pull/847/
2025-06-12 22:27:16 +01:00
sithlord48
c2a658256e feat: remove defunct --no-xinitThreads option
based on https://github.com/input-leap/input-leap/pull/1503
2025-06-12 22:07:40 +01:00
sithord48
a31cff0225 chore: Cleanup windows includes 2025-06-02 21:55:36 +01:00
sithlord48
da06e97521 build: remove unused platform/MSWindowsUtils 2025-06-02 21:55:36 +01:00
Povilas Kanapickas
5ee3fc41bd chore: arch: Remove XArch exception class
XArch no longer contains any extra functionality in addition to what
std::runtime_error nor it signifies a particular type of error.
based-on: 5b991692af
ported-by: sithlord48
2025-05-28 14:00:18 +01:00
Povilas Kanapickas
314899ac7d chore: arch, Remove support for lazy error code to string evaluations
This functionality is not needed because in all code paths the error
code is immediately converted to string without actually using the lazy
evaluation functionality.

based-on: 53dff5b803
ported and expanded by sithlord48
2025-05-28 14:00:18 +01:00
sithlord48
9eabbb690c chore: MSWindows only items initilize members in header 2025-05-28 09:42:08 +01:00
sithlord48
3eb3969a01 chore: use final for overrides and remove virtual for non base classes 2025-05-28 09:42:08 +01:00
sithlord48
e6a374369b chore: use const for more local ref and pointer vars 2025-05-28 09:42:08 +01:00
sithlord48
9c56fa5dda chore: Combine unnessessary multi level if into less fewer checks 2025-05-28 09:42:08 +01:00
sithlord48
6875969255 chore: static_cast to replace reinterpret_cast where possible 2025-05-28 09:42:08 +01:00
sithlord48
475b895755 chore: initialize class vars using the order class define, initilizer list, constructor 2025-05-23 10:19:11 -07:00
sithlord48
476f3ba243 refactor: remove Ifdef around iso_level5 2025-05-23 17:19:55 +01:00
sithlord48
a33574e1bd chore: use more ranged for loops 2025-05-22 20:46:41 +01:00
sithlord48
723671c2e5 chore: remove // from inside comment blocks 2025-05-22 20:46:41 +01:00
sithlord48
fe12972e83 chore: use const pointer / ref where possible 2025-05-22 20:46:41 +01:00
sithlord48
04805d9a7e chore: mark explicit methods 2025-05-22 20:46:41 +01:00
sithlord48
3cf0fb89ef chore: add comment to empty methods 2025-05-20 16:20:07 +01:00
sithlord48
52b0c1f061 chore: use auto or (const auto) where possible 2025-05-20 16:20:07 +01:00
sithlord48
c224cd4661 chore: declare const methods recommened by sonar 2025-05-20 16:20:07 +01:00
sithlord48
635962618f chore: define only one variable per line 2025-05-20 16:20:07 +01:00
sithlord48
0ff72441e6 chore: use c++17 style if,switch init-initilizer where possible
chore: correct spelling of "colon" in NetworkAddresses variables
chore: correct some multi line defines near needed init-initilizers
2025-05-20 16:20:07 +01:00
sithlord48
bdffda9a2f chore: replace typedef with using 2025-05-20 16:20:07 +01:00
Sam Umbach
14cb921d4c Resolve deprecated-enum-float-conversion compiler warnings
- Observed on macOS Monterey 12.7.6 with cmake version 4.0.1, Homebrew clang version 20.1.4, Target: x86_64-apple-darwin21.6.0
2025-05-14 11:05:41 -04:00
sithlord48
8f53b88bb6 chore: remove unused tests
Remove Unused Mocks
Remove remaing uses of TEST_ENV and its guarded items
2025-05-08 15:26:44 +01:00
sithlord48
5365e34f08 feat: remove drag and drop support, its broken on all platforms 2025-05-08 09:47:41 -04:00
sithlord48
55a7fa3266 Port simplified EventTypes from 8b23570379 2025-05-05 17:17:01 -04:00
sithlord48
99dae58fd3 chore: clean up macos code smell missed by sonarscan 2025-05-03 21:23:15 +01:00
sithlord48
e9ccd513f7 chore: clean up windows code smells missed by sonarscan 2025-05-03 21:13:09 +01:00
sithlord48
81c19c6ee8 chore: XClipboardUTF8Converter use default for deconstructor 2025-05-02 12:12:17 +01:00
sithlord48
1276a4a29c chore: XClipboardUCS2Converter use default for deconstructor 2025-05-02 12:12:17 +01:00
sithlord48
d97f4d87ad chore: XClipboardTextConverter use default for deconstructor 2025-05-02 12:12:17 +01:00
sithlord48
d5cbd002a9 chore: XClipboardHTMLConverter use default for deconstructor 2025-05-02 12:12:17 +01:00
sithlord48
31a6fd23e7 chore: XClipboardBMPConverter use default for deconstructor 2025-05-02 12:12:17 +01:00
sithlord48
f6c6d4e3a7 chore: XClipboardAnyBitmapConverter use default for constructor / deconstructor 2025-05-02 12:12:17 +01:00
Dustin Kaiser
2192636d2b fix(wayland): release portal input capture when EI_EVENT_DISCONNECT is encountered, refactoring
Fixes #8005.
2025-05-01 12:35:00 +01:00
Dustin Kaiser
6194868e89 chore(wayland): add debug logline in EiScreen::handle_portal_session_closed 2025-05-01 12:35:00 +01:00
Peter Hutterer
00f53c1aac fix(ei): Drain all events sitting in our pipe
If we're starved for resources, we may end up with more than 64
notifications in our pipe before we get to actually read them.
Those notifications are just that though, so let's drain them.
2025-05-01 10:04:28 +01:00
Nick Bolton
35f0e9e6e4 feat(gui): Retry mechanism for Windows Daemon IPC client 2025-04-29 13:13:07 +01:00
sithlord48
ec4851d326 chore: XWindowsUtil, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
f338e5e7a8 chore: XWindowScreenSave, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
55b48a5db7 chore: XWindowsScreen, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
352a871729 chore: XWindowsKeyState, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
b103f28202 chore: XWindowsClipboardBMPConverter, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
39b49acb56 chore: XWindowsClipboardAnyBitmapConvertor, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
5d4fbc8ea6 chore: XWindowClipboard, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
3dfa3d5069 chore: EiScreen, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
6d9c66b03f chore: EiKeyState, use auto where possible 2025-04-28 13:50:43 +01:00
sithlord48
63d65bb47b chore: use nullptr where possible in place of NULL 2025-04-28 13:08:40 +01:00
sithlord48
60dc4c0cd8 chore: remove unneed mac os version checks 2025-04-28 12:52:55 +01:00
sithlord48
d6ace78a58 chore: XWindowUtils, default should be first or last case for switches 2025-04-28 11:47:04 +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
Nick Bolton
1202145bb8 fix(daemon): Use scheduled state when start is scheduled 2025-04-16 05:28:23 -07:00
Nick Bolton
abc963f886 fix(daemon): Only log XArchEvalWindows result when GetExitCodeProcess fails 2025-04-16 05:28:23 -07:00
Nick Bolton
4988196c47 fix(daemon): Use missing %s when logging XArchEvalWindows result 2025-04-16 05:28:23 -07:00
Nick Bolton
8a2b6bd688 fix(daemon): Validate process handle and ID before shutdown 2025-04-16 05:28:23 -07:00
sithlord48
fde880fb6f chore: add default case for EI_EVENT handling 2025-04-07 11:23:28 +01:00
sithlord48
7f6a68bb2f chore: lib/base/Event remove unused headers 2025-03-25 14:11:23 +00:00
sithlord48
8b5a61f07f refactor: remove ArchFile, move only use of getInstallDir to MSWindowsWatchdog 2025-03-25 08:39:05 +00:00
sithlord48
c1a7b836ce refactor: remove unused ArchMiscWindows::processDialog 2025-03-24 12:16:39 +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
26fa6860e4 chore: Move used code from Win32Hook to MSWindowsHook and remove Win32Hook 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
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
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
d7b20fad5c chore: rename lib/platform/wayland.h => lib/platform/Wayland.h 2025-03-20 13:06:45 +00:00
sithlord48
6e6a88af87 chore: rename lib/platform/dfwhook.h => lib/platform/Win32Hook.h 2025-03-20 13:06:45 +00:00
sithlord48
2ef23b8206 chore: rename lib/deskflow/protocol_types => lib/deskflow/ProtocolTypes 2025-03-20 13:06:45 +00:00
sithlord48
ecf70f09f3 chore: rename lib/deskflow/option_types => lib/deskflow/OptionTypes 2025-03-20 13:06:45 +00:00
sithlord48
397c652e1c chore: rename lib/deskflow/mouse_types => lib/deskflow/MouseTypes 2025-03-20 13:06:45 +00:00
sithlord48
1666a30b94 chore: rename lib/deskflow/clipboard_types => lib/deskflow/ClipboardTypes 2025-03-20 13:06:45 +00:00
sithlord48
827d020d16 chore: rename lib/deskflow/key_types => lib/deskflow/KeyTypes 2025-03-20 13:06:45 +00:00
sithlord48
0138372871 chore: rename lib/base/log_outputters => lib/base/LogOutputters 2025-03-20 13:06:45 +00:00
sithlord48
27451d3425 refactor: move Screensaver inhibate call for xwindows from arch to platform 2025-03-17 16:59:43 +00:00
Nick Bolton
16517ca541 refactor(daemon): More helpful and less noisy logging 2025-03-14 14:19:46 +00:00
Nick Bolton
e8ea9f53ee refactor(daemon): Separate arg parsing from program control flow 2025-03-14 14:19:46 +00:00
Nick Bolton
a099276e4e refactor: Move Windows SendSAS call to new thread
Moving the SAS event wait and SendSAS call prevents blocking the main thread allowing for more responsive watchdog (e.g. faster restart Core client/server on session switch).
2025-03-12 12:18:32 -04:00
Nick Bolton
87fb06781c refactor: Change shutdownExistingProcesses to static in MSWindowsWatchdog 2025-03-12 12:18:32 -04:00
Nick Bolton
b9017de881 refactor: Use simpler lock_guard for Windows daemon set process config 2025-03-12 12:18:32 -04:00
Nick Bolton
24d1d4e620 refactor: Simplify lock_guard usage by removing explicit mutex type 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
5b091dee56 refactor: Rename SAS IPC event name to be more specific 2025-03-12 12:18:32 -04:00
Nick Bolton
3344644d2e chore: Remove old ctrl+alt+del PostMessage call (for Windows XP and below) 2025-03-12 12:18:32 -04:00
sithlord48
6e8952c8a0 chore: update formating for clang-format 20.1.0 2025-03-11 10:57:51 -04: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
5eac984757 chore: Add mutex for process state management in MSWindowsWatchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
1bd3f5060e refactor: Add Doxygen comments for MSWindowsWatchdog member functions 2025-03-03 14:33:46 +00:00
Nick Bolton
55b4cffd3f chore: Remove unused setStartupInfo member function from MSWindowsWatchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
51ec36f23d chore: Set default values for m_foreground and m_activeDesktop MSWindowsWatchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
58cb2b76de chore: Remove unused include in MSWindowsWatchdog.h 2025-03-03 14:33:46 +00:00
Nick Bolton
8d4a715b1c chore: Make MSWindowsWatchdog constructor explicit 2025-03-03 14:33:46 +00:00
Nick Bolton
997d4a9473 chore: Move free functions to top of Windows watchdog source 2025-03-03 14:33:46 +00:00
Nick Bolton
0f11b61576 chore: Reduce complexity of outputLoop in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
98aba612c0 chore: Improve loop stop log line in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
b0547f6713 chore: Use ref to const for openProcessForKill arg in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
40fefb9369 chore: Use string_view for MSWindowsWatchdog::setProcessConfig 2025-03-03 14:33:46 +00:00
Nick Bolton
d8d022e9fe chore: Scope constants in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
84194cf5ef chore: Use default init instead of ctor init Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
cd5ba1382d chore: Clean up shutdownExistingProcesses (unused var and use if-init) in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
c84b4e3f00 refactor: Reduce complexity of mainLoop in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
be8029deb6 chore: Remove unused g_activeDesktop from Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
dbb9b3bf5a chore: Remove unused trimDesktopName from Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
32bf9aa02a chore: Use const auto instead of enum for kOutputBufferSize in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
0891afdd63 chore: Use nullptr instead of NULL in Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
f7ab6aba58 chore: Remove unused includes from Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
74e8a63dcd chore: Remove unused getCommand from Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
475172597a chore: Remove unused m_ready from Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
8c30ed7a59 chore: Remove unused m_autoDetectCommand and ctor arg from Windows watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
44f72a29e9 refactor: Use state machine for Windows daemon watchdog 2025-03-03 14:33:46 +00:00
Nick Bolton
4db77ba2f7 chore: Improve function name for setting daemon process config 2025-03-03 14:33:46 +00:00
Nick Bolton
f0c60f5ca9 chore: Improve logging for pipe readers in Windows watchdog 2025-02-28 17:58:16 +00:00
Nick Bolton
f46474c9f2 refactor: Use WaitForSingleObject instead of sleep for Windows process shutdown 2025-02-28 17:58:16 +00:00
Nick Bolton
a99d408be1 chore: Improve logging related to Windows daemon start/stop/install/uninstall 2025-02-28 17:58:16 +00:00
Nick Bolton
19c41e2ac5 fix: Improve Windows daemon stop speed by using non-blocking pipes and shorter sleep times 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