Hi Gerd, Can you take a look at this and let me know what you think?
Thanks, -Cal On Thu, 11 Aug 2022, Cal Peake wrote: > Define a QEMU special key constant for the tab key and add an entry for > it in the qcode_to_keysym table. This allows tab completion to work again > in the SDL monitor virtual console, which has been broken ever since the > migration from SDL1 to SDL2. > > Signed-off-by: Cal Peake <c...@absolutedigital.net> > --- > include/ui/console.h | 1 + > ui/console.c | 1 + > 2 files changed, 2 insertions(+) > > diff --git a/include/ui/console.h b/include/ui/console.h > index c0520c694c..e400ee9fa7 100644 > --- a/include/ui/console.h > +++ b/include/ui/console.h > @@ -70,6 +70,7 @@ void hmp_mouse_set(Monitor *mon, const QDict *qdict); > /* keysym is a unicode code except for special keys (see QEMU_KEY_xxx > constants) */ > #define QEMU_KEY_ESC1(c) ((c) | 0xe100) > +#define QEMU_KEY_TAB 0x0009 > #define QEMU_KEY_BACKSPACE 0x007f > #define QEMU_KEY_UP QEMU_KEY_ESC1('A') > #define QEMU_KEY_DOWN QEMU_KEY_ESC1('B') > diff --git a/ui/console.c b/ui/console.c > index e139f7115e..addaafba28 100644 > --- a/ui/console.c > +++ b/ui/console.c > @@ -1368,6 +1368,7 @@ static const int qcode_to_keysym[Q_KEY_CODE__MAX] = { > [Q_KEY_CODE_PGUP] = QEMU_KEY_PAGEUP, > [Q_KEY_CODE_PGDN] = QEMU_KEY_PAGEDOWN, > [Q_KEY_CODE_DELETE] = QEMU_KEY_DELETE, > + [Q_KEY_CODE_TAB] = QEMU_KEY_TAB, > [Q_KEY_CODE_BACKSPACE] = QEMU_KEY_BACKSPACE, > }; > > -- > 2.35.3 > >