LINUX.ORG.RU

Вторая независимая клавиатура с фокусом на одном приложени


0

1

На компьютере KDE, используется как десктопная и серверная машина.

Пожалуйста, подскажите как проще сделать следующее: Одному приложению выделить свою собственную дополнительную аппаратную клавиатуру, на которой будут надписи типа «позвони мне», «включить что-либо» и т.п. т.е. специализированные кнопки, возможно на миниатюрной клавиатуре для бухгалтеров, при этом визуально контролировать ничего не надо, т.е. монитор для второй клавиатуры не нужен.

Предположительно возможные решения: 1) Второй X сервер на котором будет работать только одно приложение и держать фокус второй аппаратной клавиатуры. Кстати не уверен клавиатуры вообще можно разнести по нескольким x серверам? Можно ли обойтись без видеокарты и иногда управлять удаленно через «Krfb - Desktop Sharing» или без frame buffer X сервер вообще не стартанет? Может быть, есть какой-нибудь эмулятор видеокарты как раз для такого случая?

2) VNC4SERVER, не уверен можно ли к нему подключить 2-ую независимую аппаратную клавиатуру?

★★

Последнее исправление: sanyock (всего исправлений: 2)

наверно надо копать в эту сторону: such Xnest and Xephyr.[8] With this solution, each nested X server runs in each screen of a host X server (e.g. Xorg) and a modification in the nested servers let it get the exclusivity of each set of mouse and keyboard. In 2008, the C3SL group releases the Multiseat Display Manager (MDM) [9] to ease the process of installation and configuration of a multiseat box

или можно проще?

sanyock ★★
() автор топика
Ответ на: комментарий от sanyock

клава будет подключена к мой собственной программе, может быть как-им нибудь образом просто можно изолировать клаву от основного X сервера, а проге аппаратно считывать из /dev/input/eventX ? Будет ли читаться /dev/input/eventX из под wine в dotnet?

sanyock ★★
() автор топика
Ответ на: комментарий от sanyock

Xnest and Xephyr - это иксы в иксах, т.е. касательно твоего вопроса это то же самое, что и запускать вторую сессию.

А насчет самого вопроса, даже не знаю что подсказать. Самому интересно как делается. Хотя кажется решение лежит где-то на поверхности.

Radius ★★★★
()

Из wine напрямую с линуксовым устройством ты сможешь работать только после нескольких хаков. Можно попробовать взять нечто вроде actkbd, перебиндить *все* нужные клавиши на второй клавиатуре на кейкоды куда-нибудь повыше и скормить это основным иксам, но я не знаю, умеет ли вайн xinput2.

Кстати не уверен клавиатуры вообще можно разнести по нескольким x серверам? Можно ли обойтись без видеокарты и иногда управлять удаленно через «Krfb - Desktop Sharing» или без frame buffer X сервер вообще не стартанет?

Да, описано в любом достаточно старом мане по мультиситу. Да, есть Xvfb (пример использования).

x3al ★★★★★
()
Ответ на: комментарий от x3al

Вариант: ловить нужные клавиши со второй клавиатуры тем же actkbd и слать через xvkbd (или через любой выставленный наружу IPC) сигналы нужной программе. Иксам, понятное дело, о второй клавиатуре можно не знать вообще в таком случае.

x3al ★★★★★
()
Ответ на: комментарий от Radius

решил попробовать для начала xephyr c опцией -keybd, чтобы задедикэйдить вторую клаву в виртуальные иксы

sanyock ★★
() автор топика
Ответ на: комментарий от sanyock

keybd не работает в дебиановском xephyr ephyr НЕ лочит отдельную клаву только для себя

Xvfb не умеет работать с физической клавой

Xnest тоже не подошел уже не помню почему

таким образом ни один из известных мне виртуальных иксов не подошел

зато случайно обнаружил драйвер dummy для обычного икса, который нормально заработал в связке с krfb, потом попробую x11vnc, хотя у меня и krfb не тормозит

теперь пытаюсь поднять 2 отдельных икса: 1) для десктопа 2) для dummy+2ой физической клавы

например, по рецепту: http://habrahabr.ru/post/112534/

sanyock ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.