@@ -93,7 +93,6 @@ static void cocoa_switch(DisplayChangeListener *dcl,
static void cocoa_refresh(DisplayChangeListener *dcl);
-static NSWindow *normalWindow;
static const DisplayChangeListenerOps dcl_ops = {
.dpy_name = "cocoa",
.dpy_gfx_update = cocoa_update,
@@ -1071,9 +1070,9 @@ - (void) grabMouse
COCOA_DEBUG("QemuCocoaView: grabMouse\n");
if (qemu_name)
- [normalWindow setTitle:[NSString stringWithFormat:@"QEMU %s - (Press " UC_CTRL_KEY " " UC_ALT_KEY " G to release Mouse)", qemu_name]];
+ [[self window] setTitle:[NSString stringWithFormat:@"QEMU %s - (Press " UC_CTRL_KEY " " UC_ALT_KEY " G to release Mouse)", qemu_name]];
else
- [normalWindow setTitle:@"QEMU - (Press " UC_CTRL_KEY " " UC_ALT_KEY " G to release Mouse)"];
+ [[self window] setTitle:@"QEMU - (Press " UC_CTRL_KEY " " UC_ALT_KEY " G to release Mouse)"];
[self hideCursor];
CGAssociateMouseAndMouseCursorPosition(isAbsoluteEnabled);
isMouseGrabbed = TRUE; // while isMouseGrabbed = TRUE, QemuCocoaApp sends all events to [cocoaView handleEvent:]
@@ -1084,9 +1083,9 @@ - (void) ungrabMouse
COCOA_DEBUG("QemuCocoaView: ungrabMouse\n");
if (qemu_name)
- [normalWindow setTitle:[NSString stringWithFormat:@"QEMU %s", qemu_name]];
+ [[self window] setTitle:[NSString stringWithFormat:@"QEMU %s", qemu_name]];
else
- [normalWindow setTitle:@"QEMU"];
+ [[self window] setTitle:@"QEMU"];
[self unhideCursor];
CGAssociateMouseAndMouseCursorPosition(TRUE);
isMouseGrabbed = FALSE;
@@ -1157,6 +1156,8 @@ - (void)adjustSpeed:(id)sender;
@implementation QemuCocoaAppController
- (id) init
{
+ NSWindow *window;
+
COCOA_DEBUG("QemuCocoaAppController: init\n");
self = [super init];
@@ -1170,20 +1171,20 @@ - (id) init
}
// create a window
- normalWindow = [[NSWindow alloc] initWithContentRect:[cocoaView frame]
+ window = [[NSWindow alloc] initWithContentRect:[cocoaView frame]
styleMask:NSWindowStyleMaskTitled|NSWindowStyleMaskMiniaturizable|NSWindowStyleMaskClosable
backing:NSBackingStoreBuffered defer:NO];
- if(!normalWindow) {
+ if(!window) {
error_report("(cocoa) can't create window");
exit(1);
}
- [normalWindow setAcceptsMouseMovedEvents:YES];
- [normalWindow setCollectionBehavior:NSWindowCollectionBehaviorFullScreenPrimary];
- [normalWindow setTitle:qemu_name ? [NSString stringWithFormat:@"QEMU %s", qemu_name] : @"QEMU"];
- [normalWindow setContentView:cocoaView];
- [normalWindow makeKeyAndOrderFront:self];
- [normalWindow center];
- [normalWindow setDelegate: self];
+ [window setAcceptsMouseMovedEvents:YES];
+ [window setCollectionBehavior:NSWindowCollectionBehaviorFullScreenPrimary];
+ [window setTitle:qemu_name ? [NSString stringWithFormat:@"QEMU %s", qemu_name] : @"QEMU"];
+ [window setContentView:cocoaView];
+ [window makeKeyAndOrderFront:self];
+ [window center];
+ [window setDelegate: self];
/* Used for displaying pause on the screen */
pauseLabel = [NSTextField new];
@@ -1306,7 +1307,7 @@ - (void) windowDidResignKey: (NSNotification *)aNotification
*/
- (void) doToggleFullScreen:(id)sender
{
- [normalWindow toggleFullScreen:sender];
+ [[cocoaView window] toggleFullScreen:sender];
}
- (void) setFullGrab:(id)sender
@@ -2004,7 +2005,7 @@ static void cocoa_display_init(DisplayState *ds, DisplayOptions *opts)
/* if fullscreen mode is to be used */
if (opts->has_full_screen && opts->full_screen) {
- [normalWindow toggleFullScreen: nil];
+ [[cocoaView window] toggleFullScreen: nil];
}
if (opts->u.cocoa.has_full_grab && opts->u.cocoa.full_grab) {
[controller setFullGrab: nil];