Можно ли назначить идентификатор окна при запуске программы из оболочки? - PullRequest
3 голосов
/ 19 октября 2011

Если вы сделаете xwininfo, вы получите идентификатор окна, однако для этого необходимо щелкнуть мышью по целевому окну. Есть ли способ заставить оконный менеджер или, по крайней мере, предложить оконному менеджеру использовать определенный идентификатор. Что-то вроде

gedit windowid=0x12345678


Я загрузил некоторые файлы в GitHub (см. здесь или здесь ), демонстрируя, как мне удалось обойти это. Если вы посмотрите на них, вы лучше поймете, что я пытаюсь сделать.

1 Ответ

1 голос
/ 20 октября 2011

Нет, это невозможно. Идентификаторы окна задаются X-сервером при вызове XCreateWindow / XCreateSimpleWindow, и изменить их невозможно, было бы ужасно опасно и неправильно позволить пользователю выбирать их. Если вы планируете найти окно, вы можете попробовать использовать функцию XQueryTree вместе с XGetWindowProperty и свойством WM_CLASS.

...