Commit Graph

7747 Commits

Author SHA1 Message Date
Norbert Federa
25f66d2e6d xfreerdp: added smart sizing, mt gesture fixes
- removed setting ScalingFactor
- added settings SmartSizingWidth and SmartSizingHeight
- changed option /smart-sizing to optionally support <width>x<height>
- consolidated transformation of input event coordinates
- rdp8 gfx ignored scaling and panning offsets: fixed
- never resize window on panning/pinching
- simplified keyboard multitouch gesture debugging emulation
- disabled keyboard multitouch gesture emulation debug code via define
2014-12-01 11:56:44 +01:00
Norbert Federa
85297fb343 xfreerdp: remove duplicated drawing operations
Most of xfreerdp's hw gdi callbacks did the the same X11 drawing operation
twice: Initially on the primary pixmap to keep the back buffer up to date
and then directly on the window in order to see the result.
This sequence is followed by a call to gdi_InvalidateRegion() to mark the
rectangular area of the drawing operation.
Since in xfreerdp's current design (or better current evolved state) the
backbuffer pixmap is obligatory, all drawing operations directly targeting
the window are redundant because of the subsequent EndPaint (mapped to
xf_hw_end_paint) where the damaged region is copied from the backbuffer
to the drawable.

- removed X11 drawing operations which directly target the window drawable
- fixed some errors in the calculation of the required update regions
2014-12-01 11:19:27 +01:00
Norbert Federa
3fa3384eb4 xfreerdp: several fixes for panned/pinched drawing
- use bilinear filter instead of nearest filter
- fixed invalid transformation matrix
- support non-proportional scaling
- fix calculation of transformed coordinates (rounding errors)
2014-12-01 11:17:16 +01:00
Marc-André Moreau
8033022d6c Merge pull request #2236 from marioli/master
Rename tcp-functions as they are conflicting with qemu functions
2014-11-29 21:08:36 -05:00
Mario Lombardo
3c634f91db Rename tcp-functions as they are conflicting with qemu functions 2014-11-29 21:14:39 +01:00
Marc-André Moreau
88dd5eb8c5 Merge pull request #2225 from akallabeth/openh264_fix
Openh264 v1.2 API
2014-11-28 11:23:11 -05:00
Marc-André Moreau
2c76ac0ef9 Merge pull request #2234 from bmiklautz/fix/tls
Transport and tsg fixes
2014-11-28 11:00:27 -05:00
Bernhard Miklautz
daa3e7c7f8 tsg: fix possible free of initialized memory 2014-11-27 15:08:07 +01:00
Bernhard Miklautz
5066a5e455 tsg: rpc_send_enqueue_pdu always free buffer
rpc_send_enqueue_pdu returns -1 on error but the type of error isn't
distinguishable. Therefore make sure that the buffer gets always freed.
The only exception to this is when the pdu was already queued. Then the
dequeuing function should take care of freeing the buffer when
processing the pdu.
2014-11-27 14:39:47 +01:00
Bernhard Miklautz
96ae2df5a4 tsg: unwind recursion in tsg_read 2014-11-26 19:46:32 +01:00
Bernhard Miklautz
c0525574c8 transport: handle all return values of tsg_read
tsg_read can also return 0 which means that no data (complete PDU) is
currently available. This case wasn't handled properly.

Fixes #2056
2014-11-26 19:46:32 +01:00
Bernhard Miklautz
f338e1f6c3 crypto: revert pull request #2130
The fix in #2130 eliminates the problem when connecting over a gateway
but introduces other problems server side and client side (client/server
can't detect anymore when a TCP connection was closed).
2014-11-26 19:46:32 +01:00
Bernhard Miklautz
81a6c43938 tsg: fix segfault
Revert false positive from commit 585d9101b7
buffer shouldn't be freed since it is set and used in a stream.
2014-11-26 19:46:32 +01:00
Hardening
c9bc88d5f0 Merge pull request #2232 from Tarnyko/master
wlfreerdp: add keyboard and mouse wheel support, fix bugs
2014-11-26 11:17:21 +01:00
Manuel Bachmann
a9cf8b5838 wlfreerdp: add keyboard and mouse wheel support, fix bugs
This commit does the following:

* fix the keyboard logic (which now fully works), add support for vertical mouse wheel events ;
* make the rendering a lot more efficient, by using RDP damage information to refresh only the relevant part of the buffer ;
* fix two race conditions. wlfreerdp should not crash anymore now ;
* fix shm_open() and shm_unlink() calls ;
* improve the code style.

Signed-off-by: Manuel Bachmann <tarnyko@tarnyko.net>
2014-11-26 10:46:05 +01:00
Armin Novak
402cf2064b Fixed OpenH264 detection script. 2014-11-21 10:28:38 +01:00
Marc-André Moreau
3992e5e650 Merge pull request #2224 from hardening/rdpei_server
Add server-side RDPEI
2014-11-20 16:37:12 -05:00
Marc-André Moreau
f86ae745f3 Merge pull request #2223 from awakecoding/master
Clipboard, OS X Threads, Lync RDP Server
2014-11-20 16:25:20 -05:00
Hardening
ed6f380434 Add server-side RDPEI
This patch mutualize code between client and server for RDPEI. And add support for
the server-side.
2014-11-20 22:19:29 +01:00
Marc-André Moreau
f5817ce457 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-11-20 16:14:44 -05:00
Marc-André Moreau
d8c9a4029d Merge pull request #2220 from hopToDev/master
Call redraw only when region is invalidated
2014-11-20 16:14:22 -05:00
Marc-André Moreau
b8f694d8df mfreerdp: fix cliprdr copy with Windows XP 2014-11-20 16:05:13 -05:00
Marc-André Moreau
c4ab4ad128 channels/cliprdr: partially fix short format names 2014-11-20 14:28:05 -05:00
Marc-André Moreau
8449e1c946 mfreerdp: fix thread stopping 2014-11-20 12:34:49 -05:00
Marc-André Moreau
9258ecca37 libwinpr-clipboard: improve robustness 2014-11-20 12:08:01 -05:00
Marc-André Moreau
871339da88 Merge branch 'master' of github.com:awakecoding/FreeRDP
Conflicts:
	winpr/libwinpr/thread/thread.c
2014-11-20 11:51:18 -05:00
Marc-André Moreau
2afcac7838 libwinpr-thread: fix non-blocking internal pipe-based event on OS X 2014-11-20 11:48:02 -05:00
Marc-André Moreau
1c88822ccb libfreerdp-core: treat GCC data block 0xC009 as CS_MULTITRANSPORT 2014-11-19 21:00:28 -05:00
Mehul Dhorda
58ab355bad Call redraw only when region is invalidated
Added a condition to redraw a rect only when region is invalidated. For
example. this avoids a redraw when only the cursor changes on the
remote machine.
2014-11-19 11:48:12 -08:00
Marc-André Moreau
3f5aa863cb libfreerdp-core: fix server-side activated state 2014-11-19 14:21:23 -05:00
Marc-André Moreau
d6e6db05e9 libfreerdp-core: sanitize NSCodec capabilities 2014-11-19 09:39:47 -05:00
Marc-André Moreau
ab9a4318c8 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-11-18 14:21:55 -05:00
Marc-André Moreau
4fbec7633a cmake: add WITH_FREERDS option 2014-11-17 12:31:31 -05:00
Marc-André Moreau
8a5ded36e6 Merge pull request #2217 from Tarnyko/master
wlfreerdp: reorganize source files, add input methods
2014-11-17 11:10:48 -05:00
Manuel Bachmann
15d37e9be0 wlfreerdp: fix minor error in command line printing
One argument was missing in status_print().

Signed-off-by: Manuel Bachmann <manuel.bachmann@open.eurogiciel.org>
2014-11-17 16:58:50 +01:00
Manuel Bachmann
93ff550ae0 wlfreerdp: reorganize source files, add input methods
We split the one massive source file into multiple separate
source files and headers, just like it is done for other
clients.

We add a new "wlfInput" interface which will try to
initialize mouse and keyboard at startup. Mouse inputs
already work, keyboard inputs need further investigation.

Signed-off-by: Manuel Bachmann <tarnyko@tarnyko.net>
2014-11-17 16:42:27 +01:00
Marc-André Moreau
8a7a71a7b6 Merge pull request #2213 from akallabeth/wlog_callback_appender
Wlog callback appender
2014-11-17 09:41:58 -05:00
Marc-André Moreau
c26b557ab4 Merge pull request #2215 from nfedera/fix-2014-11-16-01
xfreerdp: fix polyline
2014-11-17 09:41:07 -05:00
Martin Fleisz
98a05db088 Merge pull request #2216 from akallabeth/memleak_fix
Various bug fixes
2014-11-17 12:07:00 +01:00
Armin Novak
8640872161 Fixed mixed variable declaration. 2014-11-17 01:42:24 +01:00
Armin Novak
c3f47128db Fixed header include. 2014-11-17 01:39:45 +01:00
Armin Novak
e61acfe6b4 Fixed null pointer dereference. 2014-11-17 01:26:31 +01:00
Armin Novak
1873cc037d Fixed null pointer dereference. 2014-11-17 01:23:54 +01:00
Armin Novak
d30b6ed04d Fixed null pointer dereference. 2014-11-17 01:22:33 +01:00
Armin Novak
6ef98e2aa7 Fixed null pointer dereference. 2014-11-17 01:20:46 +01:00
Armin Novak
e390dd0eeb Fixed null pointer dereference. 2014-11-17 01:19:40 +01:00
Armin Novak
deef61dfd0 Fixed memory leak. 2014-11-17 01:16:56 +01:00
Armin Novak
bc963c43d8 Fixed double free. 2014-11-17 01:13:47 +01:00
Armin Novak
83477e5344 Fixed memory leak. 2014-11-17 01:10:45 +01:00
Armin Novak
727a7a9aed Fixed memory leaks. 2014-11-17 01:08:38 +01:00