LINUX.ORG.RU

Вопрос по X: отказ окна от фокуса


0

0

Предположим, у меня есть главное окно, а у него есть дочернее. Мне нужно сделать так, чтобы фокус принимало (становилось активным) только главное окно, а дочернее -- никогда. Есть ли в X какой-нибудь специальный атрибут для этого? Я искал в документации, но ничего не нашел. Единственное что приходит в голову -- отлавливать в дочернем окне фокус и сразу передавать его главному :/ Подскажите, пожалуйста, как сделать лучше.

anonymous

Ответ на: комментарий от polachok

Спасибо, но не помогает. Делал дочернему окну следующее:

XWMHints *xwmh=XGetWMHints(display, window);
xwmh->input=false;
XSetWMHints(fltk::xdisplay, xid(Wnd), xwmh);

Но окно все равно становится активным. Может я чего-то не так понял...

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

Точнее так:

XWMHints *xwmh=XGetWMHints(fltk::xdisplay, xid(Wnd));
xwmh->input=false;
XSetWMHints(fltk::xdisplay, xid(Wnd), xwmh);

Как видно из примера, я использую fltk...

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

А, понятно. Это позволяет избежать фокусировки окна, скажем, при переключении окон Alt-Tab (у меня Gnome). Следовательно, это не совсем то, что я хотел. Мне нужно, чтобы даже если я щелкаю мышью по этому окну, оно не становилось активным. Неужели дурацкий способ из моего оригинального поста единственный? :(

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

для такой редкой задачи не такой уж он дурацкий. и пожалуйста, не забудь про ewmh.

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