macbookで外部ディスプレイを接続し、マルチディスプレイ環境にすると、XQuartzのウィンドウが見えなくなってしまうことがあります。その解決法を紹介します。
macbookに外部ディスプレイを接続して広い画面で作業を行っている方は多いと思います。しかし、外部ディスプレイを接続すると、XQuartzを利用したアプリケーションのウィンドウがみえなくなってしまうことがあります。XQuartzを利用したアプリケーションには、例えば、Gnuplot、Inkscape、gimp、gvなど開発者向けのアプリケーションが多くあります。 詳細な症状は次のとおりです。
症状
- 外部ディスプレイを接続すると、それまで表示されていたXQuartzのウィンドウが見えなくなる。
- 内蔵ディスプレイでも外部ディスプレイでもウィンドウが表示されない。
- ミッションコントロール(ウィンドウ一覧表示)では、当該のウィンドウをみることはできる。
- ミッションコントロールで当該ウィンドウをクリックし指定しても、ウィンドウはどこにも表示されない。そのため後ろに隠れているわけではなさそう。
- 外部ディスプレイを切断すると、ウィンドウが表示されるようになる。
解決法
次のようにすると、ウィンドウが不可視になることを回避することができます。
- メニューバー → アップルマーク → システム環境設定 → Mission Control を表示
- 「ディスプレイごとに個別の操作スペース」のチェックを外す。
- Mission Control設定ウィンドウを閉じる。
- 再びメニューバーリンゴマーク → ログアウト。(作業内容を予め保存しておいてください。)
- ログインし直す。
すると、外部ディスプレイを接続した状態でも、XQuartzウィンドウが表示されるようになります。この設定だと、外部ディスプレイ側にメニューバーが表示されなくなってしまいますので、その分少し不便になりますが、外部ディスプレイが使えないという状況よりはましかと思います。不具合はMavericksの時代から報告されているようですが、根本的な解決方法はまだないそうで、この方法で回避するのが最善のようです。