Commit 4aab05e3 authored by Keith Packard's avatar Keith Packard

xf86_reload_cursors: fix cursor position to eliminate jumping after mode set

xf86_reload_cursors restores the cursor to the correct position, but
that must adjust for cursor hot spot and frame before calling down to
the hardware function, otherwise the cursor jumps to the wrong
position until it is repositioned by the user.
Signed-off-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
parent 0f9ffc88
......@@ -639,9 +639,11 @@ xf86_reload_cursors (ScreenPtr screen)
(*cursor_info->LoadCursorARGB) (scrn, cursor);
else if (src)
#endif
(*cursor_info->LoadCursorImage)(cursor_info->pScrn, src);
(*cursor_info->LoadCursorImage)(scrn, src);
(*cursor_info->SetCursorPosition)(cursor_info->pScrn, x, y);
x += scrn->frameX0 + cursor_screen_priv->HotX;
y += scrn->frameY0 + cursor_screen_priv->HotY;
(*cursor_info->SetCursorPosition)(scrn, x, y);
}
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment