Rectangleの重なりオフセット:重なり合ったウィンドウを見つける
グリッド位置を巡回させる、つまり同じショートカットを繰り返し押してウィンドウを複数の位置に移動させる操作は、ある特有の紛らわしい結果を生むことがある。すでに1つ目のウィンドウが占めている位置に2つ目のウィンドウが配置されると、下に何かあるという視覚的な手がかりが一切ないまま、その真上にぴったり重なってしまうのだ。バージョン0.96は、まさにこの問題に対する的を絞った修正を追加した。プルリクエスト #1762で実装されたものだ。
この機能が実際にすること
PR自身の説明によれば、あるウィンドウが別のウィンドウにすでに占められているグリッド位置に配置されるとき、Rectangle appは小さなオフセット(デフォルトで11ポイント)を適用し、下にあるウィンドウの端が完全に隠れるのではなく見えるようにする。完全に見えなくなった状態で2つのウィンドウが重なる代わりに、そこに2つ目のウィンドウがあることがはっきりと分かるわずかなカスケード効果が得られ、それをクリックして前面に持ってくることができるようになる。
重なりが実際にどう検出されるか
PRによれば、検出方法は原点座標の一致を使っている。完全なサイズの完全一致を求めるのではなく、あるウィンドウの左上の角が、別のウィンドウのそれと同じ座標に落ちているかどうかを確認する方式だ。これには具体的で有用な結果がある。4分の1サイズのウィンドウと8分の1サイズのウィンドウが同じ角の位置を共有していれば、サイズが異なっていてもオフセットは発動する。重要なのは共有された開始点であって、寸法が同一かどうかではないからだ。
PRに文書化されている通りの設定項目
設定可能な項目は3つあり、うち2つはチェックボックスとして、3つ目は隠れた環境設定として公開されている。
- 「重なり時にサイクル位置をずらす」 — 追加設定のポップオーバーにあるグリッド位置セクションのチェックボックスで、この動作全体をオン・オフする。
cyclingOverlapOffsetSize(デフォルト11) — ずらす幅をポイント単位で指定するもので、もっと目立つ、あるいは控えめなカスケードにしたい人向けにターミナルから調整できる。cyclingOverlapMaxCascade(デフォルト1、最大5) — 複数のウィンドウが同じ位置に積み重なったとき、オフセットを何回まで重ねられるかを指定する。値が1なら2つ目のウィンドウだけがずらされ、値を大きくすると3つ目、4つ目と重なるウィンドウがさらにカスケードしていき、おそらくどこかでパターンが繰り返されるか止まる。
defaults write com.knollsoft.Rectangle cyclingOverlapOffsetSize -float 20
defaults write com.knollsoft.Rectangle cyclingOverlapMaxCascade -int 3
どちらかの値を変更したら、Rectangle macを再起動しよう。
この特定の修正が存在する理由:メンテナー自身の位置づけ
PRの議論そのものの中で、Rectangle appのメンテナーはこの寄稿された機能に対して、すでに検討されていたより大きなアイデア、つまり重なり合ったウィンドウを順に切り替える機能と結びつけて反応している。重なりオフセットはそのコンセプトに自然に沿うものだと説明し、関連するアイデアとして「ホバー時のカウントバッジ」という、別機能として後に続くかもしれないものにも触れている。Rectangle appのウィンドウ重ね合わせに関する挙動が今後どこへ向かうのかを理解しようとしているなら、これは有用な文脈だ。v0.96で出荷された重なりオフセットは、重なり問題そのものに対する完全で独立した解決策というより、より広範な「重なったウィンドウの切り替え」機能のための土台であるように見える。オフセット機能がマージされた時点ではあくまで将来を見据えたアイデアとして説明されていたので、それ以降、積み重ねの巡回機能やホバーベースの切り替え機能が続編として実際に出荷されたかどうかは、プロジェクトの現在のリリースノートで確認してほしい。
巡回操作が多いワークフローへの実用的な影響
自分のレイアウトの習慣が、同じグリッド位置のショートカットを繰り返し押してウィンドウを複数の位置に巡回させるというもの(このシリーズの別記事で扱った3分の1や4分の1における「繰り返しで巡回する」挙動と同じ)なら、この機能は特に、巡回の途中で偶然2つの異なるウィンドウが同じ座標に重なってしまうケースで役立つ。この修正が入る前は、そのシナリオは何の視覚的な手がかりもなくウィンドウを完全に隠す結果を静かに生み出していた。修正後は、少なくとも小さなカスケードが、そこに探すべき何かがあることを教えてくれる。
隙間のない正確なグリッド配置に頼っている場合に知っておくべきこと
このオフセットはチェックボックスによるオプトイン方式なので、自分でオンにしない限り影響はない。自分のワークフローが、毎回例外なく正確でずれのないグリッド座標にウィンドウが収まることに依存しているなら、この設定はオフのままにしておこう。この機能は、以前この見えない完全重なりの問題に悩まされたことのある人のために特に用意されたものであって、グリッドや巡回操作を使うすべての人に強制されるデフォルトの挙動変更ではない。