結論から言うと: Rectangleは、自分で制御できる設定に基づいて、どのディスプレイが「現在」かを判断する——カーソルがある場所か、ウィンドウが既に置かれている場所のどちらかだ。ウィンドウが繰り返し間違った画面に収まる場合、ほぼ常にこの設定のミスマッチが原因だ。Rectangleの環境設定で切り替え、推測がうまく当たることを期待するのではなく、次/前のディスプレイへのショートカットを使ってウィンドウを意図的に移動させよう。
そもそもなぜこれが起こるのか
画面が1つだけなら、「このウィンドウを左にスナップ」という指示に解釈の余地はない。2台目のディスプレイを追加すると、同じコマンドが問いになる:どの画面の左半分なのか?Rectangleはどちらかを選ばなければならず、あなたが定義したルールに従って選択する。
可能なルールは2つあり、どちらも理にかなっている。1つは、マウスカーソルが現在ある場所をアクティブなディスプレイとして扱う。もう1つは、移動させようとしているウィンドウが既に置かれている場所をそう扱う。どちらがしっくりくるかは完全に作業スタイル次第だ——だからこそ固定された挙動ではなく設定になっているのだ。
「間違ったモニター」に関する不満のほぼすべては、このルールがユーザーの頭の中のイメージと食い違っていることに行き着く。手は1つのことをしているのに、アプリは別のことを想定していて、ウィンドウは意図しない場所に現れる。
解決法:どのディスプレイを「現在」とするかを変更する
メニューバーからRectangleアプリの設定を開き、現在の画面をどう判断するかを制御するオプションを見つける——カーソルに従うか、ウィンドウに従うかの選択だ。
ウィンドウをそのままにしておきたいのに、マウスがあるディスプレイに繰り返しスナップしてしまう場合?ウィンドウベースのオプションに切り替えよう。これは、カーソルを別の場所に置いたままキーボードショートカットを押すタイプの人に合う。
注意を向けている場所にウィンドウが追従してほしいのに、それぞれのディスプレイにとどまり続けてしまう場合?カーソルベースのオプションに切り替えよう。これは、マウスが主導していて、見ている場所にウィンドウが来ることを期待するタイプの人に合う。
設定を変更し、それぞれのディスプレイにあるウィンドウでテストしよう。2つのうちどちらかが自分の直感に合うはずで、合致すれば問題はたいてい恒久的に消える。
意図的にディスプレイ間でウィンドウを移動する
推測ルールに頼るのも悪くないが、明示的なコマンドのほうが優れている。Rectangleにはウィンドウを次または前のディスプレイに送る専用のショートカットが用意されており、これを使えば曖昧さは完全になくなる。
次のディスプレイ — Ctrl + Option + Cmd + →
前のディスプレイ — Ctrl + Option + Cmd + ←
身につけておく価値のある習慣:まずウィンドウを望むディスプレイへ移動させ、その上でその場所にスナップさせる。1回ではなく2回のキー操作になるが、カーソルがたまたまどこにあるかに頼ることなく、毎回意図した通りの結果が得られる。
クラムシェルの問題
外部ディスプレイを接続した状態でMacBookを閉じて使う——クラムシェルモード——は、これ独自の変種の問題を生む。ふたを閉じると内蔵画面がオフになり、すべてが外部モニターに収まるはずだ。たいていはそうなる。
この切り替わりの前後で奇妙なことが起こる。ウィンドウがまだ内蔵ディスプレイに置かれたままふたを閉じると、macOSはそれらを再配置しなければならず、その結果が必ずしも期待通りの場所に落ち着くとは限らない。Rectangleはその後、macOSが作り出した配置に対して動作することになる。
実用的な対処は、トラブルシューティングの前にいったん落ち着かせることだ。ふたを閉じた後、あるいはMacをスリープから復帰させた後は、macOSが並べ替えを終えるまで少し時間を置き、それから次/前のディスプレイへのショートカットでウィンドウを意図的に配置しよう。クラムシェルの切り替わり後に配置が明らかに乱れて見える場合は、Rectangleを終了して再起動すれば現在のディスプレイ構成をきれいに読み直してくれる。
ディスプレイの接続・切断の後
同じロジックは、作業の途中でモニターを接続する場合にも当てはまる。画面のジオメトリが変わり、実行中のアプリは古いディスプレイ構成の情報のまま動作していることがある。
画面を接続または切断した直後にスナップの挙動がおかしくなった場合は、メニューバーからRectangleを終了して再起動しよう。5秒で済み、たいていの一時的なマルチモニターの不具合はこれで解消する。設定が間違っていると決めつける前に、まずこれを試そう——特に1時間前は同じ構成で問題なく動いていた場合はなおさらだ。
解像度とスケーリングが異なる場合
ノートパソコンの画面の隣に、異なるスケーリング係数の4K外部ディスプレイを置く構成は現実によくあるパターンで、これがもう1つのしわを生む:あるディスプレイでの「半分」というサイズは、別のディスプレイでの「半分」とはピクセル数が異なる。ウィンドウを両者の間で移動させると、新しい画面の比率に合わせてリサイズされる。
これは不具合ではなく正しい挙動だが、正確な寸法がそのまま移動先まで維持されると期待している人を戸惑わせる。ディスプレイ間で特定のピクセルサイズを維持したい場合、それがRectangle Proのカスタムサイズ機能の役目だ——無料版は、ウィンドウが現在ある画面の割合で動作する。
クイックリファレンス
ウィンドウをそのままにしたいのに、カーソルがある画面に移動してしまう — ウィンドウベースの現在の画面設定に切り替える。
カーソルに追従してほしいのに、ウィンドウがその場にとどまり続ける — カーソルベースの設定に切り替える。
毎回確実な結果がほしい — 次/前のディスプレイへのショートカットで先に移動させ、その後にスナップさせる。
ディスプレイの接続・切断の直後の混乱 — Rectangleを終了して再起動する。
ノートパソコンのふたを閉じた後の妙な挙動 — macOSの再配置が終わるのを待ってから、意図的に配置し直す。
ディスプレイをまたぐとウィンドウがリサイズされる — 解像度やスケーリングが異なる場合は想定内の動作だ。
よくある質問
Rectangle for Macをシングルディスプレイでもマルチモニターでも使う場合、設定で完全にコントロールできる。Rectangleを無料でダウンロードして、ウィンドウ管理がどれだけ簡単になるか確かめてみよう。
Rectangleがウィンドウを間違ったモニターにスナップさせるのはなぜ?
Rectangleは、マウスカーソルに追従するか、ウィンドウの既存の位置に追従するかのいずれかの設定で「現在の」ディスプレイを判断している。ウィンドウが間違った画面に収まる場合、その設定が自分の作業スタイルと合っていない。Rectangleの環境設定で切り替えれば、ほとんどのケースは解決する。
Rectangleでウィンドウを別のモニターに移動させるには?
次のディスプレイにはCtrl + Option + Cmd + 右矢印を、前のディスプレイにはCtrl + Option + Cmd + 左矢印を使う。スナップさせる前に意図的にウィンドウを移動させておけば、アプリがどの画面を選ぶかについての推測が一切不要になる。
Rectangleはクラムシェルモードでも正しく動作する?
動作するが、その切り替わりの瞬間は少々乱れることがある。ふたを閉じるとmacOSは内蔵画面からウィンドウを強制的に再配置するため、その結果が必ずしもきれいに収まるとは限らない。macOSの再配置が終わるのを待ってから、ディスプレイ移動のショートカットでウィンドウを配置し直そう。Rectangleを再起動すれば、残った混乱も解消される。
ディスプレイ間でウィンドウを移動するとサイズが変わるのはなぜ?
Rectangleは画面の割合で動作するため、4Kモニターでの半分とノートパソコンの画面での半分ではピクセルサイズが異なるからだ。ウィンドウは移動先の画面の比率に合わせてリサイズされる。正確なピクセルサイズを維持したい場合、それはRectangle Proのカスタムサイズ機能が対応する範囲だ。
