aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/ui/console.h4
-rw-r--r--qapi/ui.json6
-rw-r--r--ui/cocoa.m4
-rw-r--r--vl.c3
4 files changed, 10 insertions, 7 deletions
diff --git a/include/ui/console.h b/include/ui/console.h
index 65ed6ddca6..e6b1227bef 100644
--- a/include/ui/console.h
+++ b/include/ui/console.h
@@ -450,9 +450,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");
diff --git a/qapi/ui.json b/qapi/ui.json
index 11aad8b496..398baa9698 100644
--- a/qapi/ui.json
+++ b/qapi/ui.json
@@ -1020,7 +1020,8 @@
#
##
{ 'enum' : 'DisplayType',
- 'data' : [ 'none', 'gtk', 'sdl', 'egl-headless', 'curses' ] }
+ 'data' : [ 'none', 'gtk', 'sdl',
+ 'egl-headless', 'curses', 'cocoa' ] }
##
# @DisplayOptions:
@@ -1045,4 +1046,5 @@
'gtk' : 'DisplayGTK',
'sdl' : 'DisplayNoOpts',
'egl-headless' : 'DisplayNoOpts',
- 'curses' : 'DisplayNoOpts' } }
+ 'curses' : 'DisplayNoOpts',
+ 'cocoa' : 'DisplayNoOpts' } }
diff --git a/ui/cocoa.m b/ui/cocoa.m
index 51db47cd71..90d9aa57ea 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -1683,12 +1683,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->has_full_screen && opts->full_screen) {
[NSApp activateIgnoringOtherApps: YES];
[(QemuCocoaAppController *)[[NSApplication sharedApplication] delegate] toggleFullScreen: nil];
}
diff --git a/vl.c b/vl.c
index 3752ebec49..2dd00e00d9 100644
--- a/vl.c
+++ b/vl.c
@@ -4344,6 +4344,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
@@ -4705,7 +4706,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);