Nick Bolton
62a8ee749f
fix(macos): update BMP handling to support extended headers and improve pixel offset calculation
2026-05-19 17:48:58 +01:00
sithlord48
acf865fa11
refactor(log): Convert LogLevel into a class using LogLevel::Level as its enum, store values as the Option string display as localized string'
2026-05-15 11:47:10 +01:00
sithlord48
b0413ed4ff
refactor: move base/LogLevel -> common/LogLevel
2026-05-15 11:47:10 +01:00
sithlord48
8e469379e8
refactor(log): Squash all Debug1 And Debug2 logs into Verbose
...
fixes : #9725
BREAKING_CHANGE: log level values have changed settings for log level may need to be reset
2026-05-15 11:47:10 +01:00
Luiz Sardinha
426b43fc09
fix(mac): protect TIS API calls with a mutex (they are not thread safe)
2026-05-12 06:17:14 +01:00
Luiz Sardinha
44c5c15082
fix(mac): prevent cursor warps from outside quartz event loop (if active)
2026-05-12 05:54:49 +01:00
Ketan Patel
c3ecd0b806
fix(macos): recognize brightness media keys
...
Map macOS brightness media key events back to Deskflow key IDs so they
can be captured and forwarded from macOS servers.
Fixes #9709
2026-05-08 18:57:09 +01:00
Peter Hutterer
1c789fd6a9
feat: handle input capture session persistence
...
Use the new libportal API to start a CreateSession2, then set the
session persistence and read/write the tokens as required. This allows
us to start a server without a permission dialog - provided the portal
supports it and the user is ok with that.
2026-05-05 11:58:02 +01:00
Nick Bolton
69339b5bcc
feat(daemon): add missing command info log line for daemon
2026-04-25 10:48:09 -04:00
Nick Bolton
5c480ca515
fix(cve): run switch commands as normal user on Windows to prevent privilege escalation
...
CVE-2026-41477
2026-04-25 10:48:09 -04:00
Luiz Sardinha
5a028c12d4
fix(mac): quit core if accessibility permissions are revoked
2026-04-21 06:54:05 -04:00
Nick Bolton
e4bafaf88f
refactor(win32): More consistent Windows desk switch log line
2026-04-07 13:09:29 +01:00
Nick Bolton
aaef600ffa
fix(mac): Remove Cocoa app loop and fix macOS event tap for Qt threading
2026-04-07 13:09:29 +01:00
sithlord48
41fcc1e815
refactor: add [[no_unique_address]] hint for XWindowsScreen::m_powerManager
2026-03-30 10:36:15 +01:00
Artturi Alm
469a238b04
fix: AltGr for clients w/windows+finnish-layout.
2026-03-26 10:52:45 +00:00
sithlord48
ebab0eb62e
chore: remove unused ScreenException methods for reconnect timer
2026-03-25 14:54:57 +00:00
UberKitten
ac8cc42b7a
fix: retry OpenClipboard() on Windows
...
OpenClipboard() can fail transiently when another process holds the
clipboard mutex. Add a retry loop (5 attempts, 5ms delay) so that
Deskflow handles brief contention gracefully instead of immediately
failing.
2026-03-12 08:19:43 -04:00
sithlord48
12cf55d4fc
build: Replace WINAPI_CARBON with Q_OS_MAC
2026-03-06 08:57:31 -05:00
Luiz Sardinha
c80cd56f27
fix: properly handling infinite timeout for macOS on EventQueue
2026-02-27 19:47:59 -05:00
sithlord48
9188d4b1c1
build: require libportal 0.9.1
2026-02-26 12:52:03 +00:00
sithlord48
4c7f546c60
fix: XWindowScreen, do not send a scroll delta for 0
...
fixes : #9477
2026-02-18 18:11:38 +00:00
wake
e555b63931
fix: extra "a" with Rime and apply clang-format
2026-02-11 14:33:04 +00:00
sithlord48
a532f655c1
feat: support horizontal scrolling
...
fixes : #7220
based on 9f15b1bcf2
Co-authored-by: Evan Maddock <maddock.evan@vivaldi.net>
2026-02-11 11:59:28 +00:00
sithlord48
050cb649c2
refactor: use ScrollDelta for fakeMouseWheel
2026-02-09 09:02:21 +00:00
sithlord48
5612e99f1d
refactor: Move the scrollModifiers to ISecondaryScreen
2026-02-09 09:02:21 +00:00
sithlord48
a520e3b2e9
refactor: check settigns for invertscroll in PlatformScreen
2026-02-06 12:51:39 +00:00
sithlord48
0f6ec6c196
refactor: XWindowsScreen use a fixed minimum step value in place of the scroll speed setting
2026-02-06 12:51:39 +00:00
sithlord48
857326b274
refactor: rename PlatformScreen::mapClientScrollDirection -> PlatformScreen::applyClientScrollModifier
...
prepare for horizontal scroll support by having it handle pairs of x and y values
2026-02-06 12:51:39 +00:00
sithlord48
84e1e722c0
fix: Send extra mouse buttons on mac os servers to clients
2026-02-04 09:56:10 +00:00
sithlord48
4200de66ee
fix: scroll Issue on X11 by not checking for wheel in mapButtonToX
2026-02-04 09:45:25 +00:00
sithlord48
05c050b81e
fix: handle back mouse on xwindows and windows
...
based on : 9f15b1bcf2
fixes : #5682
2026-02-03 09:41:22 +00:00
Johannes Berg
f065979b3f
Fix: detect key repeat in libei input
...
For libei, there's no indication that a key is repeated.
However, sending repeated key down events (DKDN instead
of DKRP for the synergy protocol) can be confusing to
clients, which then causes issues like in #7971 .
Detect repeated key down events in EiScreen server and
send them to the client with the repeat flag set, so in
e.g. synergy that causes the DKRP messages, to be less
confusing.
For me this fixes an issue where the synergy client is
creating a USB device, which requires repeated events
to be entirely dropped since the host OS where the USB
device is connected will do its own repeat when a key
is held down.
2026-01-30 12:19:29 +00:00
sithlord48
1ed394e3ef
refactor: remove DEBUG3 and move DEBUG3 messages to DEBUG2
2026-01-26 12:35:00 +00:00
sithlord48
2cf4fc8d0a
refactor: remove DEBUG4 level and move any DEBUG4 messages to DEBUG3
2026-01-26 12:35:00 +00:00
sithlord48
d6ffcd37d7
refactor: remove DEBUG5 level and move any DEBUG5 message to DEBUG4
2026-01-26 12:35:00 +00:00
Nick Bolton
e7eb324f16
chore: fix typos in variable names and log messages
2026-01-22 14:30:45 +00:00
sithlord48
ed114252e2
refactor: WlClipboard, close not kill running copy process on exit
2026-01-22 12:35:54 +00:00
sithlord48
aca274e9ee
refactor: add (C) to copyright header where missing
2026-01-18 15:38:59 +00:00
sithlord48
d8dfba6372
fix: OSXScreenSaver, do not call CFRelease for empty processesNames
2026-01-13 01:13:32 +00:00
sithlord48
3ff06b7d9a
refactor: use ArchDaemonWindows::getDaemonQuitMessage directly
...
remove now unused ArchMiscWindows::getDaemonQuitMessage
2026-01-06 12:05:23 +00:00
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
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
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
525123573e
chore: use U for wlclipboard setting name
2025-11-21 10:38:50 +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
4d2597c31b
refactor: XDGKeyUtil no need to add std:: for uint32_t
2025-11-14 13:28:41 +00:00
sithlord48
281cda1d14
refactor XDGKeyUtil::mapKeyToKeyID cleanup default case make i in the if and not case the already right type returned
2025-11-14 13:28:41 +00:00
sithlord48
4a67694676
build: new build option BUILD_X11 to control building of X11 backend
2025-11-14 13:28:41 +00:00
sithlord48
f45df39032
refactor: XDGKeyUtil, make s_keySymToUCS4 static map
2025-11-14 13:28:41 +00:00
sithlord48
186a20a1ac
feat: XDGKeyUtil, use Xkbcommon Keysym names
...
this removes the need for any x11 releated headers when using EI screens
2025-11-14 13:28:41 +00:00
sithlord48
7eee265010
refactor: make s_map1008FF private static array
2025-11-14 13:28:41 +00:00
sithlord48
b3cd759a4e
chore: remove unused KeySyms Tyepdef
2025-11-14 13:28:41 +00:00
James Le Cuirot
93beb491db
fix: Split XKB code out of XWindowsUtil to allow building without X11
...
the xprotoheaders are still required for EI, but nothing more.
2025-11-14 13:28:41 +00:00
Brett Lawson
6a86c2990e
fix: Adjust OS X MouseMove handling to use live cursor position.
2025-11-11 11:15:41 -05:00
sithlord48
1875c599a4
refactor: define EventQueueTimer to its own header not once per IEventQueue impl
2025-11-10 07:08:29 -05:00
sithlord48
ab1a87ba04
chore: remove MsWindowClipboardTextConverter
2025-11-10 11:52:42 +00:00
sithlord48
d492ddfbbb
chore: LogOutputters remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
c91e051082
chore: PlatformScreen remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
7ce5ce5d41
chore: XWindowsUtils remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
68a15486ae
chore: XWindowsScreen remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
bb42cfb8fd
chore: XWindows Clipboard remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
af0321ce77
chore: XDGPowerManager remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
fbdee8e10e
chore: PortalRemoteDesktop remove unneeded includes
2025-11-07 15:54:19 -05:00
sithlord48
489d984ab6
chore: PortalInputCapture remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
1e672bb8a1
chore: EiScreen remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
6147e9604b
chore: EiEventQueueBuffer remove unneeded includes
2025-11-07 15:54:19 -05:00
sithlord48
97367a20c5
chore: OSXUchrKeyResouce remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
5a029110a3
chore: OSXScreenSaver remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
e4557c6b95
chore: OSXScreen remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
685312866b
chore: OSXKeyState remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
a0959e0334
chore OSXClipboardTextConvertor remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
a376a714e8
chore: OSXClipboardAnyBitmapConverter remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
21a7d7db4b
chore: OSXClipboard remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
8b89489d40
chore: MSWindowsHook inclue Directional Types directly not thru protocol types
2025-11-07 15:54:19 -05:00
sithlord48
e8073de989
chore: MSWindowsEventQueueBuffer remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
74e4f1a1e1
chore: MSWindowsClipboardTextConvertor remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
d9493da173
chore: MsWindowsClipboardFacade, remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
0e8fdb18d8
chore: MsWindowsClipboard, remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
e07a9f58f7
refactor: MSWindowsClipBoard, use Text converter as last option
2025-11-07 15:54:19 -05:00
sithlord48
19814c61d7
chore: MSWindowsProcess remove unused includes
2025-11-07 15:54:19 -05:00
sithlord48
8e83b16f5e
chore: move platform/Wayland.h -> common/PlatformInfo.h
2025-11-06 09:12:18 -05:00