akallabeth
207def5c56
[clang-tidy] readability-isolate-declaration
2024-02-15 11:49:16 +01:00
akallabeth
e2e6d09256
[cmake] use DEFAULT_DEBUG_OPTION for all
2024-02-13 17:06:00 +01:00
akallabeth
b193f9ab59
[cmake] guard cmake_policy(CMP0091)
...
only set the policy to NEW if it is defined
2024-02-13 16:22:37 +01:00
Armin Novak
cc558bd4c5
[client,sdl] add missing include
2024-02-10 06:57:34 +01:00
akallabeth
8b04ab53eb
[cmake] disable WITH_WEBVIEW if not build on linux/bsd
2024-01-29 10:01:23 +01:00
akallabeth
465745131e
[client,sdl] fix verbose logging
...
only call SDL_DestroyTexture if texture != NULL
2024-01-22 13:09:25 +01:00
Armin Novak
a45e464d6f
[client,SDL] check for timer initialized
...
before manipulating SDL timers check if the SDL subsystem was actually
initialized. Fixes #9736
2024-01-10 19:53:05 +01:00
akallabeth
2b39afcc7a
[client,SDL] optimize map lookup
2024-01-05 09:18:07 +01:00
Armin Novak
a7decba8c2
[cmake] unify common options
2023-12-22 16:21:30 +01:00
Armin Novak
7debd0f621
[cmake] set policy 0091
...
On windows we need to set the runtime linker settings extra
https://cmake.org/cmake/help/latest/policy/CMP0091.html
2023-12-22 15:37:56 +01:00
Armin Novak
19d3c27e3d
[cmake] link SDL only static if explicitly requested
2023-12-22 15:37:56 +01:00
Armin Novak
11d84f067d
[client,sdl] fix full static linking
2023-12-22 15:37:56 +01:00
Armin Novak
175a3ca09a
[cmake] do not append EXECUTABLE_SUFFIX to OUTPUT_NAME
2023-12-22 15:37:56 +01:00
Armin Novak
7d641a67b9
[doc,manpage] name manpages versioned
...
if WITH_BINARY_VERSIONING is activated also version the manpages to
match the binary names
2023-12-22 10:24:09 +01:00
Armin Novak
2b654a8226
[client,sdl] use versioned resource location
...
if WITH_BINARY_VERSIONING is ON also use versioned resource locations.
2023-12-22 10:24:09 +01:00
Armin Novak
b04271ae2d
[cmake] add executable versioning
...
optionally append API version to generated binaries
2023-12-21 18:56:51 +01:00
Armin Novak
7f25a7cebf
[cmake] provide default project version
...
each subproject inherits the project version of the top level project
2023-12-21 18:56:51 +01:00
Armin Novak
3e53b3ecce
[client,sdl] work around c++ static initialization
...
wrap the factory map in a function to ensure it is initialized first.
2023-12-21 16:34:04 +01:00
Armin Novak
8fa938f629
[client,sdl] make dialog image support optional
2023-12-21 16:34:04 +01:00
Armin Novak
fcdb1a6fd4
[client,sdl] dialogs respect UseCommonStdioCallbacks
...
If FreeRDP_UseCommonStdioCallbacks is set do not show connection/error
dialogs but only print to console
2023-12-21 12:26:24 +01:00
Armin Novak
ad0de52ab6
[client,sdl] show error dialog on session quit
...
if a session is terminated in an unusual way (e.g. not user action) show
an error dialog.
2023-12-21 07:11:12 +01:00
Armin Novak
c395094f73
[client,sdl] fix connection dialog reset
...
only clean up on sdl thread quit to show error dialogs after the RDP
connection already terminated.
2023-12-21 07:11:12 +01:00
Armin Novak
46179077b9
[client,sdl] reset connection dialog on sdl quit
2023-12-20 23:16:10 +01:00
Armin Novak
c269086765
[client,sdl] show a logo on connection dialog
...
* Show a icon to indicate the type of message
* Show the FreeRDP logo below the icon
2023-12-20 23:16:10 +01:00
Armin Novak
23f8fd2fee
[client,sdl] lock connection dialog access
...
might happen from different threads.
2023-12-20 23:16:10 +01:00
Armin Novak
3bdaca81d0
[client,sdl] fix c++ static initialization order
2023-12-20 23:16:10 +01:00
Armin Novak
3095814184
[client,sdl] add pre std::filesystem compatibility
2023-12-20 23:16:10 +01:00
Armin Novak
187f562098
[client,sdl] generate binary resources during build
2023-12-20 23:16:10 +01:00
Armin Novak
41665700bb
[client,sdl] added resource manager
2023-12-20 23:16:10 +01:00
Armin Novak
c952fae5b1
[client,sdl] add icon to connect dialog
2023-12-20 23:16:10 +01:00
Armin Novak
35d584287d
[client,sdl] improve file to array helper
2023-12-20 23:16:10 +01:00
Armin Novak
dd7115889d
[client,sdl] improve connection dialog
2023-12-20 23:16:10 +01:00
Armin Novak
765129aacf
[client,sdl] improve dialog test drawing
2023-12-20 23:16:10 +01:00
Armin Novak
5e6ca89ded
[client,sdl] add SDL quit event wrapper
2023-12-20 23:16:10 +01:00
Armin Novak
a8eaf2a38d
[client,sdl] improve dialog button highlighting
...
move state to buttons or button list
2023-12-20 23:16:10 +01:00
Armin Novak
e6384c06c2
[client,sdl] fix smartcard chooser dialog
2023-12-20 23:16:10 +01:00
Armin Novak
b89f025c5b
[client,sdl] hide connection dialog
...
if another dialog is shown hide the connection dialog.
2023-12-20 23:16:10 +01:00
Armin Novak
caac867c79
[client,sdl] fix ubuntu 20.04 compatibility
2023-12-20 23:16:10 +01:00
Armin Novak
e1de32f9ab
[client,sdl] add connection dialog
2023-12-20 23:16:10 +01:00
Armin Novak
6e718f7958
[client,sdl] add signal termination handler
2023-12-20 23:16:10 +01:00
Armin Novak
7ba84737ba
[client,sdl] wrap sdl windows in c++ class
...
use RAII for SDL window creation/destruction by wrapping it in
SdlWindow constructor/destructor
2023-12-20 11:24:31 +01:00
Armin Novak
65da185275
[client,sdl] respect -decorations
...
Disable window borders if requested, fixes #9673
2023-12-20 09:27:39 +01:00
Armin Novak
c064d54cb1
[client,sdl] add manpage
2023-12-20 09:21:31 +01:00
Armin Novak
8df97272b7
[client,sdl] correctly handle AuthenticateEx
2023-12-20 09:07:35 +01:00
Nicolas Höft
396e13a928
[client,sdl] Do not disable compositing on Linux
...
This can be overridden by setting the environment variable
SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR=1
2023-12-16 20:57:53 +01:00
Armin Novak
ed4c1e1685
[client,sdl] unify dialog result wait
2023-12-15 09:11:33 +01:00
Armin Novak
f4bc5e69c2
[client,sdl] handle smartcard logon dialog error
2023-12-15 09:11:33 +01:00
Armin Novak
749da7eefc
[client,sdl] add smartcard chooser dialog
2023-12-15 09:11:33 +01:00
st0ne77
8dc01cebb0
[client,sdl] propagate error from auth dialog
2023-12-15 09:11:33 +01:00
Armin Novak
67f4dcabdc
[git] remove build artifact
2023-12-12 19:36:54 +01:00
Armin Novak
d89ef74163
[client,sdl] use SDL timer for display resize
...
* use SDL timer instead of freerdp implementation
* Disable timer after all events have been processed
2023-12-11 11:59:45 +01:00
Armin Novak
f4fcf3f96f
[client,sdl] fix crash #9627
...
lock SDL context while recreating window structures.
2023-12-11 11:59:45 +01:00
Armin Novak
6f6c0248f0
[client,common] check for relative mouse events
...
Added freerdp_client_use_relative_mouse_events to tell the client if the
coordinates should be relative or absolute
2023-12-06 10:45:01 +01:00
akallabeth
615fcc4370
[cmake] prevent in source builds
2023-11-28 12:14:55 +01:00
akallabeth
4e438d1c3e
[client] make settings opaque
2023-11-24 14:54:56 +01:00
Armin Novak
e0e72f9c28
[cmake] use CMAKE_MSVC_RUNTIME_LIBRARY
...
* Increase required CMake version to 3.15 (windows only)
* Use
https://cmake.org/cmake/help/latest/prop_tgt/MSVC_RUNTIME_LIBRARY.html#prop_tgt:MSVC_RUNTIME_LIBRARY
to select windows runtime
2023-11-16 10:40:04 +01:00
Armin Novak
70a360bf38
[client,sdl] clear screen on resize
...
* clear screen on window resize
* redraw window on window resize
2023-11-06 08:48:49 +01:00
Armin Novak
1bb09089a7
[client,sdl] ignore LOGON_MSG_SESSION_CONTINUE
...
do not display a popup for this kind of message.
2023-11-03 08:25:02 +01:00
Max Roncace
eefe052690
[client,sdl] Fix primary monitor logic in multimon
2023-10-13 16:06:18 +02:00
Max Roncace
7e50a92eb9
[client,sdl] Fix stored window offset for multimon
...
SDL_WINDOWPOS_CENTERED_DISPLAY returns a magic value which causes issues
when it's eventually passed to SDL_BlitSurface.
Fixes #9441
2023-10-13 16:05:39 +02:00
akallabeth
927b553ad7
[client,sdl] send relative mouse button events
2023-10-13 16:05:27 +02:00
akallabeth
c7b123076a
[client,sdl] keep SDL_RWops open
...
the application crashes if we close the SDL_RWops after opening the
font. keep it open until the widget is destroyed
2023-10-10 22:59:53 +02:00
akallabeth
33c1183fe1
[client,sdl] fixed tests and detection
...
* add a pkg-config fallback for SDL2_ttf, current ubuntu does not ship
the cmake config
* deactivated SDL dialog test cases, now compiles properly
2023-10-10 22:59:53 +02:00
akallabeth
0529658e75
[cmake] cleaned out unused cmake files
2023-10-10 22:59:53 +02:00
Armin Novak
7a4e989dcb
[client,sdl] fix #9442 : handle alt+tab fullscreen
2023-10-10 12:33:29 +02:00
akallabeth
54a5512939
[client,sdl] fix RWops leak
2023-09-14 15:59:57 +02:00
akallabeth
285add3a85
[client,sdl] use SDL_WaitEventTimeout
...
polling is expensive, so use a waitable function instead
2023-08-31 11:39:22 +02:00
akallabeth
60dd48e698
[api] fix integer overflow warnings
2023-08-25 14:36:05 +02:00
akallabeth
bb5345c60e
[freerdp,api] add FREERDP_ENTRY_POINT
...
C requires prototypes or compilers will complain about them missing. Our
library entry points do not have such, therefore add the macro
FREERDP_ENTRY_POINT which declares the function prototype automatically
before the function.
2023-08-25 14:36:05 +02:00
akallabeth
ad11ef916c
[client,sdl] fix compiler warnings
2023-08-25 12:56:36 +02:00
Kimon Hoffmann
8ec4d20616
[cmake] Locate PkgConfig module with find_package() instead of include(FindPkgConfig)
...
This is the contemporary way of including find modules and including the
find module this way avoids cmake errors in conjunction with
find_package_handle_standard_args().
Signed-off-by: Kimon Hoffmann <Kimon.Hoffmann@lawo.com>
2023-08-21 12:43:56 +02:00
Armin Novak
fafc2e61f9
[client,sdl] redirect sdl log to wlog
2023-08-04 12:59:11 +02:00
akallabeth
8470b6ea26
[cmake] set default build type
...
set with CACHE STRING FORCE to properly be picked up by configuration
tools
2023-08-04 12:59:11 +02:00
akallabeth
0e458c8c2c
[cmake] WITH_WEBVIEW new defaults
...
* Enable by default now
* Use a config file to detect if it is enabled
2023-08-04 12:59:11 +02:00
Armin Novak
7ad32b3e2a
[client,sdl] clean up code
...
use local variable for often used accessor
2023-07-31 13:41:26 +02:00
Armin Novak
ff26ca1e39
[client,sdl] use member instead of static variable
2023-07-31 13:41:26 +02:00
Armin Novak
b3fdebfdf7
[client,sdl] position windows centered on monitor
2023-07-31 13:41:26 +02:00
Armin Novak
eca4017c8b
[client,sdl] enable multimon support for display channel
2023-07-31 13:41:26 +02:00
Armin Novak
aa2c48840a
[client,sdl] fix high dpi detection
...
* convert dpi value to percentage used by RDP
* fix detection of current monitor resolution for SDL windows
2023-07-31 13:41:26 +02:00
Dan Holliday
1d64c8d93c
Started to add support for multi-monitor.
2023-07-31 13:41:26 +02:00
Dan Holliday
75bc1505ab
Added the ability to quite the RDP session by pressing "r-ctrl + shift + D". The reason for this is when in full screen I have no way to exit from xrdp if I don't want to close my session.
2023-07-31 13:41:26 +02:00
Dan Holliday
7234b0a2f1
Added the ability to quite the RDP session by pressing "r-ctrl + shift + D". The reason for this is when in full screen I have no way to exit from xrdp if I don't want to close my session.
2023-07-31 13:41:26 +02:00
Dan Holliday
8c584c29dd
Started to add support for multi-monitor.
2023-07-31 13:41:26 +02:00
Dan Holliday
4eee7a54ad
Added the ability to quite the RDP session by pressing "r-ctrl + shift + D". The reason for this is when in full screen I have no way to exit from xrdp if I don't want to close my session.
2023-07-31 13:41:26 +02:00
Armin Novak
3df928a8d2
[client,sdl] fixed member initialization order and casts
2023-07-28 13:42:12 +02:00
Armin Novak
e61880d077
[standard] replace __FUNCTION__ with __func__
2023-07-27 20:02:43 +02:00
Armin Novak
9ea1ab285b
[client,sdl] set gui consent message
2023-07-26 20:50:21 +02:00
Armin Novak
4f0ca73be6
[cmake] set MSVC runtime for SDL client
2023-07-26 16:19:07 +02:00
Armin Novak
0cd774d2c0
[client,sdl] fix cleanup order
...
destroy SDL_Renderer before SDL_Window
2023-07-25 09:11:11 +02:00
Armin Novak
4816a7d2a5
[cmake] require freetype for sdl2ttf
2023-07-24 10:49:38 +02:00
Armin Novak
315acc6aa9
[client,sdl] fix std::vector initialization
...
MSVC 2013 does not like too large vector initialization, work around
with https://stackoverflow.com/questions/31028941/how-to-avoid-compiler-limit-compiler-stack-overflow-with-large-vector-inits/31029335#31029335
2023-07-24 10:49:38 +02:00
Armin Novak
f00e73cec4
[client,sdl] fix constructor, initialize pointers
...
some initialization might fail, so initialize them beforehand.
2023-07-24 10:49:38 +02:00
akallabeth
80091cba6a
[client,sdl] add MSVC macro for missing noexcept
2023-07-21 14:53:19 +02:00
akallabeth
33d8e8e41b
[client,sdl] replace memset with c++ string iteration
2023-07-21 14:53:19 +02:00
akallabeth
9eb80ffb19
[client,sdl] add dialog paste support
2023-07-21 14:53:19 +02:00
akallabeth
6be08815e5
[client,sdl] add OpenSans license and ttf font
2023-07-21 09:50:02 +02:00
Armin Novak
b28521d2d9
[client,sdl] use TTF_OpenFontRW
...
In combination with SDL_RWFromConstMem the font can be embedded without
using an intermediate file to load it from.
2023-07-21 09:50:02 +02:00
akallabeth
b259545bbb
[client,sdl] update AAD/AVC callback handling
2023-07-21 09:14:54 +02:00
Armin Novak
1b79b60634
added webview scheme handler
2023-07-21 09:14:54 +02:00
akallabeth
8b0f4ca106
[client,sdl] move webview to static lib
...
* move to static lib aad-view
* add support for https://github.com/webview/webview (e.g. use native
webview if available)
2023-07-21 09:14:54 +02:00