mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
ui/vnc: Do not use console_select()
console_select() is shared by other displays and a console_select() call from one of them triggers console switching also in ui/curses, circumventing key state reinitialization that needs to be performed in preparation and resulting in stuck keys. Use its internal state to track the current active console to prevent such a surprise console switch. Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20240319-console-v2-2-3fd6feef321a@daynix.com>
This commit is contained in:
parent
271a197425
commit
d4c199566f
5 changed files with 39 additions and 5 deletions
|
@ -99,4 +99,15 @@ bool qkbd_state_modifier_get(QKbdState *kbd, QKbdModifier mod);
|
|||
*/
|
||||
void qkbd_state_lift_all_keys(QKbdState *kbd);
|
||||
|
||||
/**
|
||||
* qkbd_state_switch_console: Switch console.
|
||||
*
|
||||
* This sends key up events to the previous console for all keys which are in
|
||||
* down state to prevent keys being stuck, and remembers the new console.
|
||||
*
|
||||
* @kbd: state tracker state.
|
||||
* @con: new QemuConsole for this state tracker.
|
||||
*/
|
||||
void qkbd_state_switch_console(QKbdState *kbd, QemuConsole *con);
|
||||
|
||||
#endif /* QEMU_UI_KBD_STATE_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue