Как изменить поведение Xephyr по умолчанию для захвата и освобождения клавиатуры / мыши?

2345
vtest

При запуске Xephyr заголовок его окна гласит: «Ctrl-shift захватывает мышь и клавиатуру».

Я использую ctrl-shift (левое ctrl - левое смещение) в качестве горячих клавиш для переключения раскладки клавиатуры, и это мешает Xephyr, когда я нажимаю их, переключается только раскладка клавиатуры, Xephyr не захватывает мышь и клавиатуру.

Я очень хочу избежать изменения комбинации горячих клавиш для переключения раскладки клавиатуры.

Можно ли изменить стандартные клавиши для захвата мыши / клавиатуры в Xephyr?

В идеале мне бы хотелось поведение, подобное VirtualBox: окно Xephyr будет захватывать мышь и клавиатуру, когда я щелкаю по нему мышью, и отключать мышь и клавиатуру, когда я нажимаю правую клавишу Ctrl. Если это невозможно, я открыт для альтернативных предложений, которые сохранят левое ctrl - левое смещение только для переключения раскладки клавиатуры.

4

1 ответ на вопрос

7
ceving

Это запрограммировано в коде: 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

при сборке `xserver` бинарный файл` Xephyr` нигде не найден: / Blauhirn 5 лет назад 0

Похожие вопросы