A user can still enable SDL with '-sdl' or '-display sdl' but start making the default display GTK by default.
I'd also like to deprecate the SDL display and remove it in a few releases. Signed-off-by: Anthony Liguori <aligu...@us.ibm.com> --- v1 -> v3: - fix -display gtk - fix -vnc none --- vl.c | 45 +++++++++++++++++++++++++++++++-------------- 1 file changed, 31 insertions(+), 14 deletions(-) diff --git a/vl.c b/vl.c index c5b0eea..d0fec59 100644 --- a/vl.c +++ b/vl.c @@ -2206,6 +2206,13 @@ static DisplayType select_display(const char *p) fprintf(stderr, "Curses support is disabled\n"); exit(1); #endif + } else if (strstart(p, "gtk", &opts)) { +#ifdef CONFIG_GTK + display = DT_GTK; +#else + fprintf(stderr, "GTK support is disabled\n"); + exit(1); +#endif } else if (strstart(p, "none", &opts)) { display = DT_NONE; } else { @@ -3998,6 +4005,25 @@ int main(int argc, char **argv, char **envp) } } + if (display_type == DT_DEFAULT && !display_remote) { +#if defined(CONFIG_GTK) + display_type = DT_GTK; +#elif defined(CONFIG_SDL) || defined(CONFIG_COCOA) + display_type = DT_SDL; +#elif defined(CONFIG_VNC) + vnc_display = "localhost:0,to=99"; + show_vnc_port = 1; +#else + display_type = DT_NONE; +#endif + } + +#if defined(CONFIG_GTK) + if (display_type == DT_GTK) { + early_gtk_display_init(); + } +#endif + socket_init(); if (qemu_opts_foreach(qemu_find_opts("chardev"), chardev_init_func, NULL, 1) != 0) @@ -4226,20 +4252,6 @@ int main(int argc, char **argv, char **envp) /* just use the first displaystate for the moment */ ds = get_displaystate(); - if (using_spice) - display_remote++; - if (display_type == DT_DEFAULT && !display_remote) { -#if defined(CONFIG_SDL) || defined(CONFIG_COCOA) - display_type = DT_SDL; -#elif defined(CONFIG_VNC) - vnc_display = "localhost:0,to=99"; - show_vnc_port = 1; -#else - display_type = DT_NONE; -#endif - } - - /* init local displays */ switch (display_type) { case DT_NOGRAPHIC: @@ -4258,6 +4270,11 @@ int main(int argc, char **argv, char **envp) cocoa_display_init(ds, full_screen); break; #endif +#if defined(CONFIG_GTK) + case DT_GTK: + gtk_display_init(ds); + break; +#endif default: break; } -- 1.8.0