ワークスペースを切り替えるときに背景のちらつきを取り除くには?

ワークスペースを切り替えるときに背景のちらつきを取り除くには?

comptonを使用しています。i3コンプトンが有効になっていてルートXウィンドウに画像(png)があると、ワークスペースを切り替えると点滅する現象が表示されることがあります。

ここに画像の説明を入力してください。

comptonが無効になっているか、ルートウィンドウがモノクロの場合は問題ありません。これらのどれも受け入れることができません。モノクロは問題を引き起こさないので、低レベルのツールを使用すると効果的だと思います。feh交換しましたがhsetroot何も変わりませんでした。私もこれをテストしましたが、xloadimagecomptonが有効になっても機能しません(Xルートは現在のワークスペースを反映しており、理由は不明です)。 Guiアプリケーションはnitrogen同じ効果を生み出します。

公式リポジトリは過負荷になっているように見え、質問は回答を受けるまで数ヶ月待つ必要があります。 Compton対i3(または他の軽量wm)は非常に人気のある決定であり、人々は壁紙を設定したり、これらの迷惑なものを無視しないと思います。次のコマンドを使用してcompton(v0.1_beta2.5)を起動します。

compton --daemon \
--config /dev/null \
--vsync opengl-swc \
--xrender-sync \
--xrender-sync-fence \
--fading \
--fade-in-step 0.2 \
--fade-out-step 0.2 \
--unredir-if-possible \
--paint-on-overlay \
--backend glx

フェージングを無効にしても問題は解決しません。

答え1

Picomがこのスイッチを作成して以来、私はComptonの代わりにPicomを使用してきました。しかし、これはとにかくComptonでも機能します。

構成に次の行を追加すると、~/.config/picom/picom.conf問題が解決します。

# Fix background flickering during workspace switching
fading = true; # Fade windows during opacity changes
fade-delta = 50; # The time between steps in a fade in milliseconds
fade-in-step = 1; # Opacity change between steps while fading in
fade-out-step = 1; # Opacity change between steps while fading out

参考質問

答え2

それはずっと前のことだったし、問題はもはや私を悩ませていないので、それについて詳細に調査したくなかったが、@Barnercartがいくつかの調査を行ったので、i3でテストすることにしました。これらの設定は点滅しませんが、不要な設定が含まれているため、回答を受け入れたくありません。フェージングを有効にしてfade-*-stepを1に設定することは意味がありません。基本的にはフェージングが全くないという意味です。したがって、質問に対する正解は、フェードを無効にすることです(デフォルトでは)。 @Barnercartが答えを変更しても大丈夫なら受け入れます。

フェージングが好きな人は、dwmなどの他のウィンドウマネージャを使用することをお勧めします。解決策は、ウィンドウ管理に関連するロジックにあります。 IIRC、i3はX11を呼び出して、見えないウィンドウを非表示にし、コンポジタがフェードを適用するように強制しますが、dwmはウィンドウを画面から移動します。これがワークスペースを切り替えると、ウィンドウの後ろに何も表示されない理由です。不透明度が変わらないからです。

関連情報