LINUX.ORG.RU

Передача фокуса из процесса в процесс


0

0

Есть прога работающая в режиме демона. В определённый момент она выбрасывает диаалоговое окно. Но поскольку запущена она через KProcess то окно не является активным и его элементами нельзя управлять с клавиатуры. Вопрос: как передать этому окну фокус от активного процесса?

Ты имел ввиду не "от активного процесса" (таких может быть в ЦПУ на данный момент 0 или 20), а "от текущего окна с фокусом (зачастую с курсором мыши)".

А какой Window Manager у тебя? Знаю как задать автоматический фокус для любого или избранного нового окошка в FVWM, но подозреваю у тебя другой.

Можно попытаться что-то генеричное сделать; например, с помощью wmctrl изменить позицию нового окна, подставив его под курсор мыши, но я не думаю, что это будет качественно работать на всех WM-ах. Всё-таки фокус - это интимное дело пользователя WM. Сам пользователь должен решать, хочет ли он клик-для-фокуса, фокус-следует-за-мышкой, авто-фокус для новых окон или нет, а вовсе не автор программы. Например, есть такое понятие как модальное окно, пока окошко не закроется, ни одно другое окно не будет доступно - это зло. Не надо на пользователя так давить.

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

Дело в том что пользователь ничего общего с мышой иметь не хочет. Так что, это ещё, большой вопрос, кто на кого давит. Даже если моё окно находится под курсором мыши, с клавы, я им всё равно управлять не могу. Спасибо за уточнение формулировки.

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

Ну, я о том и говорю, не дело аппликации захватывать фокус. Если пользователь захочет обрабатывать некоторые окна особо, он так и скажет в конфигурации своего WM, например "Style MyKProcess GrabFocus".

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

Заказчик мне сказал что работать хочет только клавой. А поскольку это полкан, он понятия не имеет ни о каких WM. И знать ничего не хочет. Так что фокус мне придётся захватить. Вопрос только как? Расскажи по подробнее о WM и прчих своих идеях. А то я в Линухе новичок и маловато ещё знаю.

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