
私はウィンドウ マネージャーとして Kde Plamsa5 を搭載した Xfce を使用しています。Xfce ウィンドウ設定は開けませんが、KDE システム設定は開けます。新しく作成されたウィンドウに自動的にフォーカスするオプションが見つかりません。
新しいウィンドウを開くと、フォーカスは以前あったウィンドウに残りますが、新しいウィンドウが自動的に上に移動されてフォーカスされるようにしたいと思います。
答え1
これは、Kwin ウィンドウ設定の「フォーカス盗難防止」です。「中」に設定すると、新しく開いたウィンドウに自動的にフォーカスが設定されます。
答え2
クリーンなソリューション
私はプラズマを使用していないので、問題の原因を調べることはできません。原因を排除することが「最もクリーンな」解決策であることは説明する必要はありません。
それが不可能に思えるが、この組み合わせを使用したい場合は、以下の手順で動作させることができます。解決策は、新しく作成されたウィンドウを監視し、ウィンドウが表示されたらウィンドウを上に上げる、非常に「軽量」なバックグラウンド スクリプトです。
使い方
スクリプトでは
wmctrl
sudo apt-get install wmctrl
以下のスクリプトを空のファイルにコピーし、
raise_window.py
次のコマンドでターミナルからテスト実行します。
python3 /path/to/raise_window.py
いくつかのアプリケーションを開いて、ウィンドウが自動的に表示されるかどうかを確認します。
- すべて正常に動作する場合は、スタートアップ アプリケーションに追加します: Dash > スタートアップ アプリケーション > コマンドの追加。
スクリプト
#!/usr/bin/env python3
import subprocess
import time
import os
get = lambda cmd: subprocess.check_output(cmd).decode("utf-8").strip()
curr_1 = get(["wmctrl", "-l"]).splitlines()
while True:
try:
curr_2 = get(["wmctrl", "-l"]).splitlines()
new = [w for w in curr_2 if not w in curr_1]
for w in new:
w = w.split()[0]
command = "wmctrl -ia "+w
subprocess.Popen(["/bin/bash", "-c", command])
except:
pass
curr_1 = curr_2
time.sleep(1)