Re: Implementing Full Screen for 10.7 but app should also run on 10.6
Re: Implementing Full Screen for 10.7 but app should also run on 10.6
- Subject: Re: Implementing Full Screen for 10.7 but app should also run on 10.6
- From: glenn andreas <email@hidden>
- Date: Wed, 16 Nov 2011 12:56:31 -0600
On Nov 16, 2011, at 3:08 AM, Stefan Werner wrote:
>
> On 14.11.2011, at 19:20, Quincey Morris wrote:
>
>> Don't follow the advice to define NSWindowCollectionBehaviorFullScreenPrimary yourself. It's really, really dangerous to replicate a fragment of one SDK in a build against an earlier SDK. What if the value changes in a later 10.7.x SDK, or if the value is invalidated in some way you can't foresee?
>
> If that value changed in a later SDK, it would break binary compatibility. While I strongly suggest against replicating SDK code in your own code for the reason you're giving, it does not apply in this case.
>
> Any application compiled today will have a constant number in place of NSWindowCollectionBehaviorFullScreenPrimary. If the OS at some point changes the meaning of that number, it will break all applications compiled before that date.
Not necessarily.
There are a number of places where the frameworks check to see what SDK you link against to determine what behavior you get, just so that old apps (which are then linked against older SDKs) continue to work as they did, but new/fixed behavior is exhibited when linked against current SDKs.
So it could happen that, when X+1 is released, anything that links against X gets the old interpretation of a flag (first implemented in version X), but if you link against X+1 you get the new one. And if you actually link against X-1 (and manually add that flag from the X SDK) who knows what you'll get. Unlikely, but I wouldn't be surprised if this sort of thing hasn't bitten somebody at some point... (though probably with things like side effects of methods, and not different interpretations of constant flags)
Glenn Andreas email@hidden
The most merciful thing in the world ... is the inability of the human mind to correlate all its contents - HPL
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden