<p dir="ltr"><br>
On Feb 5, 2016 12:53 AM, "Rui Matos" <<a href="mailto:tiagomatos@gmail.com">tiagomatos@gmail.com</a>> wrote:<br>
><br>
> The last cursor frame we commited before the pointer left one of our<br>
> surfaces might not have been shown. In that case we'll have a cursor<br>
> surface frame callback pending which we need to clear so that we can<br>
> continue submitting new cursor frames.<br>
><br>
> Signed-off-by: Rui Matos <<a href="mailto:tiagomatos@gmail.com">tiagomatos@gmail.com</a>><br>
> Reviewed-by: Daniel Stone <<a href="mailto:daniels@collabora.com">daniels@collabora.com</a>></p>
<p dir="ltr">Reviewed-by: Jonas Ådahl <<a href="mailto:jadahl@gmail.com">jadahl@gmail.com</a>><br></p>
<p dir="ltr">> ---<br>
><br>
> v2: as suggested by Jonas, moved the hunk further up to stay close to<br>
>     another related hack we already have and also removed the<br>
>     xwl_seat_set_cursor() call since CheckMotion() will do that too.<br>
><br>
>     I think Daniel's r-b still stands anyway.<br>
><br>
>  hw/xwayland/xwayland-input.c | 9 +++++++++<br>
>  1 file changed, 9 insertions(+)<br>
><br>
> diff --git a/hw/xwayland/xwayland-input.c b/hw/xwayland/xwayland-input.c<br>
> index 61ca70b..d6cbf32 100644<br>
> --- a/hw/xwayland/xwayland-input.c<br>
> +++ b/hw/xwayland/xwayland-input.c<br>
> @@ -251,6 +251,15 @@ pointer_handle_enter(void *data, struct wl_pointer *pointer,<br>
>      mipointer = MIPOINTER(master);<br>
>      mipointer->pSpriteCursor = (CursorPtr) 1;<br>
><br>
> +    /* The last cursor frame we commited before the pointer left one<br>
> +     * of our surfaces might not have been shown. In that case we'll<br>
> +     * have a cursor surface frame callback pending which we need to<br>
> +     * clear so that we can continue submitting new cursor frames. */<br>
> +    if (xwl_seat->cursor_frame_cb) {<br>
> +        wl_callback_destroy(xwl_seat->cursor_frame_cb);<br>
> +        xwl_seat->cursor_frame_cb = NULL;<br>
> +    }<br>
> +<br>
>      CheckMotion(NULL, master);<br>
><br>
>      /* Ideally, X clients shouldn't see these button releases.  When<br>
> --<br>
> 2.5.0<br>
><br>
> _______________________________________________<br>
> <a href="mailto:xorg-devel@lists.x.org">xorg-devel@lists.x.org</a>: X.Org development<br>
> Archives: <a href="http://lists.x.org/archives/xorg-devel">http://lists.x.org/archives/xorg-devel</a><br>
> Info: <a href="http://lists.x.org/mailman/listinfo/xorg-devel">http://lists.x.org/mailman/listinfo/xorg-devel</a></p>