Re: FullScreen and Panel
Re: FullScreen and Panel
- Subject: Re: FullScreen and Panel
- From: Mike Paquette <email@hidden>
- Date: Mon, 3 May 2004 10:31:21 -0700
On May 3, 2004, at 2:59 AM, Finlay Dobbie wrote:
If your fullscreen blanking window is at CGShieldingWindowLevel then
it's probably obscuring your authentication window. You should be
able to raise the window level of your authentication window and then
order it in front.
This may not work with some usage of the CGDisplayCapture API. In
particular, it may fail with some hardware when used in certain modes
of operation, such as full screen OpenGL contexts.
A captured display may be placed in states that cannot be supported by
the window system by the OpenGL context. The GL context may, for
example, tile the display memory, or may flip the displayed area to an
alternate region of the framebuffer. Drawing done in a window or to
the base address of the default buffer may not appear, or may appear
wildly incorrect from tiling or rowBytes changes made by the current GL
context.
The window system in general doesn't know what has been done to a
display that has been captured. It's out of the loop, so a full screen
GL context can run at maximum speed.
In general, if an application wants to operate 'full screen', while
still presenting 'Kit drawn UI elements and windows, it is better off
running a plain-style full screen window, and calling HideMenubar() to
hide the menu bar and Dock.
If an application needs to present windows only at certain times, it
can release the display and present the windows, and then re-capture
the display. If the app uses CGReleaseAllDisplays() and then uses
CGCaptureAllDisplays() to re-capture the displays, the last mode of
operation for displays (resolution, refresh, color depth) is restored.
The app can avoid the black fill on capture by calling
CGCaptureAllDisplaysWithOptions(kCGCaptureNoFill) or
CGDisplayCaptureWithOptions(display, kCGCaptureNoFill) in 10.3 and
later.
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.