[PATCH weston v9 03/62] compositor-drm: Calculate more cursor state up front

Emil Velikov emil.l.velikov at gmail.com
Thu Mar 9 23:12:34 UTC 2017


On 3 March 2017 at 23:05, Daniel Stone <daniels at collabora.com> wrote:

> -       x = (x - output->base.x) * output->base.current_scale;
> -       y = (y - output->base.y) * output->base.current_scale;
> +       x = (output->cursor_plane.x - output->base.x) *
> +               output->base.current_scale;
> +       y = (output->cursor_plane.y - output->base.y) *
> +               output->base.current_scale;
>
> -       if (output->cursor_plane.x != x || output->cursor_plane.y != y) {
As we're dropping this, won't we end up with lots of unnecessary calls
to drmModeMoveCursor() ?
Is there something which will help us ?

> -               if (drmModeMoveCursor(b->drm.fd, output->crtc_id, x, y)) {
> -                       weston_log("failed to move cursor: %m\n");
> -                       b->cursors_are_broken = 1;
> -               }
> -
> -               output->cursor_plane.x = x;
> -               output->cursor_plane.y = y;
> +       if (drmModeMoveCursor(b->drm.fd, output->crtc_id, x, y)) {
> +               weston_log("failed to move cursor: %m\n");
> +               b->cursors_are_broken = 1;


-Emil


More information about the wayland-devel mailing list