Commit Graph

4813 Commits

Author SHA1 Message Date
akallabeth
78a7170f90 Merge pull request #11771 from akallabeth/floatbar-ignore
[client,x11] ignore floatbar events
2025-08-18 14:41:29 +02:00
Armin Novak
651de64c88 [client,common] use _strdup 2025-08-18 14:32:09 +02:00
Armin Novak
7b7cc538dd [client,common] fix type mismatch warnings 2025-08-18 14:05:54 +02:00
Armin Novak
9b42053f25 [client,common] fix warnings in TestClientRdpFile.c 2025-08-18 13:58:18 +02:00
akallabeth
0bf32a4a1a [client,x11] ignore floatbar events
If a button press happens on the floatbar ignore it and do not send it
to the remote.
For ButtonRelease and MotionEvent this is not done.
2025-08-18 13:25:25 +02:00
Armin Novak
e47b631d40 [client,common] fix warnings in unit test 2025-08-18 11:47:50 +02:00
Armin Novak
4182472c31 [client,common] fix parsing of RdgIsKdcProxy 2025-08-18 11:17:03 +02:00
akallabeth
67fb98d268 [client,common] add settings json
Use freerdp_settings_(de)serialize to compare result of rdpFile parsing.
2025-08-18 11:17:02 +02:00
akallabeth
90f1f2bd37 [client,common] only apply defaults to unset 2025-08-18 09:47:14 +02:00
akallabeth
ad22d5fdff [client,common] add freerdp_client_populate_settings_from_rdp_file_unchecked
Sometimes it is required to have raw values from a RDP file converted to
rdpSettings without consistency modifications. Expose this with a new
function.
2025-08-18 09:47:11 +02:00
akallabeth
e8b45fb8dc [client,common] fix tenantid command line parsing 2025-08-13 22:09:27 +02:00
akallabeth
65f18983ed [warnings] Fix format string errors
* Fix casts of format string arguments (%p requires void*)
* Fix format string to match type of arguments
2025-08-13 15:09:48 +02:00
akallabeth
c3e507a82e [winpr,wlog] Replace WLog_PrintMessage calls
Prefer WLog_PrintTextMessage to have proper format string checks in
place.
2025-08-13 15:08:01 +02:00
akallabeth
6284bba9f0 [clang-tidy] fix various warnings
* silence tidy warnings for public API symbols (we can't fix these for
  compatibility reasons)
* fix issues with casting
2025-08-11 14:11:40 +02:00
akallabeth
5f5485f2d3 Merge pull request #11747 from akallabeth/proxy-rpath
[cmake] add installWithRPATH
2025-08-11 12:38:47 +02:00
akallabeth
0206da4b96 [client,common] do not log success
when parsing command line options, do not log success result
2025-08-10 09:29:21 +02:00
akallabeth
12d0e491f6 [cmake] add installWithRPATH
this new CMake function installs a target to a destination and adds the
correct relative RPATH to some desired locations
2025-07-17 13:59:51 +02:00
Andreas Ziegler
9083947d9c [client,common] fix sso_mib_get_access_token return value in error case
Use FALSE instead of ERROR_INTERNAL_ERROR which could be interpreted
as "truthy" at the respective call site.
2025-07-14 13:31:04 +02:00
Armin Novak
2f617c9e39 [client,common] Unescape /gateway option values
To support escaped characters with /gateway all values are now
unuescaped before use.
2025-07-09 09:56:55 +02:00
akallabeth
671381da74 [client,x11] fix clipboard issues
* better logging of requested formats
* properly remember local format ID to paste
2025-07-03 07:36:48 +02:00
Łukasz Stelmach
d1ddba3857 [manpages] Add example of keyboard remapping
Show how to swap Ctrl and CapsLock keys using /kbd:remap.
2025-07-01 12:00:13 +02:00
akallabeth
f48b129414 [client,desktop] fix StartupWMClass setting 2025-06-26 10:23:43 +02:00
akallabeth
a86e3dc53c [client,sdl] print current video driver 2025-06-24 15:43:57 +02:00
akallabeth
4dc6091fde [client,common] fix -mouse-motion
* Move code to client/common to have it in place for all clients without
  modification
* Remember if a button was pressed and only suppress move events if no
  button is pressed.
2025-06-18 12:46:56 +02:00
akallabeth
8e38600298 [client,common] document FREERDP_ASKPASS in manpages 2025-06-18 10:16:58 +02:00
akallabeth
40c988e2da [client,common] warn on insecure argument passing
When credentials or other secrets are passed via command line print out
a warning presenting more secure alternatives
2025-06-18 10:16:56 +02:00
akallabeth
281b924596 [client,sdl2] fix build with webview 2025-06-16 12:50:18 +02:00
akallabeth
ded07fa31e [client,man] improve manpages (see #11357) 2025-06-16 11:56:06 +02:00
akallabeth
79ac927371 [client,common] change AAD url depending on request
* stdio callbacks use a redirect URL with https
* webview uses a redirect URL with ms-appx-web
2025-06-13 19:05:54 +02:00
akallabeth
17dcb86519 [client,common] fix missing AAD guards 2025-06-13 11:23:37 +02:00
akallabeth
ee6d95ab25 [warnings] fix unused warnings 2025-06-13 10:15:56 +02:00
akallabeth
6168a7bfd1 [client,common] make all azure settings configurable 2025-06-10 16:30:06 +02:00
akallabeth
dbeda8e568 [client,sdl] fix clipboard leak 2025-06-05 10:45:41 +02:00
Li Gang
8b25743c18 [client,x11]#11658,when size changed of an existing appWindows, except resize the main window, resize it's pixmap also 2025-06-05 10:41:01 +08:00
akallabeth
b2b2952510 [client,sdl] simplify webview build 2025-06-03 21:09:05 +02:00
akallabeth
a769ac3441 [client,sdl] add metadata to binary 2025-06-03 19:30:07 +02:00
akallabeth
8be64a066c [client,common] add documentation for /v: formats
* Add short description of default formats (url, hostname, IPv4, IPv6)
* Add pipe example
* Add socket example
2025-06-03 17:10:37 +02:00
akallabeth
da05b25f3b [WaitForXXObject] use infinite timeout where possible 2025-06-03 17:07:31 +02:00
akallabeth
52ff1cef93 [cmake] install SSO-MIB if build by ExternalProject
* Install the library if we build it as part of FreeRDP
* Format files with cmake-format
2025-06-02 19:40:44 +02:00
akallabeth
f74a7247cd [client,sdl] fix clang-tidy warnings 2025-06-02 19:05:10 +02:00
akallabeth
63f4c63200 Merge pull request #11635 from motor-dev/master
[client,sdl] Wayland fixes for the SDL backend
2025-06-02 17:57:07 +02:00
akallabeth
9763297d6a [client,common] (re)initialize fuse root in cliprdr_file_context_init
The clipboard might be (re)initialized multiple times, to do
initialization and deinitialization in cliprdr_file_context_init and
cliprdr_file_context_uninit.
2025-06-02 09:20:22 +02:00
Armin Novak
583c9dabda [client,sdl] fix SDL_SCANCODE_KP_PERIOD mapping 2025-05-28 10:09:30 +02:00
yngwe@fry
0c979d1a41 Fixes that were lost in merge
- append the window index to the title. This helps wayland compositor scripts move the multimon windows to different monitors, as Wayland does not obey the placement hint.
- fixed inverted logic when checking the SmartSizing setting.
2025-05-27 23:42:23 +02:00
yngwe@fry
ac981843c9 Multimon/smart sizing fixes for the SDL backend
- properly compute the offsets for each monitor, when monitors have negative offsets or when primary monitor isn't at origin 0:0.
   ‣ SDL_VIDEODRIVER=wayland sdl-freerdp3  /list:monitor
        * [3] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007046 (DP-1)] 2560x1440	+0+0
          [4] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007036 (HDMI-A-2)] 1440x2560	+2560+-550
   If the offset is not taken into account, the remote desktop will be drawn with black borders at the top or left hand side of the windows.

- fix smart sizing being applied when not requested (overwriting proper offsets for multimon) and not being applied when requested.

- add monitor ID in the window title to enable wayland compositors (e.g. hyprland) to find the various windows.
   hyprland has one workspace per monitor and refuses to let the application choose the monitor (or sdl-freerdp does not ask nicely).
   sdl-freedrp /multimon opens both windows on the same screen.
   adding a monitor identifier in the title allows hyprland rules to find the window and move it to the proper workspace.

These changes allow sdl-freedrp to find the correct geometry on X11 and Wayland compositors (tested on plasma/kwin and hyprland, on X11, XWayland and native wayland)
2025-05-27 23:13:04 +02:00
yngwe@fry
d998b6e8ba Wayland fixes for the SDL backend
- properly compute the offsets for each monitor, when monitors have negative offsets.
   ‣ SDL_VIDEODRIVER=wayland sdl-freerdp3  /list:monitor
        * [3] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007046 (DP-1)] 2560x1440	+0+0
          [4] [ASUSTek COMPUTER INC VG27AQML1A S2LMQS007036 (HDMI-A-2)] 1440x2560	+2560+-550
   If the negative offset is not taken into account, the remote desktop will be drawn with black borders at the top or left hand side of the windows.

- also ensures these offsets are not reset at each redraw.

- add monitor ID in the window title to enable wayland compositors (e.g. hyprland) to find the various windows.
   hyprland has one workspace per monitor and refuses to let the application choose the monitor (or sdl-freerdp does not ask nicely).
   sdl-freedrp /multimon opens both windows on the same screen.
   adding a monitor identifier in the title allows hyprland rules to find the window and move it to the proper workspace.

These changes allow sdl-freedrp to find the correct geometry on Wayland compositors (tested on plasma/kwin and hyprland) when using SDL_VIDEODRIVER=wayland
2025-05-26 23:06:02 +02:00
akallabeth
4f4c3e6366 [client,sdl] use new JSON config reader 2025-05-26 19:36:40 +02:00
Li Gang
3622640985 fix x11 log 2025-05-26 09:17:02 +02:00
Li Gang
c389b2b8b1 fix compile errors: xfc not defined even if with WITH_XCURSOR=ON 2025-05-25 14:25:24 +08:00
akallabeth
34ab0b893d [warnings] fix clang-tidy warnings 2025-05-23 15:29:31 +02:00