2011-07-25 9 views
17

アプリを全画面モードで使用すると、画面の上部を「軽く」移動しない限り、メニューバーが非表示になります。しかし、あなたがスポットライトのホットキーを押すと、メニューバーはスポットライトの検索バーで丁寧に画面に移動します。優れた。メニューバーのアプリの動作とフルスクリーンのアプリのスペース(Mac OS 10.7/lion)

私はこのスポットライトのメニューバーの処理をエミュレートしたいステータスバー/顔なしのアプリケーションを移行しています。 Snow Leopardの下では、メニュー(NSStatusBarアイテムがあり、私はpopUpStatusItemMenuを呼びます)を表示することによって、システムのホットキーに応答します。しかし、アプリケーションがフルスクリーンモード/スペースのときには、メニューバーはフルスクリーンアプリのために隠されています(ただし、ホットキーはステータスバー項目を表示し、キーボードを使用してメニュー上の個々のアクションをアクティブにすることができますメニューポップアップが表示されません)。

もう一度言います - 誰でもホットキーに対応してメニューバーを表示する方法を知っていますか?または、私のUIを扱う良い方法がライオンの下にあるのはいつ尋ねるべきですか?

おかげで、

+0

+1私も知りたい! :) – nacho4d

+0

あなたのアプリケーションがホッケーコマンドを受け取ったときに、すぐにCmd +スペースを2回押した場合(開いたり閉じたりするとどうなりますか?ステータスバーが下にスライドし、スポットライトメニューがすぐに表示され、表示されず(レンダリングされていない可能性もあります)、その後に直接アプリケーションメニューを表示するとステータスバーが残ります。おそらくあなたが探しているものではないかもしれませんが、とにかく面白いパッチワークアプローチです:) – Greg

+0

これは何年ものことでしたが、ここでは似たようなことをやっています。これに関する更新はありますか? –

答えて

2

私はスポットライトがログインセッションのプレゼンテーションモードを変更するプライベート・インタフェースを使用していることを合理的に一定感じ。 アプリケーションのプレゼンテーションモードを変更するには、-[NSApplication setPresentationOptions:](または廃止されたが利用可能なCarbon同等物SetSystemUIMode())を使用します。ただし、これらは明示的にのみ、「フロントフェイスフルアプリケーションからのログインセッションに伝播します。

現在、特定のUI要素(メニューバー、ドック)がバックグラウンドから自動ハイドモードになっている場合、そのAPIを要求するAPIとしてはfiling a suggestionをお勧めします。

関連する問題