On Mon, Jun 03, 2013 at 10:55:47PM +0200, Hardening wrote: > The RDP compositor was ignoring mouse wheel events, this patch adds > support for it.
Committed, thanks. Kristian > --- > src/compositor-rdp.c | 19 ++++++++++++++++++- > 1 file changed, 18 insertions(+), 1 deletion(-) > > diff --git a/src/compositor-rdp.c b/src/compositor-rdp.c > index e855ba6..b81d789 100644 > --- a/src/compositor-rdp.c > +++ b/src/compositor-rdp.c > @@ -42,6 +42,7 @@ > #include "pixman-renderer.h" > > #define MAX_FREERDP_FDS 32 > +#define DEFAULT_AXIS_STEP_DISTANCE wl_fixed_from_int(10) > > struct rdp_compositor_config { > int width; > @@ -758,7 +759,7 @@ xf_peer_activate(freerdp_peer *client) > > static void > xf_mouseEvent(rdpInput *input, UINT16 flags, UINT16 x, UINT16 y) { > - wl_fixed_t wl_x, wl_y; > + wl_fixed_t wl_x, wl_y, axis; > RdpPeerContext *peerContext = (RdpPeerContext *)input->context; > struct rdp_output *output; > uint32_t button = 0; > @@ -785,6 +786,22 @@ xf_mouseEvent(rdpInput *input, UINT16 flags, UINT16 x, > UINT16 y) { > (flags & PTR_FLAGS_DOWN) ? > WL_POINTER_BUTTON_STATE_PRESSED : WL_POINTER_BUTTON_STATE_RELEASED > ); > } > + > + if (flags & PTR_FLAGS_WHEEL) { > + /* DEFAULT_AXIS_STEP_DISTANCE is stolen from compositor-x11.c > + * The RDP specs says the lower bits of flags contains the "the > number of rotation > + * units the mouse wheel was rotated". > + * > + * > http://blogs.msdn.com/b/oldnewthing/archive/2013/01/23/10387366.aspx explains > the 120 value > + */ > + axis = (DEFAULT_AXIS_STEP_DISTANCE * (flags & 0xff)) / 120; > + if (flags & PTR_FLAGS_WHEEL_NEGATIVE) > + axis = -axis; > + > + notify_axis(&peerContext->item.seat, > weston_compositor_get_time(), > + WL_POINTER_AXIS_VERTICAL_SCROLL, > + axis); > + } > } > > static void > -- > 1.8.1.2 > > _______________________________________________ > wayland-devel mailing list > wayland-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/wayland-devel _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel