@@ -496,9 +496,9 @@ static inline int vnc_init_func(void *opaque, QemuOpts *opts, Error **errp)
/* curses.c */
#ifdef CONFIG_CURSES
-void curses_display_init(DisplayState *ds, int full_screen);
+void curses_display_init(DisplayState *ds, DisplayOptions *opts);
#else
-static inline void curses_display_init(DisplayState *ds, int full_screen)
+static inline void curses_display_init(DisplayState *ds, DisplayOptions *opts)
{
/* This must never be called if CONFIG_CURSES is disabled */
error_report("curses support is disabled");
@@ -434,7 +434,7 @@ static const DisplayChangeListenerOps dcl_ops = {
.dpy_text_cursor = curses_cursor_position,
};
-void curses_display_init(DisplayState *ds, int full_screen)
+void curses_display_init(DisplayState *ds, DisplayOptions *opts)
{
#ifndef _WIN32
if (!isatty(1)) {
@@ -2222,6 +2222,7 @@ static LegacyDisplayType select_display(const char *p)
} else if (strstart(p, "curses", &opts)) {
#ifdef CONFIG_CURSES
display = DT_CURSES;
+ dpy.type = DISPLAY_TYPE_CURSES;
#else
error_report("curses support is disabled");
exit(1);
@@ -3390,6 +3391,7 @@ int main(int argc, char **argv, char **envp)
case QEMU_OPTION_curses:
#ifdef CONFIG_CURSES
display_type = DT_CURSES;
+ dpy.type = DISPLAY_TYPE_CURSES;
#else
error_report("curses support is disabled");
exit(1);
@@ -4816,7 +4818,7 @@ int main(int argc, char **argv, char **envp)
/* init local displays */
switch (display_type) {
case DT_CURSES:
- curses_display_init(ds, full_screen);
+ curses_display_init(ds, &dpy);
break;
case DT_SDL:
sdl_display_init(ds, &dpy);
@@ -1009,7 +1009,7 @@
#
##
{ 'enum' : 'DisplayType',
- 'data' : [ 'default', 'none', 'gtk', 'sdl', 'egl-headless' ] }
+ 'data' : [ 'default', 'none', 'gtk', 'sdl', 'egl-headless', 'curses' ] }
##
# @DisplayOptions:
@@ -1027,4 +1027,5 @@
'none' : 'DisplayNoOpts',
'gtk' : 'DisplayGTK',
'sdl' : 'DisplayNoOpts',
- 'egl-headless' : 'DisplayNoOpts' } }
+ 'egl-headless' : 'DisplayNoOpts',
+ 'curses' : 'DisplayNoOpts' } }
Switch curses ui to use qapi DisplayOptions for configuration. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- include/ui/console.h | 4 ++-- ui/curses.c | 2 +- vl.c | 4 +++- qapi/ui.json | 5 +++-- 4 files changed, 9 insertions(+), 6 deletions(-)