LINUX.ORG.RU

Для знатоков программинга под X...


0

0

Приветствую всех!
Необходимо реализовать следующее:
есть окно одного приложения, которое находится в фокусе ввода
и есть окно другого приложения, которое не в фокусе
нужно сделать, что бы все нажатия клавиш передавались не окну, которое в фокусе, а окну которое не в фокусе.
Возможно ли вобще такое реализовать?
Буду очень благодарен за любую помощь.

★★★★

sorry za translit

real'no i ne tol'ko nazhatiya no i clicki myshi
taktika takaya
$ xdpyinfo |grep XTEST
esli on chto-to vyvel to eto ochen' horosho eto oznachaet chto u tebya no X server est' XTEST extension

dalee sozdaesh' okno kotoroe budet v focuse i Selectish KeyPress KeyRelease nu vobshem vse chto nuzhno, dalee stryapaesh' fakenutyi XEvent i otsylaesh' ego tomu komu nado ispol'zuya vozmozhnosti xtest

Refs:
[1] xtest.PS
[2] xvkbd.c iz http://member.nifty.ne.jp/tsato/xvkbd/xvkbd-2.4.tar.gz

lg ★★
()

Спасибо.
Пробую.
Как я понял нужно в окне имеющем фокус получать сообщения от клавиатуры и через XTest переправлять их на окно без фокуса.

Dead ★★★★
() автор топика

Что-то не очень получается....
Ты сам пробовал?
Кажется XTestFakeKeyEvent посылает сообщения окну в фокусе, а не любому окну. xvkbd находится не в фокусе когда посылает сообщения.
Во всяком случае в параметрах XTestFakeKeyEvent идет Display а не Window.
Поэтому я и решил, что сообщение посылается только окну в фокусе.



P.S.
Может ты знаешь нормальную документацию (желательно с примерами) по програмированию под Xlib?

Dead ★★★★
() автор топика

ya delal - v xwem projecte (smart modifiers, to est' kogda u tebya knopka prosto nazhimaetsya to posylaet'sya ee symbol a kogda v sochetanii s drugoi knopkoy to rabotaet kak modifier, takim obrazom ya naprimer povesil Ctrl na Space).

vozmozhno chto tebe pridet'sya menyat' focus pered tem kak delat' etot vyzov ..

pod Xlib klevaya doca - http://www.atmosp.physics.utoronto.ca/SX5/docs/g1ae02e/contents.html

lg ★★
()

Да пошол ты нахуй, урод.

anonymous
()

да добрые тут анонимусы...

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