Hello everyone, I have an app right now that I've added a fullscreen mode to. RIght now it works for fullscreen when I go to fullscreen on the main display. If I attempt to do this on the secondary display, I get a blank screen.
I think one problem is probably the way I am identifying which screen to use -- I use [NSWindow screen] to find where my current window is and use that to capture the screen and place a new fullscreen window over it. One potential problem I see is when the window spans across two displays -- how do I reasonably choose which screen to display it on? What screen does [NSWindow screen] return? So to recap -- this code currently works correctly in the case when the _mainWindow is on the primary display. The code does not work correctly when it is on a secondary display. And I haven't tested the case where the code spans displays -- I am assuming that it just flat out doesn't work :) here is the code from my enterFullscreen method -- mostly pulled from sample code off developer.apple.com: -(void)enterFullscreen { NSScreen *windowScreen = [_mainWindow screen]; NSDictionary *screenInfo = [windowScreen deviceDescription]; NSNumber *screenID = [screenInfo objectForKey:@"NSScreenNumber"]; // capture the screen CGDirectDisplayID displayID = (CGDirectDisplayID)[screenID longValue]; CGDisplayErr err = CGDisplayCapture(displayID); if(err == CGDisplayNoErr) { if(!_fullscreenWindow) { // Create the full-screen window. NSRect winRect = [windowScreen frame]; _fullscreenWindow = [[NSWindow alloc] initWithContentRect:winRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO screen:windowScreen]; // Establish the window attributes. [_fullscreenWindow setReleasedWhenClosed:NO]; [_fullscreenWindow setDisplaysWhenScreenProfileChanges:YES]; [_fullscreenWindow setDelegate:self]; } // move our view over to the fullscreen window [_mainWindow setContentView:nil]; [_fullscreenWindow setContentView:_mainView]; [_mainWindow setNeedsDisplay:YES]; // The window has to be above the level of the shield window. int32_t shieldLevel = CGShieldingWindowLevel(); [_fullscreenWindow setLevel:shieldLevel]; // Show the window. [_fullscreenWindow makeKeyAndOrderFront:self]; _fullscreenFlag = YES; } } Sorry about the formatting -- it got a bit messed up when i pasted it into gmail. Thanks! dennis _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [EMAIL PROTECTED]