• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag
 

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: FullScreen and Panel
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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.


References: 
 >FullScreen and Panel (From: "Martin Meneses" <email@hidden>)
 >Re: FullScreen and Panel (From: Finlay Dobbie <email@hidden>)

  • Prev by Date: Subclassing NSToolbar is *almost* really good
  • Next by Date: [Q] Getting edited cell data before enter key pressed
  • Previous by thread: Re: FullScreen and Panel
  • Next by thread: Re: Msg reply
  • Index(es):
    • Date
    • Thread