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