xrandrを使用したデュアルモニターの設定:スクロールせずにサイズ変更/無効化

xrandrを使用したデュアルモニターの設定:スクロールせずにサイズ変更/無効化

これは質問ではなく、Ubuntuで経験した問題に対する解決策です。

設定:
ラップトップ画面(例:「LVDS-1-0」)と2番目の画面(「DP-1」など)がある場合、2番目の画面はメイン画面で、モニターはメイン画面の右側にあります(または左側)。を拡張として使用します(図を参照)。 xrandrの明示的な指示にもかかわらず、最初の画面は常に仮想的に拡張されます。このように入力した後、メインモニターでマウスカーソルを右に動かすと、迷惑なスクロールを避けることができました。

xrandr --output LVDS-1-0 --off
xrandr --output DP-1 --mode 1920x1080 --primary --pos 0x0 --output LVDS-1-0 --mode 1920x1080 --pos 1920x0

その後、スクロールせずにあるモニターから別のモニターに移動します。

修正する

別のグラフィックカードに切り替えた後(Nvidiaは私のラップトップに依存せず、Intelは統合されています)、出力順序を変更する必要があります。

output_DP=$(xrandr | grep " connected" | grep DP | awk '{print $1}')
output_LVDS=$(xrandr | grep " connected" | grep LVDS | awk '{print $1}')

xrandr --output $output_LVDS --off
xrandr --output $output_LVDS --mode 1920x1080 --pos 1920x0 --output $output_DP --mode 1920x1080 --pos 0x0  --primary

追加の便宜のために、個々のグラフィックと統合グラフィックを切り替えると、出力デバイスの名前が変わるため(LVDS-1-0とLVDS-1など)、これらの変数はより柔軟になりました。

モニターレイアウト

ベストアンサー1

同じエラーが発生しました。あなたの解決策は私には適していません。あなたのヒントはただトリガーであるため、間違いは発生しません。もう少し深く掘り下げて発見した解決策がある良い人これは他の人にも役立ちます。

主な問題は、ここにあるバグが他のモニターにスクロールすることです。仮想画面両方の画面を合わせたサイズです。したがって、ソリューションは、モニターの解像度に合わせてその画面の追加の仮想スペースを無効にするようです。これは通常--panning AxBパラメータで行われます。これを使用して仮想空間サイズを設定します。

次のことができます。

xrandr \
  --output LVDS-1-0 --mode 1920x1080 --panning 1920x1080 --pos 1920x0 \
  --output HDMI-0   --mode 1920x1080 --panning 1920x1080 --pos 0x0    --primary

\コマンドに改行文字を使用するには、スラッシュを追加します。)

残念ながら、ここで問題はドライバーです。(これはエラーです)私たちが設定した(または設定していない)パンを無視しているようです。しかし、ファンの他の部分である追跡領域は設定されていません!トラッキングエリアは、実際にカメラがモニターのカーソルをたどる画面部分です。

tl;dr: したがって、パニングをドライバーに設定しますが、トレース領域を制限するのがアイデアです。

これは、次のコマンドを使用して実行されます。

xrandr \
  --output LVDS-1-0 --mode 1920x1080 \
  --output HDMI-0   --mode 1920x1080 --panning 3840x1080+0+0/1920x1080+1920+0/0/0/0/0    --primary

「最初の4つのパラメータ[論争panning]完全な変換領域を指定します。次の4つはポインタ追跡領域です(デフォルトは同じ領域です)。最後の4つのパラメータは境界線を指定し、デフォルト値は0です。 「[マックスランドル]

おすすめ記事