@@ -454,9 +454,9 @@ static inline void sdl_display_init(DisplayState *ds, DisplayOptions *opts)
/* cocoa.m */
#ifdef CONFIG_COCOA
-void cocoa_display_init(DisplayState *ds, int full_screen);
+void cocoa_display_init(DisplayState *ds, DisplayOptions *opts);
#else
-static inline void cocoa_display_init(DisplayState *ds, int full_screen)
+static inline void cocoa_display_init(DisplayState *ds, DisplayOptions *opts)
{
/* This must never be called if CONFIG_COCOA is disabled */
error_report("Cocoa support is disabled");
@@ -4465,6 +4465,7 @@ int main(int argc, char **argv, char **envp)
dpy.type = DISPLAY_TYPE_SDL;
#elif defined(CONFIG_COCOA)
display_type = DT_COCOA;
+ dpy.type = DISPLAY_TYPE_COCOA;
#elif defined(CONFIG_VNC)
vnc_parse("localhost:0,to=99,id=default", &error_abort);
#else
@@ -4824,7 +4825,7 @@ int main(int argc, char **argv, char **envp)
sdl_display_init(ds, &dpy);
break;
case DT_COCOA:
- cocoa_display_init(ds, full_screen);
+ cocoa_display_init(ds, &dpy);
break;
case DT_GTK:
gtk_display_init(ds, &dpy);
@@ -1009,7 +1009,8 @@
#
##
{ 'enum' : 'DisplayType',
- 'data' : [ 'default', 'none', 'gtk', 'sdl', 'egl-headless', 'curses' ] }
+ 'data' : [ 'default', 'none', 'gtk', 'sdl',
+ 'egl-headless', 'curses', 'cocoa' ] }
##
# @DisplayOptions:
@@ -1028,4 +1029,5 @@
'gtk' : 'DisplayGTK',
'sdl' : 'DisplayNoOpts',
'egl-headless' : 'DisplayNoOpts',
- 'curses' : 'DisplayNoOpts' } }
+ 'curses' : 'DisplayNoOpts',
+ 'cocoa' : 'DisplayNoOpts' } }
@@ -1671,12 +1671,12 @@ static void addRemovableDevicesMenuItems(void)
qapi_free_BlockInfoList(pointerToFree);
}
-void cocoa_display_init(DisplayState *ds, int full_screen)
+void cocoa_display_init(DisplayState *ds, DisplayOptions *opts)
{
COCOA_DEBUG("qemu_cocoa: cocoa_display_init\n");
/* if fullscreen mode is to be used */
- if (full_screen == true) {
+ if (opts->have_full_screen && opts->full_screen) {
[NSApp activateIgnoringOtherApps: YES];
[(QemuCocoaAppController *)[[NSApplication sharedApplication] delegate] toggleFullScreen: nil];
}
Switch cocoa ui to use qapi DisplayOptions for configuration. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- include/ui/console.h | 4 ++-- vl.c | 3 ++- qapi/ui.json | 6 ++++-- ui/cocoa.m | 4 ++-- 4 files changed, 10 insertions(+), 7 deletions(-)