Re: Cocoa, full-screen mode, and windows
Re: Cocoa, full-screen mode, and windows
- Subject: Re: Cocoa, full-screen mode, and windows
- From: Ricky Sharp <email@hidden>
- Date: Fri, 11 Feb 2005 14:24:10 -0600
On Friday, February 11, 2005, at 02:00PM, John Stiles <email@hidden> wrote:
>On Feb 11, 2005, at 11:46 AM, Ricky Sharp wrote:
>
>>
>> On Friday, February 11, 2005, at 01:12PM, John Stiles
>> <email@hidden> wrote:
>>
>>> OK, now I've got everything running full-screen?I use CoreGraphics to
>>> capture all screens and select the mode I want, and then make an
>>> NSWindow with the proper bounds.
>>
>> It was explained to me on the quartz-dev list by an Apple engineer
>> that this is actually a bad thing to do. If you want to use the CG
>> APIs to capture the display, it's best to then work directly with the
>> given buffers and not attempt to put up your own window.
>>
>> I'm not at home right now, but I can send the original e-mail to you
>> privately.
>
>Even if you're switching resolution? As a game, it's pretty critical
>that I have the ability to change resolution at will. Users tend to get
>frustrated when a game messes up their window/icon positioning by
>changing resolutions. (Though I have to admit, the OS has improved
>greatly here since the classic days?it used to cause all sorts of
>grief, and nowadays a resolution switch seems to be a lot less
>destructive to the desktop environment.)
Ahh...should have pointed out that I don't do any res switches. Sorry about that.
I do have a minimum res requirement (1024x768) which is checked at startup. I ultimately just use whatever the current res is.
Since all my graphics are now vector-based PDF, I have thought of just scaling my window up/down to fill whatever res is being used.
But since not all apps have scalable content like this, I do think it's a good thing to auto-res switch to give users the largest visible area possible.
>> Because using the AppKit was very important for my needs, I ended up
>> not capturing the displays, but instead putting up "blanking" windows
>> on all devices (used the NSScreen APIs to get the list). I then put
>> up a borderless window centered on the user-selected device.
>>
>> I also use SetSystemUIMode to hide both the menu bar and Dock.
>
>I could certainly utilize this approach if changing resolutions was
>considered OK. It seems to go against the accepted advice of "always
>capture if you're going to switch resolutions," though...
Unfortunately it seems you're in a bind either way. Since you need to switch res, I do agree that capturing the display is the route to go. But then you're not supposed to use windows with captured displays. Don't know which one is the lesser of two evils :P
--
Rick Sharp
Instant Interactive(tm)
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden