В Mountain Lion (и, возможно, ранее) вы можете отслеживать наличие строки меню, отслеживая распределенные уведомления com.apple.HIToolbox.hideMenuBarShown и com.apple.HIToolbox.hideMenuBarShown. Нет меню обычно == полноэкранный режим. Это работает во всех приложениях, поэтому вы можете определить, когда, например, VLC переходит в полноэкранный режим или когда кто-то переключается на iCal в полноэкранном режиме.
Для этого зарегистрируйтесь для получения этих двух уведомлений:
[[NSDistributedNotificationCenter defaultCenter] addObserver:self
selector:@selector(windowDidEnterFullScreen:)
name:@"com.apple.HIToolbox.hideMenuBarShown"
object:nil];
[[NSDistributedNotificationCenter defaultCenter] addObserver:self
selector:@selector(windowDidExitFullScreen:)
name:@"com.apple.HIToolbox.frontMenuBarShown"
object:nil];
затем создайте свои собственные селекторы для обработки этих случаев. frontMenuBarShown срабатывает все время, поэтому, чтобы поймать реальную отдачу от полноэкранного режима, следите за первым «didExit», который следует за «didEnter» ...