Commit Graph

226 Commits

Author SHA1 Message Date
akallabeth
56d660f258
[cmake] mark dependency includes SYSTEM
Mark all dependency include paths SYSTEM so warnings from system headers
are excluded from ci warning statistics
2024-08-26 11:10:49 +02:00
akallabeth
49dc431045
[client,sdl] add support for /monitors argument 2024-08-23 14:00:47 +02:00
akallabeth
37008506c2
[client,sdl] remove tab from dialog messages 2024-08-20 13:31:41 +02:00
akallabeth
39e8c077d4
[client,sdl] improve VerifyCertificate message
* Use FreeRDP_CertificateCallbackPreferPEM for callbacks
* Add notBefore and notAfter dates to callback messages
2024-08-20 12:42:51 +02:00
David Fort
4e6f7fb989 [sdl3] fix build against last SDL3 2024-08-12 11:50:02 +02:00
Armin Novak
44b07721ec
[client,X11] fix ActionScript
* Unify script calls
* Update documentation
* Fix home directory
2024-07-25 09:42:03 +02:00
akallabeth
e72bec8441
[client,SDL] fix thread termination order
* Wait in SDL thread until RDP thread has terminated to avoid race
  conditions during autoreconnect
* Fix exit code mappings in case the connection was cancelled
2024-07-19 09:10:32 +02:00
akallabeth
b0320d8068
[client,SDL] fix autoreconnect
retry on handle check failure, not if WaitForMultipleObjects fails
2024-07-18 15:31:24 +02:00
Armin Novak
d3efbe004d [client,x11,sdl] fix manpage generation
* fix name of xfreerdp manpages
* fix name of sdl-freerdp manpages
2024-07-04 12:11:26 +02:00
akallabeth
46bced61fb
[cmake] fix cross compilation
helper utilities are now compiled on host only
2024-07-02 13:24:38 +02:00
akallabeth
4099bd4e45
[warnings] integer casts/checks 2024-07-02 12:38:00 +02:00
akallabeth
95eefc7fb8
[client,sdl] add_scheme_handler stub for windows 2024-07-02 08:31:51 +02:00
akallabeth
fc5ed616c7
[client,sdl] fix typo 2024-06-17 09:14:35 +02:00
akallabeth
711a6603f2
Merge pull request #10267 from akallabeth/sdl-fix
[client,SDL2] fix renderer height
2024-06-08 09:43:00 +02:00
akallabeth
221a442270
[client,sdl] keep hotkey state of keyboard grab
keep the keyboard grab state from:
1. +/-grab-keyboard command line as default
2. toggle this state by hotkey later on
2024-06-08 09:30:28 +02:00
akallabeth
a6abca5e89
[client,SDL2] fix renderer height 2024-06-08 09:08:49 +02:00
akallabeth
04e3fe0b06
[client,sdl] update manpages
* Respect default configuration directory depending on
  WITH_FULL_CONFIG_PATH
* Unify manpage files for SDL2 and SDL3
2024-06-06 11:42:09 +02:00
akallabeth
7aa72a7507
[core,settings] unify configuration paths
* Add new function freerdp_settings_get_config_path to get current
  user configuration directory
* Add CMake option WITH_FULL_CONFIG_PATH (default OFF): If defined, use
  <appdata>/Vendor/Product as config directory, otherwise use
  <appdata>/vendor (lowercase, only if vendor equal to product)
2024-06-06 11:31:22 +02:00
akallabeth
ad83ba2088
[client,sdl3] fix typo in variable 2024-06-06 11:31:12 +02:00
Armin Novak
cedc631b3e
[client,SDL] add windows WebView2 link
Add a CMake script to download and link WebView2 for SDL client
2024-06-05 13:52:10 +02:00
akallabeth
42f1da7132
[client,SDL] add webkit2gtk4.1 support 2024-06-04 12:55:34 +02:00
akallabeth
cdc8d62108
[client,sdl] move parsing of hotkeys to constructor
* implement that for SDL3 just like for SDL2
* rename members to conform to style of file
2024-06-03 11:05:07 +02:00
Michael Tokarev
f8cb7d86f6 SDL2: sdl_kbd: parse keyboard config once instead of at each keypress
Currently, sdl-freerdp.json file is parsed at every keypress, which
is just wrong.  Instead, parse it at startup and remember the key
configuration for the whole session.

The same should be done for SDL3 I guess.

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2024-05-30 11:53:48 +03:00
akallabeth
3261598d42
[client,sdl] guard USE_COMPILED_RESOURCES
functions only required with USE_COMPILED_RESOURCES should not be
compiled if the option is not set.
2024-05-25 09:17:20 +02:00
akallabeth
06598da910
[client,sdl] fix resourcemanager
due to moving to a static class the C++ initializer did no longer work.
add explicit calls for initializers to ensure the generated classes are
referenced.
2024-05-24 09:46:07 +02:00
akallabeth
2efcf1c436
[client,sdl] Use SDL_CreateWindowAndRenderer
Recommendated in https://github.com/libsdl-org/SDL/issues/9076
2024-05-24 08:59:10 +02:00
akallabeth
e72f634fba
[client,sdl] automatically use detected SDL
* Automatically enable detected SDL version
* Abort if no SDL version is detected
2024-05-16 23:07:07 +02:00
akallabeth
ff772084e6
[client,sdl] add assignmen and move operator delete 2024-05-16 20:50:07 +02:00
akallabeth
cc038ad89b
[client,sdl] merge SDL2 and SDL3 projects 2024-05-16 20:34:11 +02:00
akallabeth
8281186a6d
[client,sdl] create a copy for SDL3
* Copy SDL2 client to SDL3 as the new version is not API compatible
* Move existing SDL2 client to SDL2 directory
* Move fonts from SDL client to resources folder in top level directory
2024-05-16 18:27:11 +02:00
Ondrej Holy
3f97fb59ad
[client,sdl] add test case for SDL prefs
Let's add test case for SDL prefs functionality. This is to test the
JSON wrapper to ensure it doesn't break something.
2024-05-16 16:51:44 +02:00
akallabeth
632f500f3e
[client,sdl] refactor SdlPref
* Wrap in class
* Allow overriding default configuration file for tests
2024-05-16 15:37:22 +02:00
Ondrej Holy
945c496812
[client,sdl] use WITH_WINPR_JSON instead of WINPR_JSON_FOUND
The WINPR_JSON_FOUND macro is never defined currently. Consequently,
the SDL prefs always use the fallback implementation. Let's use the
WITH_WINPR_JSON instead to really parse the sdl-freerdp.json file.
2024-05-16 11:56:17 +02:00
Ondrej Holy
e197d27c8d
[client,sdl] move prefs to static lib
This is in preparation for the subsequent commit adding test case for
the prefs functionality to avoid building the code twice.
2024-05-16 11:56:13 +02:00
Ondrej Holy
702acc93c6
[client,sdl] remove duplicated include statement 2024-05-16 11:55:58 +02:00
akallabeth
aaded541d9
[core,client] replace cJSON with WinPR wrapper
use the new WinPR JSON wrapper API
2024-05-14 20:45:31 +02:00
Armin Novak
c172713c41 [client,sdl] handle dialog on key up event
Handle keyboard input dialog status change on key up event. If handled
on key down event the dialog closes and the key up event is handled on
the next SDL event queue (usually connection dialog cancel)
Fixes #10133
2024-04-24 10:35:22 +02:00
akallabeth
3cf4bac0e8 [client,sdl] implement key remapping 2024-04-19 12:59:01 +02:00
Armin Novak
390762bff9 [client,sdl] initialize member 2024-04-17 18:47:16 +02:00
Armin Novak
2500fb7bfb [cleanup] refactor some checks 2024-04-15 12:40:01 +02:00
Armin Novak
587175fdb8 [coverity] 1543090 Division or modulo by float zero 2024-04-15 12:40:01 +02:00
Armin Novak
8633a437e0 [coverity] 1543094 Use of auto that causes a copy 2024-04-15 11:30:31 +02:00
Armin Novak
a77a0c45d7 [coverity] 1543261 Not restoring ostream format 2024-04-15 11:30:31 +02:00
Armin Novak
b197ae8a05 [coverity] 1543280 Data race condition 2024-04-15 11:30:31 +02:00
akallabeth
793145b8c5 [coverity] 1543198 Explicit null dereferenced 2024-04-12 09:45:09 +02:00
akallabeth
678ff144ab [cmake] unify windows resource file generation
* use a macro to add resource files for executables and shared libraries
* use that macro to declare targets
* use that macro to set library/binary versioning
* use that macro to set target output name
* use a macro to create manpages and names
2024-03-20 11:17:18 +01:00
akallabeth
1f22a4f954 [client,sdl] ignore blit that does not intersect
SdlWindow::blit might be called for areas that do not intersect the
surface. Return success in such cases to avoid terminating a session.
2024-03-11 12:32:35 +01:00
akallabeth
43a70ccb90 [client,sdl] use std::filesystem u8string() 2024-02-27 14:10:14 +01:00
akallabeth
f84108010b [client,sdl] use uint32_t instead of SDL_Keymod
the SDL_Keymod enum is not suitable to hold a mask of SDL_Keymod values
2024-02-23 10:02:08 +01:00
akallabeth
517cd69107 [client,sdl] remove not existing docbooc xml 2024-02-23 10:02:08 +01:00