Наверняка в X11 окна организованы в иерархию (так быстрее найти куда кликнули).
Когда клиент говорит X11-серваку, что надо создать кнопочку, он указывает просто ID родительского окна, а X11-сервак имеет map[ID]->window или клиент указывает некий полный путь ID->ID->ID (окно, в этом окне окно, в том окне окно)?
Спасибченко.