Можно ли назначить идентификатор окна при запуске программы из оболочки?
Если вы делаете xwininfo
он даст вам идентификатор окна, однако для этого необходимо щелкнуть мышью по целевому окну. Есть ли способ заставить оконный менеджер или, по крайней мере, предложить оконному менеджеру использовать определенный идентификатор. Что-то вроде
gedit windowid=0x12345678
Я загрузил некоторые файлы в GitHub (см. Здесь или здесь), демонстрируя, как мне удалось обойти это. Если вы посмотрите на них, вы почувствуете, что я пытаюсь сделать.
1 ответ
Нет, это невозможно. Идентификаторы окна задаются X-сервером при вызове XCreateWindow/XCreateSimpleWindow, и изменить их невозможно, было бы ужасно опасно и неправильно позволять пользователю выбирать их. Если вы планируете найти окно, вы можете попробовать использовать функцию XQueryTree вместе с XGetWindowProperty и свойством WM_CLASS.