Допустим, в KDE возьмём любое окно, скажем от сетевого монитора. Через xwininfo определим его id:
$ xwininfo | grep 'Window id'
xwininfo: Window id: 0xc00aff "eth0 Состояние интерфейса"
Теперь закроем окно, оно спрячется. Теперь задача его показать средствами Xlib. Попробовал так:
Window wid = 0xc00aff;
XMapRaised(display, wid);
XMapSubwindows(display, wid);
Однако окно открылось наполовину не отрисованным, и дальнейшие манипуляции с ним не проходят - окно не перерисовывает некоторые участки, и не закрывается вообще. Как правильно его показать?