Как получить экран окна с XCB?

В Xlib структура XWindowAttributes содержит указатель на экран, на котором находится окно. Но в соответствующей структуре XCB (xcb_get_window_attributes_reply_t) такого члена нет.

Что я должен делать?


xcb
person Magicloud    schedule 06.08.2014    source источник


Ответы (2)


Я не думаю, что есть прямой способ получить экран окна.

Что вы можете сделать, так это найти предка корневого окна вашего окна, а затем перебрать все экраны, пока не найдете тот, которому принадлежит ваш корень.

person peoro    schedule 04.04.2019

xcb_screen_t* screen = xcb_setup_roots_iterator(xcb_get_setup(connection)).data;

вы должны прочитать это руководство http://xcb.freedesktop.org/tutorial/

person bakkaa    schedule 04.01.2015
comment
Но что, если есть несколько экранов и окна соединения не находятся в одном и том же? - person Magicloud; 09.01.2015
comment
Я не знаю. Я только начал изучать X11. Может быть, вы найдете что-то в документации X11. - person bakkaa; 09.01.2015