diff options
author | Eduardo Beloni <beloni@ossystems.com.br> | 2011-06-17 00:49:08 +0400 |
---|---|---|
committer | Eduardo Beloni <beloni@ossystems.com.br> | 2011-06-17 00:54:38 +0400 |
commit | 96d413d59233521e9982232e3a9162e70deaf5ec (patch) | |
tree | e7a285a73e060a7475dc5ed5ad472801fa075706 | |
parent | d1eef40acc994d85cb78c0a98914edc097c9b44d (diff) |
libfreerdp-core/rdpset: mouse motion member
-rw-r--r-- | include/freerdp/rdpset.h | 1 | ||||
-rw-r--r-- | libfreerdp-core/rdp.c | 12 |
2 files changed, 9 insertions, 4 deletions
diff --git a/include/freerdp/rdpset.h b/include/freerdp/rdpset.h index 52f5540..298f6d7 100644 --- a/include/freerdp/rdpset.h +++ b/include/freerdp/rdpset.h @@ -82,6 +82,7 @@ struct rdp_set int off_screen_bitmaps; int triblt; int new_cursors; + int mouse_motion; int bulk_compression; int rfx_flags; /* 0 no remotefx */ int ui_decode_flags; diff --git a/libfreerdp-core/rdp.c b/libfreerdp-core/rdp.c index dceb631..701fddf 100644 --- a/libfreerdp-core/rdp.c +++ b/libfreerdp-core/rdp.c @@ -997,7 +997,8 @@ process_color_pointer_common(rdpRdp * rdp, STREAM s, int bpp) y = MAX(y, 0); y = MIN(y, height - 1); cursor = ui_create_cursor(rdp->inst, x, y, width, height, mask, data, bpp); - ui_set_cursor(rdp->inst, cursor); + if (rdp->inst->settings->mouse_motion) + ui_set_cursor(rdp->inst, cursor); cache_put_cursor(rdp->cache, cache_idx, cursor); } @@ -1015,7 +1016,8 @@ process_cached_pointer_pdu(rdpRdp * rdp, STREAM s) uint16 cache_idx; in_uint16_le(s, cache_idx); - ui_set_cursor(rdp->inst, cache_get_cursor(rdp->cache, cache_idx)); + if (rdp->inst->settings->mouse_motion) + ui_set_cursor(rdp->inst, cache_get_cursor(rdp->cache, cache_idx)); } /* Process a system pointer PDU */ @@ -1028,11 +1030,13 @@ process_system_pointer_pdu(rdpRdp * rdp, STREAM s) switch (system_pointer_type) { case RDP_SYSPTR_NULL: - ui_set_null_cursor(rdp->inst); + if (rdp->inst->settings->mouse_motion) + ui_set_null_cursor(rdp->inst); break; case RDP_SYSPTR_DEFAULT: - ui_set_default_cursor(rdp->inst); + if (rdp->inst->settings->mouse_motion) + ui_set_default_cursor(rdp->inst); break; default: |