akallabeth
793145b8c5
[coverity] 1543198 Explicit null dereferenced
2024-04-12 09:45:09 +02: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
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
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
akallabeth
207def5c56
[clang-tidy] readability-isolate-declaration
2024-02-15 11:49:16 +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
23f8fd2fee
[client,sdl] lock connection dialog access
...
might happen from different threads.
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
5e6ca89ded
[client,sdl] add SDL quit event wrapper
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
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
749da7eefc
[client,sdl] add smartcard chooser dialog
2023-12-15 09:11:33 +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
akallabeth
4e438d1c3e
[client] make settings opaque
2023-11-24 14:54:56 +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
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
Armin Novak
7a4e989dcb
[client,sdl] fix #9442 : handle alt+tab fullscreen
2023-10-10 12:33:29 +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
ad11ef916c
[client,sdl] fix compiler warnings
2023-08-25 12:56:36 +02:00
Armin Novak
fafc2e61f9
[client,sdl] redirect sdl log to wlog
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
b3fdebfdf7
[client,sdl] position windows centered on monitor
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
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
9ea1ab285b
[client,sdl] set gui consent message
2023-07-26 20:50:21 +02:00
akallabeth
b259545bbb
[client,sdl] update AAD/AVC callback handling
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
akallabeth
97415f0d52
[client,sdl] add user dialogs
2023-07-20 14:25:08 +02:00
akallabeth
734117351d
[aad,avc] unify callbacks to GetAccessToken
...
The AAD and AVD authentication mechanisms both need an OAuth2 token.
They only differ in the provided arguments, so unify the callbacks into
a single one with variable argument lists.
2023-07-20 14:20:28 +02:00
fifthdegree
d309fcd6e8
Restructure Azure AD related stuff
...
- Move responsibility for obtaining access tokens to clients
- Add function for getting access tokens for AVD
- Get correct server hostname during AVD setup
- Add utility function for doing http requests
2023-07-20 14:20:28 +02:00
Martin Fleisz
622a2a8df0
misc: More int to BOOL conversion fixes
...
This is a follow up to #9129 .
This PR fixes some problematic `int` to `BOOL` conversions that might
cause overflows when checking for bit flags.
2023-07-04 09:45:20 +02:00
Armin Novak
a0fd9cf957
[client,sdl] encapsulate c++ context
...
to properly initialize c++ us a heap allocated wrapper class
2023-06-05 14:15:03 +02:00
Armin Novak
da7c3b688f
[client,sdl] use unique_ptr for SDL_Surface et al
2023-05-31 11:29:21 +02:00