Hi, This series reworks the qemu display initialization. Changes:
* Create a QAPI DisplayOptions type for display configuration. * Switch all display initialization calls to accept DisplayOptions instead of a bunch of bools. * Add a registry for displays, and remove alot of #ifdefs from vl.c * Build sdl, gtk and curses as modules. For now I'm looking for comments especially on the DisplayOptions QAPI type. Is there a more elegant way than the empty DisplayNoOpts struct (see patch #5)? cheers, Gerd Gerd Hoffmann (24): sdl: remove -no-frame support sdl: remove -alt-grab and -ctrl-grab support sdl: use ctrl-alt-g as grab hotkey vl: rename DisplayType to LegacyDisplayType gtk: add and use DisplayOptions + DisplayGTK sdl: use DisplayOptions vl: drop no_quit variable egl-headless: use DisplayOptions curses: use DisplayOptions cocoa: use DisplayOptions vl: drop full_screen variable vl: drop display_type variable vl: drop request_opengl variable console: add qemu display registry, add gtk sdl: hook up to display registry cocoa: hook up to display registry curses: hook up to display registry egl-headless: hook up to display registry console: add and use qemu_display_find_default console: add ui module loading support sdl: build as module gtk: build as module curses: build as module build: opengl should not need X11 configure | 17 +++-- Makefile.objs | 1 + include/qemu/module.h | 1 + include/ui/console.h | 77 +++------------------ ui/console.c | 59 ++++++++++++++++ ui/curses.c | 14 +++- ui/egl-headless.c | 20 +++++- ui/gtk.c | 45 ++++++++---- ui/sdl.c | 89 ++++++++++-------------- ui/sdl2.c | 92 ++++++++++++------------- vl.c | 186 +++++++++++++------------------------------------- qapi/ui.json | 49 +++++++++++++ ui/Makefile.objs | 26 ++++--- ui/cocoa.m | 16 ++++- 14 files changed, 348 insertions(+), 344 deletions(-) -- 2.9.3