FreeRDP/client/X11
ilammy 82f3abac49 client/X11: teach RAIL to use clipboard redirection
XSelection protocol does not define any global clipboard as there is on
Windows. Instead each window has its own property for clipboard content
(like CLIPBOARD or PRIMARY) and there is a global notion of clipboard
ownership.  Only one window can claim ownership of some clipboard type
at the moment.

FreeRDP uses CLIPBOARD for clipboard transfers (it's the one used by
applications when Ctrl+V is pressed). For regular desktop sessions the
session window itself is used for clipboard interactions via
xfc->drawable field. However, for remote app session there is no session
window. We cannot use the current remote app window as it may change or
be destroyed without closing the session. We also cannot use the root
window as it is already used for CF_RAW transfer protocol.

Therefore we create a simple dummy window to put into xfc->drawable for
this exact job: to act as a clipboard vessel on behalf of the entire
remote app session.

xf_create_window() usually creates the window as we immediately start in
RAIL mode when possible. xf_rail_enable_remoteapp_mode() is invoked only
when autologin failed or remote desktop had to show the session window
to the user for some reason.
2017-05-01 02:10:55 +03:00
..
cli client/X11: fix build without client interface 2016-05-03 10:44:42 +02:00
.gitignore Add an environment variables section to the man 2016-06-21 15:28:38 +02:00
CMakeLists.txt Install man pages 2017-01-16 11:34:32 +01:00
generate_argument_docbook.c man pages needed love 2016-06-21 09:49:44 +02:00
ModuleOptions.cmake freerdp: remove vendor-specific options from build system, add automatic ways of including external clients/servers 2013-09-03 20:37:04 -04:00
xf_channels.c xfreerdp: cleanup and fix RemoteApp 2014-11-11 16:35:30 -05:00
xf_channels.h xfreerdp: cleanup and fix RemoteApp 2014-11-11 16:35:30 -05:00
xf_client.c client/X11: teach RAIL to use clipboard redirection 2017-05-01 02:10:55 +03:00
xf_client.h xfreerdp: remove dependency on libfreerdp-rail 2014-11-12 19:49:35 -05:00
xf_cliprdr.c client/X11: cache original clipboard data for raw transfers 2017-02-11 00:48:36 +02:00
xf_cliprdr.h xfreerdp: migrate to cliprdr callback interface 2014-10-15 21:30:11 -04:00
xf_event.c client/X11: teach RAIL to use clipboard redirection 2017-05-01 02:10:55 +03:00
xf_event.h Fixed declaration of xf_event_action_script_init() 2015-05-20 21:01:46 +02:00
xf_gdi.c some performance fixes 2017-03-27 20:14:13 +02:00
xf_gdi.h Removed duplicate code. 2016-10-06 13:43:03 +02:00
xf_gfx.c client/x11: fix gfx drawing bug with /multimon 2017-04-11 12:30:37 +02:00
xf_gfx.h Reformatted file. 2016-10-06 13:43:13 +02:00
xf_graphics.c Let bitmaps keep XBitmap during lifetime. 2017-03-28 12:14:19 +02:00
xf_graphics.h Fixed conversion to XColor. 2017-01-25 08:34:23 +01:00
xf_input.c Scanbuild warning, argument checks and leak fixes. 2017-03-02 18:13:43 +01:00
xf_input.h xfreerdp: start refactoring cliprdr 2014-10-14 22:24:07 -04:00
xf_keyboard.c Scanbuild warning, argument checks and leak fixes. 2017-03-02 18:13:43 +01:00
xf_keyboard.h Add command line option to override action script path 2017-02-08 08:30:24 +00:00
xf_monitor.c Scanbuild warning, argument checks and leak fixes. 2017-03-02 18:13:43 +01:00
xf_monitor.h xfreerdp: removed desktopWidth/desktopHeight vars 2015-04-16 17:31:22 +02:00
xf_rail.c client/X11: teach RAIL to use clipboard redirection 2017-05-01 02:10:55 +03:00
xf_rail.h xfreerdp: separate app windows from desktop windows 2014-11-11 22:27:33 -05:00
xf_tsmf.c fix string format specifiers 2016-12-16 13:48:43 +01:00
xf_tsmf.h channels/tsmf: remove dependency on deprecated eventing system 2014-11-10 16:33:34 -05:00
xf_window.c client/X11: teach RAIL to use clipboard redirection 2017-05-01 02:10:55 +03:00
xf_window.h client/X11: teach RAIL to use clipboard redirection 2017-05-01 02:10:55 +03:00
xfreerdp-channels.1.xml Removed placeholder for channel documentation until it is available. 2013-08-06 12:25:38 +02:00
xfreerdp-envvar.1.xml Fix issues in wlog man page 2016-12-01 15:36:31 +01:00
xfreerdp-examples.1.xml Manual: remove a space in examples 2017-03-06 14:28:30 +01:00
xfreerdp.1.xml.in Add an environment variables section to the man 2016-06-21 15:28:38 +02:00
xfreerdp.h Let bitmaps keep XBitmap during lifetime. 2017-03-28 12:14:19 +02:00