akallabeth
33827cb920
Updated RDP state machine
...
* More detailed states
* Better transition checks
* No more recursive calling of state machine functions
2022-11-11 11:51:27 +01:00
Armin Novak
697e020abd
[rail] Added window update from surface
2022-11-11 06:42:45 +01:00
Armin Novak
325c03501e
[gfx] Added new UpdateWindowFromSurface callback
...
* Adds a new callback and settings in gdiGfxSurface to allow updating
a window directly from surface bitmap data
* Adds new BOOL in gdiGfxSurface windowMapped and
handleInUpdateSurfaceArea to control where surface data update is
being handled
2022-11-11 06:42:45 +01:00
akallabeth
3023057b16
Cleaned up some loop code in xf_monitor
...
Use loop variables to make it more readable
2022-11-04 14:46:58 +01:00
akallabeth
c0193a1813
Fixed #8259 : in remote app mode keep the keyboard state
...
If the mouse enters/leaves the window or the window is unmapped in
desktop session mode we can reset the keyboard modifiers state
while in remote app mode these events have different meaning. Be
more strict in the latter case and only reset on focus out
2022-11-03 11:01:30 +01:00
Armin Novak
119b8d4474
Unified command line options to list something
...
There are various options to list smartcards, monitors, keyboard
settings. Unify them all under a single /list:<something> option
2022-10-19 20:31:53 +02:00
fifthdegree
9d0beaccae
smartcardlogon: choose a single smartcard to use
...
Require a single smartcard certificate to be chosen and define a
callback to choose when more than one is available.
2022-10-19 18:55:38 +02:00
xiaopengzhou@hotmail.com
34afe6b23e
Fix Format List PDU is not sent when the Clipboard Redirection Virtual Channel is initialized for the second time. (X11 client)
2022-10-18 09:14:21 +02:00
akallabeth
43c5289928
Replaced memset/ZeroMemory with initializer
...
* Addes WINPR_ASSERT on many occations
* Replaced memset with array initializer
* Replaced ZeroMemory with array initializer
2022-10-14 12:11:01 +02:00
akallabeth
bd4b261a88
Fixed #8296 : Assert floatbar->handle and not xfc->window
2022-10-12 21:44:27 +02:00
akallabeth
796ceb2783
Fixed #8269 : Ignore mouse/input events during floatbar events
2022-10-07 11:26:56 +02:00
akallabeth
98f9a4da19
Clean up use of memset
2022-10-07 11:26:56 +02:00
akallabeth
8671339b12
Added assertions to floatbar
2022-10-07 11:26:56 +02:00
akallabeth
60720e7706
Improved streamdump file format
2022-10-07 10:38:03 +02:00
akallabeth
1849632c43
Fixed format strings to match arguments ( #8254 )
...
* Fixed format strings to match arguments
Reviewed and replaced all %d specifiers to match proper type
* Added proxy dynamic channel command type to log messages.
2022-09-29 14:55:27 +02:00
James Fu
a04021d38b
Send resize on window state change
2022-09-22 13:48:24 +02:00
Armin Novak
98f9c7e04b
Fix #8176 : Check fullscreen state and not setting
...
Timer based dynamic resolution updates are disabled in fullscreen
state. Check current value and not (permanent) setting
2022-09-14 08:51:54 +02:00
Armin Novak
8561b08592
Fixed gnome and mate clipboard format synthesizers
2022-09-13 14:42:33 +02:00
Armin Novak
707b9348ee
Unify encomsp request control code
2022-09-13 09:22:41 +02:00
Martin Fleisz
d8ac6e978e
x11: Fix disconnects if WITH_XCURSOR is set to OFF
...
Fix disconnects if WITH_XCURSOR is set to OFF. In that case xf_Pointer_New currently returns FALSE causing a disconnect.
2022-09-05 14:12:47 +02:00
David Fort
4fc7a9417d
Various fixes / improvements ( #8146 )
...
* xfreerdp: fix typo in logs
* winpr: file appender, small code cleanup
* shadow-server: add an option for TLS secrets
This allows to dissect connections to the shadow server.
2022-08-22 09:42:15 +02:00
2fly2
8dfadc5885
fix moving a window shrinks it 14x7 when connect to server 2019 ( #8083 )
...
* fix moving a window shrinks it 14x7 when connect to server 2019
Signed-off-by: 2fly2 <wjatchd@163.com>
* use clang-format to apply correct formatting
Signed-off-by: 2fly2 <wjatchd@163.com>
Signed-off-by: 2fly2 <wjatchd@163.com>
2022-08-16 14:22:03 +02:00
Jianfeng Liu
899424e941
xf_floatbar use XmbDrawString instead of XDrawString ( #8127 )
...
* xf_floatbar use XmbDrawString instead of XDrawString
* xf_floatbar fall back to XDrawString when fontSet is NULL
Co-authored-by: Jianfeng Liu <jfliu@zshield.net>
2022-08-16 14:21:06 +02:00
zengguang
e3cfe7300c
Fixed app windows destroy will do close(0) ( #8073 )
...
shmid was not initailized on creation of app window, that will be close fd = 0. everytimes in app windows destroy (Call xf_DestroyWindow ).
2022-07-15 09:18:45 +02:00
Armin Novak
b2df9207e4
Fixed #8054 : multimonitor settings
2022-07-07 14:24:07 +00:00
Pascal Nowack
6492a00959
client/X11: Relieve CLIPRDR filename restriction when possible
...
Microsoft Windows imposes strict filename restrictions on its platform.
As RDP is developed by Microsoft and the RDS in MS Windows is typically
used as remote desktop server for the RDP protocol, these filename
restrictions are also enforced in WinPR, when copy-pasting files over
the clipboard.
However, in some connections no peer on MS Windows is involved and in
these situations, these filename restrictions are just an annoyance.
With a recent API addition in WinPR, it is now possible to override the
callback, where the filename is checked, whether it is valid.
So, use this new API to relieve the filename restriction, when the
connected remote desktop server is not on MS Windows.
2022-07-07 07:45:26 +00:00
akallabeth
2da280b8a1
Fixed compilation warnings
2022-07-04 14:59:21 +02:00
akallabeth
9a2a37786e
Refactored clipboard structs
2022-07-04 14:31:08 +02:00
akallabeth
c07d240bc8
Updated pointer debug log messages
2022-07-04 14:30:49 +02:00
akallabeth
b8f3743e82
Update scaled pointer on FocusIn
2022-07-04 14:30:49 +02:00
akallabeth
2c814138cc
Fixed xf_Pointer_GetCursorForCurrentScale check
2022-07-04 14:30:49 +02:00
akallabeth
e07233ccef
Fixed float comparson
2022-06-29 18:10:33 +02:00
akallabeth
291458d2d5
Cleaned up xfreerdp error code mapping
2022-06-29 09:18:53 +02:00
akallabeth
ebf5de1d1d
Preset LoadChannels function pointer
2022-06-29 09:18:53 +02:00
akallabeth
fbe1075a30
Fixed xfreerdp clipboard resource cleanup
2022-06-23 14:19:50 +02:00
akallabeth
bc8b4ade1c
reformatted
2022-06-23 08:48:39 +02:00
akallabeth
de91cec5bf
Fixed const warning
2022-06-23 07:45:55 +02:00
akallabeth
90ce22283d
Replaced direct settings access with getter/setter
2022-06-23 07:45:55 +02:00
akallabeth
650a275ceb
Added new client callback LoadChannels and freerdp_client_load_channels
...
Split channel loading from PreConnect as it might be necessary to
reinitialize channels on redirect
2022-06-23 07:45:55 +02:00
Armin Novak
66e73f8b08
Fixed missing static for functions, fixed declaration of FreeRDPAreColorFormatsEqualNoAlpha
2022-06-21 10:28:34 +02:00
akallabeth
f25261e271
Unifiy string append functions
2022-06-17 08:41:46 +02:00
akallabeth
bbf3b8deba
Cleaned up xf_AppWindowFromX11Window use
2022-05-19 11:23:43 +02:00
2fly2
8f831ed324
fix RAIL abort when reconnect
...
Signed-off-by: 2fly2 <wjatchd@163.com>
2022-05-19 11:23:43 +02:00
David Fort
77413f49b2
winpr: rework alignment functions
...
_align_XXX functions aren't widely available depending on the C runtime. That causes
problems with mingw where we can easily have some runtime mixes (which lead to mysterious
segfaults most of the time). This patch introduce winpr_aligned_XXX functions that will
either use the function available, or use an emulation layer.
2022-05-12 11:36:01 +02:00
2fly2
e1e2eef4e1
fix moving a window shrinks it 14x7 when connect to server 2019
...
Signed-off-by: 2fly2 <wjatchd@163.com>
2022-05-07 13:34:27 +02:00
akallabeth
3d9c972d5c
Replace direct rdpSettings access with getter/setter ( #7867 )
...
* Replace direct rdpSettings access with getter/setter
* Fixed xf_gdi_update_screen const warning
2022-05-02 10:55:44 +02:00
akallabeth
0422cf9892
Fixed invalid argument types
2022-04-29 14:38:41 +02:00
akallabeth
6bc7f6ca88
Fixed cast-qual warnings
2022-04-28 12:37:19 +02:00
akallabeth
962c5c3ef0
Fixed dead store warnings
2022-04-28 12:37:19 +02:00
akallabeth
ec699f6c75
scanbuild fixes
2022-04-28 12:37:19 +02:00
akallabeth
1dcc5a180a
Fixed warnings
2022-04-28 11:24:51 +02:00
akallabeth
cc3e28f2f1
Fixed -Wdocumentation errors
2022-04-28 11:24:51 +02:00
akallabeth
2dfc1ddb12
Removed obsolete trio
2022-04-28 10:49:09 +02:00
akallabeth
d68327ad74
Fixed const correctness of pPointer_Set
...
Pointer might need to be modified
2022-04-28 09:17:20 +02:00
akallabeth
667b471686
Fixed cast-quality warnings
2022-04-28 09:17:20 +02:00
akallabeth
fb90ac280a
Refactored color.h
...
* Remove implementations from header
* Rename functions to be FreeRDP specific
* Add deprecation define for old names
* Fixed missing includes
2022-04-28 08:40:47 +02:00
akallabeth
d3e1810473
Follow up to #7832 : Add NULL checks
2022-04-27 23:29:44 +02:00
2fly2
56b0ca7b3f
fix restore a maximized window when it is minimized
...
Signed-off-by: 2fly2 <wjatchd@163.com>
2022-04-27 18:15:56 +02:00
2fly2
83aaa4e575
fix x11 black RAIL window when connect to server 2019
...
Signed-off-by: 2fly2 <wjatchd@163.com>
2022-04-22 10:16:49 +02:00
akallabeth
73cdcdfe09
Logging and parser fixes ( #7796 )
...
* Fixed remdesk settings pointer
* Fixed sign warnings in display_write_monitor_layout_pdu
* Use freerdp_abort_connect_context and freerdp_shall_disconnect_context
* Added and updates settings
* info assert/dynamic timezone
* mcs assert/log/flags
* Fixed and added assertions for wStream
* Unified stream length checks
* Added new function to check for lenght and log
* Replace all usages with this new function
* Cleaned up PER, added parser logging
* Cleaned up BER, added parser logging
* log messages
* Modified Stream_CheckAndLogRequiredLengthEx
* Allow custom format and options
* Add Stream_CheckAndLogRequiredLengthExVa for prepared va_list
* Improved Stream_CheckAndLogRequiredLength
* Now have log level adjustable
* Added function equivalents for existing logger
* Added a backtrace in case of a failure is detected
* Fixed public API input checks
2022-04-19 14:29:17 +02:00
Pascal Nowack
e68897a694
X11/cliprdr: Clear selection requests, when they become invalid
...
When a FormatDataRequest by xfreerdp is answered with the
CB_RESPONSE_FAIL flag, then the request was answered, but xfreerdp does
not mark it as answered, by leaving the request as pending.
This results in non-functional copy-paste actions, when copying
something from the server side, after the failed request.
A similar situation can happen, when a new FormatList is received,
while there is a pending FormatDataRequest.
Fix these situations by clearing the pending request, when a form of an
answer, either via CB_RESPONSE_FAIL flag or via new FormatList, is
received.
Fixes: https://github.com/FreeRDP/FreeRDP/issues/7757
2022-03-29 13:39:07 +02:00
akallabeth
d22ef1786b
Proper use of rdpSettings in client
...
* Use getter/setter
* Fix uninitialized uses
2022-03-28 15:52:32 +02:00
akallabeth
14568872a9
Instance cleanup ( #7738 )
...
* Cleaned up freerdp::autodetect
* Deprecate freerdp::input
* Deprecated freerdp::update
* Deprecated freerdp::settings
* Deprecated freerdp::autodetect
* Removed rdpTransport::settings
* Deprecated freerdp_per::update|settings|autodetect
* Fixed mac client and server compilation
* Fixed windows compilation
* Added deprecation warnings
* Fixed initialization of structs.
* Fixed android build
* Fixed freerdp_client_context_new const correctness
* Fixed checks for android implementation
Replaced checks with assertions where appropriate
* Fixed checks for windows client
Replaced checks with assertions where appropriate
* Fixed proxy client pointer dereference
2022-03-23 13:18:35 +01:00
Kazuki Oikawa
98f9aedd62
Supports 10bit X11 color (BGRX32 only)
2022-03-20 10:05:18 +01:00
Armin Novak
9bf2fde765
Added patch from #4660 @mokyle
...
do not deactivate rail windows, just keep them always on
2022-03-16 21:40:34 +01:00
Armin Novak
71aac852d6
Remove async-input from clients
2022-03-08 15:37:19 +01:00
akallabeth
3d38d2636c
Decreased logging verbosity for INFO level
2022-03-04 09:34:02 +01:00
Armin Novak
4d03d7c0bf
Freerdp remove #ifdef HAVE_CONFIG_H
2022-03-03 11:26:48 +01:00
Armin Novak
b2ad47a809
Reorganized FreeRDP headers
2022-03-03 11:26:48 +01:00
Armin Novak
b46d74806e
Removed FreeRDP_ListSmartcards setting
...
* Directly print smartcard list without intermediate setting
* Centralize the help text, clients do not need to add extra code
2022-02-24 08:52:25 +01:00
David Fort
cb351a099d
Enable smartcard NLA logon
2022-02-24 08:52:25 +01:00
Armin Novak
538b34c51d
Moved rail application start to client common
2022-02-22 16:43:21 +01:00
Armin Novak
1b71bba2a0
Fixed compilation warnings
2022-02-22 11:29:56 +01:00
akallabeth
8b3f9431de
Cleanup/code formatting
2022-02-22 09:44:13 +01:00
Armin Novak
f03059e718
Extended AINPUT API:
...
* Each event now has a timestamp
* Relative and absolute events are sent simultaneously
* Added a flag indicating relative events are available
2022-02-22 09:44:13 +01:00
akallabeth
e136444f51
Fixed xinput and x11 event priority
...
* Prefer xinput events over x11 events for mouse input
* Prefer xinput raw events over xinput events:
* Only use when the mouse is grabbed (events are not bound to a
specific window but are global)
* Only use for relative mouse input
2022-02-22 09:44:13 +01:00
akallabeth
d4be1717c2
Fixed window check
...
Ignore mouse events not originating in session window
2022-02-22 09:44:13 +01:00
akallabeth
db00082974
Implemented xfreerdp relative mouse input
2022-02-22 09:44:13 +01:00
akallabeth
b1a2efde7d
Implemented xfreerdp mouse grab
2022-02-22 09:44:13 +01:00
akallabeth
700d6dcd9e
Use client/common mouse functions
2022-02-22 09:44:13 +01:00
akallabeth
b2b70fcf6d
Use common client channel handling
2022-02-22 09:44:13 +01:00
akallabeth
cdbfff87ea
Unified client stop
2022-02-22 09:44:13 +01:00
akallabeth
7641710f60
Use a client/common context component
...
* Allows moving common client code from specific client to a
generic client/common implementation
2022-02-22 09:44:13 +01:00
akallabeth
8cc6582044
Unify struct definitions ( #7633 )
...
* Unified enum/struct definitions, fixed include issues
* Fixed mac compilation issues
* Added missing include
* Fixed windows server build warnings
* Fixed VS2010 build issue
* Removed unnecessary library linking
* Fixed ThreadPool WinXP compatibility
* Fixed pr review remarks
2022-02-14 14:59:22 +01:00
Armin Novak
2e17cee5a9
Fixed various warnings.
2022-01-31 15:55:10 +01:00
akallabeth
7dedfbb0b0
Added support for getpwuid_r, replaced duplicate code
...
* Use GetUserNameExA to get current user name when required.
* Add support for getpwuid_r if available
2022-01-25 15:33:04 +01:00
akallabeth
e6e6ed5dbd
Cleaned up PubSub
...
* Callback arguments now const
* Fixed missing includes
2022-01-19 09:24:57 +01:00
Armin Novak
339cdded45
Fixed memory sanitizer warnings
2022-01-11 14:32:18 +01:00
Armin Novak
fd5ac4eed0
Cleaned up wnd.h includes
2021-12-23 14:27:12 +01:00
akallabeth
4a4d783d4f
Moved clipboard custom context checks to implementation ( #7501 )
2021-12-17 13:47:20 +01:00
akallabeth
298d32164c
Removed recursive xf_lock_x11 warning
2021-12-16 12:54:53 +01:00
jackyzy823
90b1b3d540
x11: Add size in xf_cliprdr_fuse_getattr resopnse
2021-11-25 12:24:50 +01:00
Armin Novak
41d77cae46
Fixed /video buffer alignment, added assertions
2021-10-18 10:53:05 +02:00
Armin Novak
9444dab58a
Renamed global argument struct
2021-10-14 13:04:59 +02:00
Ian Weir
aa4c3dfb8a
Add exit codes for more errors
2021-10-11 08:27:41 +02:00
Armin Novak
b3209fe2b9
Fixed #7326 : Ensure proper window size
...
When leaving fullscreen with enabled smart sizing the window size
did shrink due to first resizing the window, then enabling window
decorations and finally moving to the correct position.
2021-10-05 10:56:33 +02:00
akallabeth
03a9ca80c8
Refactor proxy ( #7312 )
...
* Added hidden transport dump and replay options
* Added settings to enable transport dump and replay
* Added check in freerdp_connect to skip authentication on
dump replay
* Fixed proxy issues
* Proper shutdown handling
* Uninitialized variables
* Skip proxy-client channels, initialize from peer channels and
config
* Filter static channels like dynamic ones
* Added proxy module filtering from config data (channels, input, ...)
* Removed oboslete proxy decoding related files
* Added defines for RDPECAM channel
* Added proxy config options:
* VideoRedirection
* CameraRedirection
* Fixed duplicate channel free
2021-09-23 14:52:03 +02:00
Hans-Peter Jansen
1d8002f831
Improve fix
2021-09-20 08:13:22 +02:00
Hans-Peter Jansen
ab4b99ec2e
Fix X11 floatbar: XGetWindowAttributes returns zero on error
2021-09-20 08:13:22 +02:00
akallabeth
41aaafef77
Added unicode input for xfreerdp
2021-09-17 07:21:45 +02:00