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
akallabeth
a2b220f828
[client,sdl] fix smartcard pin dialog result
2024-02-22 13:13:49 +01:00
akallabeth
5d3ffea061
[client,sdl] unify window related operations
...
Access window related operations only in SdlWindow class
2024-02-22 13:13:49 +01:00
akallabeth
867e663872
[client,sdl] add windowevent-id to string
2024-02-22 13:13:49 +01:00
akallabeth
8492738b0d
[client,sdl] tidy up code
2024-02-22 13:13:49 +01:00
akallabeth
d7ebec5a65
[tidy] move loop variable declaration to loop
2024-02-22 12:31:50 +01:00
Armin Novak
62f974a5c2
[client,sdl] add shortcut config file
...
Allow keyboard shortcuts to be configured via config file.
2024-02-22 12:24:51 +01:00
MatteoBax
29b38506b9
Fix undeclared identifier ORIENTATION_PREFERENCE_LANDSCAPE_FLIPPED
2024-02-21 08:48:55 +01:00
akallabeth
75b1ce8ef6
[client,sdl] relax CriticalSection locking
...
When disconnecting the SDL client it is sufficient to no longer process
SDL events. Locking the CriticalSection during disconnect might lead to
a deadlock.
2024-02-20 16:31:50 +01:00
akallabeth
f3c0d22005
[client,sdl] thread safe RDP disconnect
...
When the RDP session is terminated ensure that no more SDL events are
processed as they might try to access RDP context data.
2024-02-20 09:25:33 +01:00
akallabeth
fd49e00f9c
[warning] use nullptr for C++ code
2024-02-15 11:49:16 +01:00
akallabeth
0e44b2c674
[clang-tidy] clang-analyzer-unix.Malloc
2024-02-15 11:49:16 +01:00
akallabeth
0ba995655d
[clang-tidy] cppcoreguidelines-init-variables
2024-02-15 11:49:16 +01:00