st/nine: Do not call ID3DPresent_GetCursorPos for sw cursor
For sw cursor we do not tell wine the cursor position (the app tells us directly). We shouldn't use ID3DPresent_GetCursorPos. device->cursor.pos already contains the coordinates the app gave us. Signed-off-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: David Heidelberg <david@ixit.cz>
This commit is contained in:
parent
78b304e2f9
commit
df6f1f77cc
|
@ -575,9 +575,10 @@ handle_draw_cursor_and_hud( struct NineSwapChain9 *This, struct pipe_resource *r
|
|||
blit.filter = PIPE_TEX_FILTER_NEAREST;
|
||||
blit.scissor_enable = FALSE;
|
||||
|
||||
ID3DPresent_GetCursorPos(This->present, &device->cursor.pos);
|
||||
|
||||
/* NOTE: blit messes up when box.x + box.width < 0, fix driver */
|
||||
/* NOTE: blit messes up when box.x + box.width < 0, fix driver
|
||||
* NOTE2: device->cursor.pos contains coordinates relative to the screen.
|
||||
* This happens to be also the position of the cursor when we are fullscreen.
|
||||
* We don't use sw cursor for Windowed mode */
|
||||
blit.dst.box.x = MAX2(device->cursor.pos.x, 0) - device->cursor.hotspot.x;
|
||||
blit.dst.box.y = MAX2(device->cursor.pos.y, 0) - device->cursor.hotspot.y;
|
||||
blit.dst.box.width = blit.src.box.width;
|
||||
|
|
Loading…
Reference in New Issue