mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
sdl: Fix cursor handling when switching consoles in absolute mouse mode
Restore the cursor when switching from graphic to text console while the mouse is in absolute mode. Disable it again when returning. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
f623d88548
commit
74d9dc69ab
1 changed files with 10 additions and 3 deletions
13
ui/sdl.c
13
ui/sdl.c
|
@ -452,7 +452,7 @@ static void sdl_show_cursor(void)
|
|||
if (!cursor_hide)
|
||||
return;
|
||||
|
||||
if (!kbd_mouse_is_absolute()) {
|
||||
if (!kbd_mouse_is_absolute() || !is_graphic_console()) {
|
||||
SDL_ShowCursor(1);
|
||||
if (guest_cursor &&
|
||||
(gui_grab || kbd_mouse_is_absolute() || absolute_enabled))
|
||||
|
@ -625,13 +625,20 @@ static void sdl_refresh(DisplayState *ds)
|
|||
/* Reset the modifiers sent to the current console */
|
||||
reset_keys();
|
||||
console_select(keycode - 0x02);
|
||||
gui_keysym = 1;
|
||||
if (gui_fullscreen) {
|
||||
break;
|
||||
}
|
||||
if (!is_graphic_console()) {
|
||||
/* release grab if going to a text console */
|
||||
if (gui_grab && !gui_fullscreen) {
|
||||
if (gui_grab) {
|
||||
sdl_grab_end();
|
||||
} else if (absolute_enabled) {
|
||||
sdl_show_cursor();
|
||||
}
|
||||
} else if (absolute_enabled) {
|
||||
sdl_hide_cursor();
|
||||
}
|
||||
gui_keysym = 1;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue