Commit Graph

784 Commits

Author SHA1 Message Date
Pavel Tsekov
cdfcbeff5c X11: Convert GDI color to X11 color troughout.
* client/X11/xf_client.c (xf_pre_connect): Set the field `colormap' of
`struct xfContext' to the default colormap.
* client/X11/xfreerdp.h (xf_gdi_get_color): Declare new external function.
* client/X11/xf_gdi.c (xf_gdi_get_color): Define new external function.
Use xf_gdi_get_color() to get the appropriate X color index from the GDI
color representation.
* client/X11/xf_graphics.c: Likewise.
2014-09-04 12:44:03 +03:00
Pavel Tsekov
08d60d01e0 Adjust the code to work with the new GDI color
representation.
* client/X11/xf_gdi.c:
Use freerdp_color_convert_drawing_order_color_to_gdi_color() to convert
from drawing order color representation to GDI color representation
troughout.
* client/X11/xf_graphics.c: Likewise.
2014-08-21 03:35:34 +03:00
Armin Novak
ad3255354d Added WITH_LIBRARY_VERSIONING, allowing to build shared libraries without
SOVERSION information. (required by Android)
2014-07-11 11:53:58 +02:00
Bernhard Miklautz
6a49bcfe40 winpr: always build "monolitic"
winpr is now always build as single library.
The build option MONOLITHIC_BUILD doesn't influence this behavior anymore.

The only exception is winpr-makecert-tool which is still build as extra
library.

This obsoletes complex_libraries for winpr.
2014-07-10 11:10:58 +02:00
Marc-André Moreau
ac7d23b9a3 libfreerdp-gdi: migrate to _aligned_malloc/_aligned_free 2014-07-08 15:07:19 -04:00
Marc-André Moreau
c16000e67b Merge branch 'master' of github.com:FreeRDP/FreeRDP into egfx 2014-07-08 12:29:30 -04:00
Marc-André Moreau
8516846999 libfreerdp-client: cleanup gfx options 2014-07-08 12:29:08 -04:00
Norbert Federa
196330111b xfreerdp: xfixes selection ownership notification
The X11 core protocol does not have support for selection ownership
notifications. Until now xfreerdp worked around this issue by always sending
a format list pdu to the server after sending the format data response pdu
which makes the server side think that the clients clipboard data has changed.

This workaround has some severe drawbacks:
* it causes unnecessary data transfers because even without local clipboard
  data changes the same data is always re-transferred over the channel
* with some clipboard managers (in the server sessions) you will get massive
  endless data transfer loops because these managers immediately request the
  data on clipboard changes.

The correct (core X11) way would be polling for selection ownership changes
which must include the ability to detect changes to the TIMESTAMP target if
the selection owner did not change.
The alternative to the poll based approach is using the X Fixes extension in
order to get selection ownership notifications.

This commit adds support for the XFIXES solution and also moves the complete
clipboard related event handling from xf_event.c to xf_cliprdr.c
2014-07-07 20:31:23 +02:00
Marc-André Moreau
bde954107d Merge branch 'egfx' of github.com:vworkspace/FreeRDP into egfx
Conflicts:
	client/X11/xf_gfx.c
2014-07-03 12:03:39 -04:00
Mike McDonald
4d3d78c487 Initial implementation of H.264 decoder for MS-RDPEGFX 2014-07-01 23:28:09 -04:00
Marc-André Moreau
4a4f4308b5 libfreerdp-codec: improve ClearCodec error checking 2014-07-01 16:32:36 -04:00
Marc-André Moreau
f304d8cc20 libfreerdp-codec: more ClearCodec vBar caching 2014-07-01 14:38:54 -04:00
Marc-André Moreau
8a5591bdef libfreerdp-codec: add ClearCodec glyph cache 2014-07-01 09:55:52 -04:00
Marc-André Moreau
78e00db45d Merge branch 'egfx' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	libfreerdp/codec/test/TestFreeRDPCodecClear.c
2014-07-01 09:11:50 -04:00
Marc-André Moreau
ff816feb72 Merge branch 'master' of github.com:FreeRDP/FreeRDP into egfx 2014-07-01 09:01:52 -04:00
Marc-André Moreau
e42465372a xfreerdp: initial remote assistance controls (ctrl+alt+c to request/release control) 2014-06-30 17:17:06 -04:00
Marc-André Moreau
49cd7806d9 libfreerdp-codec: improve ClearCodec decompressor 2014-06-26 17:08:51 -04:00
Marc-André Moreau
dd36617093 libfreerdp-codec: improve clear_decompress function parameters 2014-06-25 18:39:28 -04:00
Marc-André Moreau
c20c3abdf1 xfreerdp: fix egfx SurfaceToSurface off-by-one 2014-06-25 18:00:48 -04:00
Marc-André Moreau
95a0d96b58 xfreerdp: fix build warnings 2014-06-23 12:08:34 -04:00
Marc-André Moreau
78d3c82798 xfreerdp: fix multiple egfx-related memory leaks 2014-06-20 13:52:13 -04:00
Marc-André Moreau
ce6ff35297 xfreerdp: fix egfx off-by-one errors 2014-06-19 17:08:50 -04:00
Marc-André Moreau
160a3c4b61 libfreerdp-codec: avoid intermediate copy with planar egfx 2014-06-19 13:55:34 -04:00
Marc-André Moreau
57b0e4d010 libfreerdp-codec: handle flipping in planar decompression 2014-06-19 13:08:07 -04:00
Marc-André Moreau
425763d30a libfreerdp-codec: start offering more flexible planar codec decompression 2014-06-17 16:44:24 -04:00
Marc-André Moreau
d69316198f xfreerdp: add egfx support for planar codec 2014-06-17 16:15:30 -04:00
Marc-André Moreau
61eb7f2f8e libfreerdp-codec: fix ClearCodec decoding 2014-06-13 17:30:13 -04:00
Marc-André Moreau
eeb7cd2cb2 xfreerdp: initial egfx bitmap caching 2014-06-13 08:36:09 -04:00
Marc-André Moreau
27b1e76dbb xfreerdp: fix egfx SurfaceToSurface overlapping copies 2014-06-12 21:02:25 -04:00
Marc-André Moreau
50883e6c83 xfreerdp: fix egfx RemoteFX bitmap updates 2014-06-12 18:23:51 -04:00
Marc-André Moreau
ae02b5b512 xfreerdp: start handling egfx surface-to-surface 2014-06-12 16:13:12 -04:00
Marc-André Moreau
42c83c25f8 Merge branch 'egfx' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	channels/tsmf/client/tsmf_main.c
2014-06-12 12:08:15 -04:00
Marc-André Moreau
6f9a256c5c Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	channels/drdynvc/client/dvcman.c
	client/X11/xf_client.c
	include/freerdp/dvc.h
2014-06-12 12:03:08 -04:00
Marc-André Moreau
fbea223ecf channels/gfx: add surface table helper, surface creation/deletion 2014-06-11 17:48:04 -04:00
Marc-André Moreau
2a82684521 channels: cleanup unused freerdp channels global functions 2014-06-11 16:27:31 -04:00
Armin Novak
4325741583 Merge remote-tracking branch 'origin/master' into tsmf-gstreamer-1.0
Conflicts:
	client/X11/xf_client.c
2014-06-11 11:27:08 +02:00
Marc-André Moreau
161e7b0026 libfreerdp-codec: simplify zgfx segment processing 2014-06-05 14:52:27 -04:00
Marc-André Moreau
6ad00125b4 xfreerdp: avoid using XCopyArea 2014-06-05 13:13:47 -04:00
Marc-André Moreau
68221cca73 xfreerdp: improve gfx frame handling 2014-06-05 12:36:01 -04:00
Marc-André Moreau
38ac1fd7b0 xfreerdp: improve graphics pipeline support 2014-06-04 22:49:03 -04:00
Marc-André Moreau
12e6c845eb channels/rdpgfx: cleanup debug output 2014-06-04 22:06:29 -04:00
Marc-André Moreau
f194a7b156 channels/rdpgfx: fix parsing of pdus in an array 2014-06-04 21:35:31 -04:00
Marc-André Moreau
83edc68422 xfreerdp: start integrating graphics pipeline 2014-06-04 18:03:25 -04:00
Marc-André Moreau
e11d7d967e Merge pull request #1868 from akallabeth/x11_shutdown_fix
X11 aync input shutdown fix
2014-06-04 11:59:58 -04:00
Hardening
07e0eba7db Check that bpp has reasonable value
As bpp is often used for malloc computations, let's check that it has
a reasonable value.
2014-05-29 10:12:02 +02:00
Armin Novak
2a6253ecfa Abortion check now just tests for quit in the queue. 2014-05-27 09:32:58 +02:00
Armin Novak
7e481d31b2 Now processing input messages in async thread. 2014-05-26 22:54:34 +02:00
Armin Novak
0c77671a86 Fixed input_thread shutdown issue if not initiated by user. 2014-05-26 19:09:25 +02:00
Armin Novak
b1770c33fd Now using posix shared memory with process specific identifier. 2014-05-23 13:09:11 +02:00
Armin Novak
78f9472b41 Removed tsmf.tid hack. 2014-05-23 13:08:22 +02:00