LINUX.ORG.RU

ncurses и перехват активации окна терминала.


0

0

Приветствую.

Есть приложение на ncurses, и нужно проверять следующие состояния.
1. Активно ли окно терминала (если запущено под иксами).
2. Уловить момент активации окна терминала.

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

★★★★★

ncurses такого вообще не умеет, все события принимает xterm(или под чем ты там прогу запускаешь). Максимум что может сделать терминал для твоего приложения это послать sigwinch при изменении.

А что ты пытаешься сделать?

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

Я тут начал прикручивать нотификацию к mcabber.
Он вызывает пользовательский скрипт при разных событиях (нам интересны приход нового сообщения, и изменение числа непрочитанных сообщений).

И если приходит сообщение от активного собеседника (окно чата с которым сейчас открыто) но терминал не активный, мы получаем уведомление о новом сообщении, но количество непрочитанных равно 0, хотя реально я его не прочитал, так как терминал не виден. Ну и при активации терминала ничего не меняется. Так вот думаю при активации терминала уведомлять о количестве непрочитанных сообщений.
Значит если просто при поступлении sigwinch добавить вызов внешнего скрипта с информацией о непрочитанных сообщениях то все будет нормально, работать как в иксах, так и без, и без лишних либ. Верно?

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

кури wnck, ncurses тут никаким боком

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

> Значит выхода нет больше?

как вариант - ловить иксовые события при помощи devilspie

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