Commit Graph

4714 Commits

Author SHA1 Message Date
akallabeth
3805575c58 Merge pull request #11384 from akallabeth/rel-mouse-change
Rel mouse change
2025-04-11 08:21:14 +02:00
akallabeth
a978a8124f [client,sdl] fix orientation update
* Properly set display orientation in display update messages
* Unify some conversion functions
2025-04-10 15:06:11 +02:00
akallabeth
da21ac3792 [client,sdl] fix clipboard updates
* Ignore updates for our own data (use a special clipboard format to
  identify these)
2025-04-10 13:25:44 +02:00
akallabeth
04c1c75d63 [client,sdl] only send relative mouse event if no cursor shown 2025-04-10 08:48:50 +02:00
akallabeth
aa816ab92c [client,x11] use rel mouse events only when no cursor set 2025-04-10 08:43:35 +02:00
akallabeth
7e11df73ba [client,common] add setting FreeRDP_MonitorOverrideFlags
use this mask to mark monitor settings set from command line.
2025-04-10 08:31:56 +02:00
akallabeth
6f8dddd5a9 [client,sdl] make std::queue thread safe 2025-04-10 08:31:52 +02:00
akallabeth
3c354a5f1b [client,sdl] refactor display update 2025-04-10 08:31:45 +02:00
akallabeth
bcdac17bda [client,sdl] wrap connection dialog
* make all getter/setter threadsafe
* decouple SDL update, run in SDL event queue
2025-04-07 17:45:45 +02:00
akallabeth
55865f1f2d [client,sdl] remove RDP and SDL thread dependencies 2025-04-07 11:10:35 +02:00
akallabeth
dde00a3646 [cmake] group project targes 2025-04-07 11:09:41 +02:00
akallabeth
96ddcd71a7 [client,sdl] quit on window close
When a window close button is pressed terminate the RDP session.
2025-04-03 15:53:57 +02:00
akallabeth
2950825dd5 [client,sdl] fix unused result warning 2025-04-03 13:41:35 +02:00
akallabeth
0a3602cb9a [client,sdl] fix multimonitor fullscreen 2025-04-03 13:37:20 +02:00
akallabeth
ec9c935c36 [client,sdl] unify all gdi_suppress_output calls 2025-04-03 12:17:11 +02:00
akallabeth
da7fefba11 Revert "[freerdp,codecs] fix deprecation for GCC"
This reverts commit 67fabc34dc.

The change eliminates the deprecation warnings but produces
Wredundant-decl warnings instead...
2025-04-03 11:32:16 +02:00
akallabeth
85523ac7d4 [client,sdl] simplify suppress output handling 2025-04-03 11:25:08 +02:00
akallabeth
6314e93939 [cmake] drop legacy and unused cmake_policy
Some cmake_policy settings have long been active by default (3.13 is our
current baseline) or simply unused. Due to issues with CMake 4.0 lets
drop them
2025-04-03 08:31:36 +02:00
akallabeth
c616b35f68 [client,mac] prefer unicode from clipboard
Some servers do not send clipboard formats in preference order. Prefer
CF_UNICODE over all localized text formats.
2025-04-02 12:55:53 +02:00
akallabeth
5db5136bde [client,windows] ignore clipboard failures 2025-03-27 15:47:09 +01:00
akallabeth
cfa63ad2f0 [client,sdl] fix return by abort event 2025-03-27 12:39:09 +01:00
akallabeth
3e0d1ae587 [client,x11] map exit code success 2025-03-27 12:12:57 +01:00
akallabeth
8d469feda0 [client,sdl] fix initial window size
* on high dpi displays set appropriate initial display size (divide
  pixel size with scale)
* send display resize on window resize events
* send display resize on any window event (minimize/maximize/expose/...)
2025-03-26 20:34:57 +01:00
akallabeth
a82e0dec2f [client,sdl] fix crash on suppress output
SDL events might be triggered before the RDP session is up. Check the
context for NULL.
2025-03-25 16:47:42 +01:00
akallabeth
64a114f69f [client,sdl] fix windows type mismatch 2025-03-25 11:53:40 +01:00
akallabeth
6f326ad1ef [clinet,sdl] send local layout to server 2025-03-25 11:11:54 +01:00
akallabeth
6f66fdf28c [client,sdl] fix assertions
On processing SDL_EVENT_WINDOW_DISPLAY_SCALE_CHANGED do not assert
functions but only their result.
2025-03-25 09:07:03 +01:00
akallabeth
0836419757 [client,x11,sdl] sync keyboard state after hotkey
If a client side key combination was detected issue a keybard state sync
to reset the server side keyboard to initial state with no keys pressed.
2025-03-25 08:37:53 +01:00
akallabeth
cc577b2361 Merge pull request #10982 from jpy794/sdl3-hidpi
Fix sdl3-freerdp blurry scaling on wayland when scale factor > 1
2025-03-24 18:30:34 +01:00
akallabeth
67f723793f [clients] remove keyboard state sync on CAPS release
The keyboard state was synced in xfreerdp (and more recently
sdl3-freerdp) when the CAPS key was released.
Some investigation revealed this to be a historic workaround for loss of
keyboard state sync (e.g. NUK, CAPS or SCROLL getting out of sync)

This can not happen anymore as all events during windows focus are
processed properly and every time the keyboard state changes outside it
is synchronized when focus is gained.
2025-03-24 18:03:40 +01:00
jpy794
0b6329bdd6 enable sdl3 hidpi
fix wait create windows

enable sdl hidpi

map mouse event

fix smart sizing

dynamic resolution in hidpi

reset drawing offset when resize is done

tirgger a full redraw to sdl window after resizing

format & fix warning

sdl hidpi cursor workaround

clean up

format
2025-03-25 00:51:31 +08:00
akallabeth
965d47d11a [client,sdl] sync keyboard state on capslock
Copy behavior from xfreerdp to keep the capslock state in sync.
2025-03-24 09:44:48 +01:00
akallabeth
1f8989c271 [client,sdl] query keyboard grab directly from settings 2025-03-24 09:38:09 +01:00
akallabeth
b581999e38 [client,sdl] initialize keymap remap table on first event 2025-03-22 21:33:54 +01:00
akallabeth
d41c2b3dc8 ]client,x11] fix unicode lookup 2025-03-22 20:49:35 +01:00
akallabeth
4fcc44fe72 [client,cmdline] fix rdp2tcp parsing
allow command lines without this channel to succeed as well.
2025-03-20 17:45:47 +01:00
akallabeth
1f26225f69 [client,cmdline] fix rdp2tcp argument passing 2025-03-20 17:31:20 +01:00
akallabeth
e0175d1074 Merge pull request #11381 from akallabeth/code-cleanups2
abi-checker improvements
2025-03-20 09:31:37 +01:00
akallabeth
2c796d0840 [client,x11] fix cast for LogTagAndXChangeProperty 2025-03-20 09:18:17 +01:00
akallabeth
34f6927c12 Merge pull request #11369 from akallabeth/sdl3-clip-png
Sdl3 clip png
2025-03-20 09:06:38 +01:00
Armin Novak
9a1f455e02 [client,sdl] fix constructor and keyword consistency 2025-03-19 19:00:07 +01:00
Armin Novak
0a0248ebe2 [client,x11] rename _NET_* variables and defines
avoid using restricted _
2025-03-19 18:59:56 +01:00
Armin Novak
c817cf48d1 [client,x11] register HTML clipboard format for images 2025-03-19 12:49:10 +01:00
akallabeth
fe6b05dbf4 [client,sdl3] register HTML Format for images
Provide data as inline HTML image tag
2025-03-19 12:49:06 +01:00
akallabeth
5dd1a7173a [client,sdl] log keyboard shortcut pressed 2025-03-19 11:06:14 +01:00
akallabeth
1bd4f0b146 [client,x11] add <ctrl>+<alt>+d shortcut
allow immediate disconnect of a session with a keyboard shortcut.
2025-03-19 11:06:09 +01:00
akallabeth
14b2dc08eb [client,common] fix rdp parser
freerdp_client_file_string_reset used a return type but did not return
any value.
2025-03-18 17:32:22 +01:00
Martin Fleisz
22ace7e5c6 client: Fix population of string settings in rdp file
When calling `freerdp_client_populate_rdp_file_from_settings` you should
expect that all settings are populated to the rdp file instance. However
certain settings (i.e. cameras to redirect) where only updated if they
had a value but did not reset the setting.

This causes trouble if the file instance was used to load settings,
settings were altered and then populated back to the file instance.
2025-03-18 14:27:26 +01:00
Martin Fleisz
c1c103b9f3 Merge pull request #11362 from akallabeth/cmake-warn-verbose
[cmake] add explicit instructions to turn off unmaintained modules
2025-03-17 16:42:13 +01:00
akallabeth
e3c93573f3 [cmake] add explicit instructions to turn off unmaintained modules
* Add detailed CMake warning to disable unmaintained modules
* Add sample shadow subsystem implementation
* Allow building shadow server with dummy subsystem
2025-03-17 16:23:51 +01:00