主に Mac 用に構築された Java アプリケーションがあります。次の 3 つのいずれかを実行できる必要があります。
アプリケーションを常に現在のスペースに追従させます。つまり、デスクトップ 2 でアプリを起動してからデスクトップ 3 に切り替えると、アプリは自動的にデスクトップ 3 に表示されます。これは、ドックのアプリ アイコンを右クリックして [オプション] を選択し、[すべてのデスクトップ] を選択するのと同じです。ユーザーの操作を必要とせずに、どうにかしてこれをアプリのデフォルトの動作にすることができれば、それは素晴らしいことです!
特定の空間の画面をキャプチャします。現在、Robot クラスを使用してスクリーン キャプチャを取得しています。現在のスペースだけでなく、キャプチャするスペースを指定できる方法があれば、それは素晴らしいことです!
少なくとも現在のスペースを離れるかどうかを検出できます。
私は、これらのどちらも可能ではない方向に傾き始めています。しかし、何か助けや可能な回避策を提供できれば、それは素晴らしいことです!
GraphicsEnvironment、GraphicsDevice、GraphicsConfiguration も試してみましたが、うまくいきませんでした。Mac の仮想デスクトップ (スペース) に関する情報は返されません。
また、プラットフォーム固有のコードの使用を絶対に避けようとしていることが、問題を難しくしているのです。JNI を使用してこれを達成できることはわかっています。または、java-apple 拡張機能に何かがある可能性があります。しかし現在、私は単一のコード ブランチを使用し、Mac と Windows の両方でビルドしています。両方のプラットフォームで 2 つの別個のビルドとバイナリを使用することを避けようとしています。