Xephyrを実行すると、ウィンドウのタイトルに「ctrl-shiftがマウスとキーボードをつかむ」と表示されます。
キーボードレイアウト切り替えホットキーとしてctrl-shift(左ctrl-左シフト)を使用していますが、Xephyrに干渉します。これらを押すと、キーボードレイアウトが切り替えられ、Xephyrはマウスとキーボードを取得しません。
キーボードレイアウトを切り替えるためのホットキーの組み合わせを変更しないように強くしたいと思います。
Xephyrでマウス/キーボードをつかむためのデフォルトのホットキーを変更することは可能ですか?
理想的には、VirtualBoxのような動作が必要です。Xephyrウィンドウは、マウスをクリックするとマウスとキーボードを取得し、右のCtrlキーを押すとマウスとキーボードを解放します。これが不可能な場合は、左Ctrlキーを維持する代替案を受け入れます。キーボードレイアウトの切り替えのみを左シフトします。
コードに組み込まれています: http://cgit.freedesktop.org/xorg/xserver/tree/hw/kdrive/ephyr/hostx.c#n1002
あなたはそれにパッチを当てる必要があります:
if ((XKeycodeToKeysym(HostX.dpy,xev.xkey.keycode,0) == XK_Shift_L
|| XKeycodeToKeysym(HostX.dpy,xev.xkey.keycode,0) == XK_Shift_R)
&& (xev.xkey.state & ControlMask))
そこでは、他の好きなキーコードを使用できます。
使用可能なキーコードは/usr/include/X11/keysymdef.h
で定義されています