Commit Graph

22660 Commits

Author SHA1 Message Date
akallabeth
dcdfd36990 Merge pull request #12173 from akallabeth/sdl3-high-dpiv2
Sdl3 high dpiv2
2026-01-27 16:12:48 +01:00
Armin Novak
501740404f [client,sdl] check for XWayland for warning
Also check for a wayland environment if the SDL driver is x11. This is
also affected by the multimonitor bug.
2026-01-27 15:35:12 +01:00
akallabeth
d19714d706 Merge pull request #12194 from akallabeth/gdi-checks
[gdi] add additional checks for a valid rdpGdi
2026-01-27 15:23:09 +01:00
Armin Novak
00cfc36987 [client,sdl] warn about multimonitor issues 2026-01-27 15:22:44 +01:00
Armin Novak
197ac808fd [client,sdl] handle render events in SdlContext 2026-01-27 15:22:42 +01:00
Armin Novak
03c350950a [client,sdl] handle input events in SdlContext 2026-01-27 15:22:41 +01:00
Armin Novak
ba07955689 [client,sdl] handle clipboard events in SdlContext 2026-01-27 15:22:40 +01:00
akallabeth
dcdde8122d [client,sdl] adjust nodiscard use for dialogs 2026-01-27 15:22:39 +01:00
akallabeth
d74eecff3b [client,sdl] ignore set_mouseover result
The function might return false if no item was selected.
2026-01-27 15:22:37 +01:00
akallabeth
57034f2294 [client,sdl] fix compiler warnings 2026-01-27 15:22:36 +01:00
akallabeth
947427a911 [client,sdl] simplify event handling
pass on events to SdlContext and let the class handle it internally
2026-01-27 15:22:35 +01:00
akallabeth
9468720d93 [client,sdl] refactor sdlInput
* fix return types, use standard types instead of WinPR ones
* rename files, match class names
2026-01-27 15:22:33 +01:00
akallabeth
7f434db04a [client,sdl] use SdlContext scaling functions 2026-01-27 15:22:32 +01:00
akallabeth
c6b104cce0 [client,sdl] wrap mouse cursor move in SdlContext 2026-01-27 15:22:31 +01:00
akallabeth
2e7639d903 [client,sdl] add coordinat conversion functions
* pixel to screen mapper
* screen to pixel mapper
* local scaling add/remove for smart-sizing
2026-01-27 15:22:30 +01:00
akallabeth
02a9d61182 [client,sdl] remove unused channel function definitions 2026-01-27 15:22:28 +01:00
akallabeth
e3d3bc363c [client,sdl] add util stringify functions 2026-01-27 15:22:27 +01:00
akallabeth
7258c77838 [client,sdl] fix local scaled drawing
* Add scaling factor to drawing routines
* Update local scaling on each draw
2026-01-27 15:22:25 +01:00
akallabeth
842624f25a [client,sdl] check function return in dialogs 2026-01-27 15:22:24 +01:00
akallabeth
1ce038c12b [client,sdl] unify stringification functions 2026-01-27 15:22:23 +01:00
akallabeth
abdedab33c [client,sdl] encapsulate and unify event handling
* move event handling to SdlContext
* name functions similar
2026-01-27 15:22:22 +01:00
akallabeth
49ddfe65f9 [client,sdl] add toString methods for various types
* unify and add toString methods for types
* add missing event types
2026-01-27 15:22:21 +01:00
akallabeth
743e1a6799 [client,sdl] add new SdlWindow members
* get orientation of window on display
* get window size (in logical size)
2026-01-27 15:22:20 +01:00
akallabeth
2bbe3310ba [warnings] fix compiler and clang-tidy issues 2026-01-27 15:22:18 +01:00
akallabeth
4c15ec1b99 [client,sdl] add nodiscard to functions 2026-01-27 15:22:17 +01:00
akallabeth
845ef25997 [client,sdl] fix unused return warnings 2026-01-27 15:22:15 +01:00
akallabeth
caffbab7d4 [client,sdl] fix display channel updates
* always send updates if enabled and a monitor setting changed
* properly handle window and display updates
2026-01-27 15:22:14 +01:00
akallabeth
636590374a [client,sdl] mark functions nodiscard
* mark all SDL client functions nodiscard to emit warnings if the return
  is not properly checked
* refactor some member functions, move implementation from header to
  source
2026-01-27 15:22:13 +01:00
akallabeth
2fe15703b3 [client,sdl] split SdlContext to separate files 2026-01-27 15:22:12 +01:00
akallabeth
5f8c0a86d9 [client,sdl] encapsulate window class 2026-01-27 15:22:11 +01:00
akallabeth
f183b1d258 [client,sdl] add utils functions
* Add HighDpiScaleMode platformScaleMode(): get the platform specific
  high dpi hangling type
* Move and rename sdl exit codes to separate namespace
* mark all functions [[nodiscard]]
2026-01-27 15:22:10 +01:00
akallabeth
af48763b9a [client,sdl] simplify sdl thread startup 2026-01-27 15:22:08 +01:00
Armin Novak
92fde0f6b3 [gdi] add additional checks for a valid rdpGdi
some client implementations do not properly set up the gdi, so abort
gracefully.
2026-01-27 15:07:10 +01:00
akallabeth
b5b451e35b Merge pull request #12192 from akallabeth/nodiscard
[winpr,platform] drop C23 [[nodiscard]]
2026-01-27 13:17:49 +01:00
Armin Novak
f443c1bc6f [winpr,platform] drop C23 [[nodiscard]]
In WINPR_ATTR_NODISCARD drop the C23 [[nodiscard]] until we figure out
how to avoid compiler errors on fedora/gcc 15
2026-01-27 12:59:22 +01:00
akallabeth
eab2ce351e Merge pull request #12190 from akallabeth/winpr-api-def
Winpr api def
2026-01-27 12:41:37 +01:00
akallabeth
cf63326799 [winpr,platform] fix duplicate deprecation define 2026-01-27 12:15:03 +01:00
akallabeth
24f71fd3d4 [channels,disp] improve log message
log all monitor details of the layout sent over the display channel.
2026-01-27 12:14:05 +01:00
akallabeth
f56c215ece Merge pull request #12189 from akallabeth/assert-fix
[channels,drdynvc] check pointer before reset
2026-01-27 09:22:48 +01:00
Armin Novak
cb7f295bc7 [channels,drdynvc] check pointer before reset 2026-01-27 08:58:41 +01:00
akallabeth
076a8386a6 Merge pull request #12186 from akallabeth/error-handling-fixes
Error handling fixes
2026-01-26 17:05:19 +01:00
akallabeth
b9c23252f1 [channels,urbdrc] fix msusb_msingerface_free
declare before use in WINPR_ATTR_MALLOC
2026-01-26 16:52:30 +01:00
akallabeth
390a8d3555 Merge pull request #12187 from akallabeth/nodiscard
[utils] Nodiscard
2026-01-26 14:51:55 +01:00
akallabeth
08415bda4d [settings] mark functions [[nodiscard]]
* All getters marked (obviously only required to get the value)
* Copy and parser functions marked (invalid state if they fail)
2026-01-26 13:39:42 +01:00
akallabeth
1e4c1cd526 [winpr] mark all WINPR_ATTR_MALLOC also nodiscard 2026-01-26 13:39:41 +01:00
akallabeth
7990eec166 [freerdp] mark all WINPR_ATTR_MALLOC also nodiscard 2026-01-26 13:39:39 +01:00
akallabeth
460ca149f2 [server] mark all WINPR_ATTR_MALLOC also nodiscard 2026-01-26 13:22:30 +01:00
akallabeth
3a8eeaa24a [rdtk] mark all WINPR_ATTR_MALLOC also nodiscard 2026-01-26 13:22:29 +01:00
akallabeth
495a82c463 [client] mark all WINPR_ATTR_MALLOC also nodiscard 2026-01-26 13:22:28 +01:00
akallabeth
538620e1bb [channels] mark all WINPR_ATTR_MALLOC also nodiscard 2026-01-26 13:22:27 +01:00