IT用語集 › プログラミング › SetInputFocus

SetInputFocus

プログラミング Svenska → 更新: 2026-10-23

キーボード入力をどのウィンドウに送るか、そしてそのウィンドウが消えたらどうなるかを決めるXプロトコルのリクエスト。

引数は3つある。対象はウィンドウのほか、すべてのキー入力を捨てるNone、あるいはポインタのある画面のルートウィンドウにフォーカスを与えるPointerRoot(実質的にはマウスの下にあるウィンドウ)を指定できる。ウィンドウマネージャなしで動くXサーバーの初期状態がこれで、Xでフォーカス追従マウスが自然に感じられた理由の大きな部分である。revert_toは、そのウィンドウが表示されなくなったときにフォーカスを親へ、PointerRootへ、あるいはどこにも渡さないかを指定する。表示されていないウィンドウを対象にするとBadMatchになる。

3つ目の引数はタイムスタンプで、直近のフォーカス変更より古ければサーバーはリクエストを黙って無視する。そのためICCCMはクライアントがCurrentTimeを渡すことを禁じている。2秒前のクリックに今ごろ反応する鈍いプログラムが、ユーザーがすでに移動した先のウィンドウからフォーカスを奪うのを防ぐためだ。このルールを守るプログラムは多くない。

← 用語集に戻る