drm/qxl: fix cursor position with non-zero hotspot
authorJohn Keeping <john@metanate.com>
Wed, 18 Nov 2015 11:17:25 +0000 (11:17 +0000)
committerJiri Slaby <jslaby@suse.cz>
Mon, 2 May 2016 17:54:56 +0000 (19:54 +0200)
commitee520ba1a9717e1fa6bac4e3099cdea66cc7f0ab
tree16af6ead9369e9b3bd524e9deeda3160353f5826
parent7976774016dbdf3962ab24d67dd43f2e6aa1b067
drm/qxl: fix cursor position with non-zero hotspot

commit d59a1f71ff1aeda4b4630df92d3ad4e3b1dfc885 upstream.

The SPICE protocol considers the position of a cursor to be the location
of its active pixel on the display, so the cursor is drawn with its
top-left corner at "(x - hot_spot_x, y - hot_spot_y)" but the DRM cursor
position gives the location where the top-left corner should be drawn,
with the hotspot being a hint for drivers that need it.

This fixes the location of the window resize cursors when using Fluxbox
with the QXL DRM driver and both the QXL and modesetting X drivers.

Signed-off-by: John Keeping <john@metanate.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1447845445-2116-1-git-send-email-john@metanate.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
drivers/gpu/drm/qxl/qxl_display.c
drivers/gpu/drm/qxl/qxl_drv.h