フルスクリーンマウススクロールを無効にする方法は?

フルスクリーンマウススクロールを無効にする方法は?

「フルスクリーン」モードで実行されているプログラムで、「フルスクリーン」解像度をデスクトップ解像度より低く変更すると、マウスを画面の端に移動してプログラムの端をスクロールして次のように表示できます。私のデスクトップ。これは本当に問題が多く、実際に私のシステムをクラッシュさせ、非常に迷惑です。

この機能を無効にする方法は?私はそれが何であるかもしれず、2003年に発生し、次に答えられていない質問以外には何も見つかりません。https://www.linuxquestions.org/questions/linux-software-2/disabling-virtual-screen-mouse-scrolling-in-x-111237/

誰もが例を見たい場合は、SuperTux 2を直接インストールし、フルスクリーン解像度を640x480のように変更してから、フルスクリーンボックスを選択してマウスを画面の端に移動できます。

答え1

部分的な答え:

その理由は、最初にXサーバーのフレームバッファサイズが固定されているためです。その理由は、XアプリケーションがXサーバーに「画面」(フレームバッファ)サイズを要求した可能性があり、Xサーバーが今後これを変更すると誤ったサイズを想定しているためです。

したがって、解像度の変更(たとえば、Ctrl-PlusやCtrl-Minusを使用したモデル行の変更)は、フレームバッファを同じサイズに保ち、フレームバッファにビューポートを提供することによって実装されます。ビューポートが自動的にスクロールされます。

実際に「無効にする」方法はありません。最新のXでは、これを使用してフレームバッファのサイズを変更することもできますxrandr(ホットキーにバインドできるようです)。ただし、アプリケーションがこれを予期せず、RANDR拡張をサポートしていない場合は、エラーが発生する可能性があります。

別のオプションは、アプリケーションをフルスクリーンで実行せずに常にウィンドウで実行し、必要に応じてウィンドウのサイズを変更し、WMがウィンドウを境界なしでレンダリングするように説得することです。設定が少し難しい場合があります。

私は長い間SuperTuxを使用してきましたが、かなり古いので、ソースコードを変更せずにSuperTuxが「正しく」動作するようにする方法はありません。

答え2

私はArandRがこの問題を解決するのを助けることができると思います。私のデモは次のとおりです。

これは正常に動作する一般的なデスクトップです。DP-1今回の発表のテーマになります。 一般的なデスクトップはうまく動作します

ここでSuperTux2を開きました。 SuperTux2は私のコンピュータに全画面表示されますが、これが私のスクリーンショットツールに表示される方法です。 SuperTux2フルスクリーン

これがSuperTux2の外側をクリックすることがデスクトップに与える影響です。 壊れたデスクトップ

ArandRを使用すると、デスクトップの解像度をリセットできます。左上隅のチェックボックスをクリックすると、元の設定にリセットできます。 強調表示されたチェックボックス付きArandR

ヴィオラ!我々は戻ってきて、すべてが正常に戻った。 ArandRはデスクトップを通常の解像度に変換します。

XrandRを使用してターミナルで手動で設定できますが、この場合はもっと努力する必要があると思います。

また、(良い)ウィンドウマネージャは、競合なしでこの解像度の変更を処理する必要があることを指摘したいと思います。解像度の変更によってコンピュータがクラッシュする場合は、ウィンドウマネージャをアップグレードする必要があります。

答え3

ウィンドウマネージャを変更または再構成する必要があるようです。

いくつかの情報は私をこの結論に導きました。

Xfce DEの場合、私のウィンドウマネージャはXfwm4です。提案どおりにSuperTux2をインストールして実行してみましたが、発生した問題は発生しませんでした。

次に、別の方向で問題を調べます。つまり、私のシステムがあなたのシステムが何をするのかを理解しようとし、ウィンドウマネージャが問題の核心であることを明確に示す次の記事を見つけました。 。複数の画面にわたってウィンドウを広げるデスクトップ環境を探しています。

答え4

novaeuビデオドライバからnvidia-304に切り替えたときも同じ問題が発生しました。それ以前はありませんでした。

上記のスクリーンショットが示す内容を理解できません。 arandrにチェックボックスはありません。

デスクトップファイルの実行コマンドラインでsupertux2の前後の解像度を設定することでこの問題を解決しました。

xrandr - 出力VGA-0 - モード640x480&&supertux2&&xrandr - 出力VGA-0 - モード1920x1080

関連情報