views:

68

answers:

1

I have an OpenGL-based app that can run windowed or fullscreen in OS X 10.5. While in windowed mode, pressing the volume keys in the keyboard changes the volume setting (mute/unmute for example) and the OSX-drawn speaker icon overlay is drawn, as it happens with every other application.

However, in full screen mode, pressing the keys does change the volume setting, but no overlay is drawn - I can't figure out why, since I'm not doing anything different.

Any ides?

+2  A: 

When you are in fullscreen, your app captures the display and nothing else can draw to the screen as the window server is not asked to do it's compositing.

If you want to have regular compositing in full screen, you must hide the menu bar, window title bar, and make your window full screen.

Google a bit, there are tons of posts on how to do that without capturing the display.

Edit: this might be of interest: http://developer.apple.com/mac/library/technotes/tn2002/tn2062.html