web-dev-qa-db-ja.com

(デュアルモニターおよび12.04)ウィンドウを全画面にスナップすると、ウィンドウが他のモニターに配置される

背景

(この問題はUnity 2Dでは発生しません)

ウィンドウを移動し、画面の上部にカーソルを置くと、オレンジ色のボックスが画面全体に広がり、放すとウィンドウが全画面表示になります。少なくとも、そうなるはずです。

Unity2Dではないとき(つまり、Unity 3Dまたはログイン時に表示される「Unity」)、右側のモニターにウィンドウを全画面表示できますが、ウィンドウを左のモニターを放すと、モニターのフルスクリーンにスナップします!!!!!

もちろん、2つのモニターを持つことの全体的な目的は、異なるものを同時に表示できるようにすることであるため、非常にイライラします。

質問

誰がこれを引き起こしているのか知っていますか?

多分、右側のモニターを「プライマリ」などとして受け入れているように感じます。常に発生するのではなく、時々発生するだけです。 12.04へのアップデート以降、それを始めただけです。また、Compizプロセスが実行されており、コンピューターが何もしていない場合でも、プロセッサの多くを使用しています。私のCPUは30-31C前後でアイドル状態でしたが、今はそこに座っているだけで、39-41C前後です。

入力ありがとう!

5

ソリューション

私はそれを考え出した。パウクが言ったように、それは異なる解像度に関係しています。

フルサイズのウィンドウを大きなモニターから小さなモニターに移動しようとした場合にのみ発生します。

問題を解決するには:

大きいモニターのウィンドウのサイズを変更して、小さいモニターで全画面表示されるサイズよりも小さくします(つまり、ウィンドウは端に触れずに小さいモニターに収まります)。

次に、それを小さいモニターの上部にドラッグして放し、フルスクリーンにします(または小さいモニターにドラッグして「最大化」します)。

Miceterminatorが言ったように、あなたは横にドラッグすることもできます.....ウィンドウに何かをするだけで、小さなモニターのフルスクリーンよりも小さくなります。

ディスカッション

したがって、問題は、大きなウィンドウ(私にとっては1920x1080)を、いわば小さな(私にとっては1600x900)「キャンバス」に収めようとしていることです。それがなぜ大きなモニターに戻るのかを説明しています。 「小さいキャンバス」に収まるように単純に小さくしてから、最大化して完全に塗りつぶすことが解決策のようです。

それがわかってよかった!

5

私が指摘したいのは、デュアルヘッドのセットアップでもウィンドウのスナップが非常にグリッチであることです。しかし、compizがフルスクリーンアプリケーションに間違ったモニターを選択したとき、私はそれをモニターの側(ウィンドウのあるモニターの半分)にスナップしようとし、モニターでもう一度最大化しようとすると、動作します。

また、2つのモニター間のマウスバリアに注意してください。ウィンドウが他のモニター上で移動しても、マウスが後ろにとどまることがあります。したがって、最大化しようとすると、compizはマウスが置かれているモニターを使用するため、間違ったモニターにスナップします。バリアは2番目のモニターのランチャーにアクセスするだけなので、compiz-config-settings-manager(ccsm)を使用してバリアを無効にします(ユニティプラグイン設定で見つけることができると思います)。

1
miceterminator

モニタの解像度が異なる場合に発生することに気付きました。たとえば、1366x768の解像度のラップトップと1920x1080の外部モニターがあります。 (トップエッジにスナップするか、最大化ボタンを使用して)最大化しようとすると、ウィンドウの高さが画面の垂直方向の高さ(ラップトップ)よりも大きい場合、高解像度の画面(外部モニター)で最大化されます。

1
pauk960