> Какая разница, колбэк там или нет?примерно такая, что для иксов обычно сразу пишут нормальный внутренний менеджер окон, куда и помещают данные. а для winapi часто используют хак с `SetWindowLong()`, потому что на первых порах можно обойтись вообще без внутреннего дерева. потом это больно кусает, но кого волнует.
это уж не говоря про то, что сравнивать xlib и winapi вообще не очень корректно, потому что winapi намного более высокоуровневый.
> Если код надо написать
> (например, при портировании с другой платформы), значит утверждение "в Иксах всё
> включено" -- не соответствует действительности.
а кто такое утверждает-то? что вообще значит «всё включено»? что все какие-то опции по умолчанию включены, что ли? я не знаю, где и кто так пишет, но в документации по X Window System и xlib я такого не видел.
> Ну да, клиента под названием XFCE кое-что не интересует, потому там поведение
> приложений отличается от такового в клиенте Mate.
…и сервер тут совершенно не при делах.
> То есть xcb свою задачу выполнила.
естественно. глупо — это не «использовать xcb», это «использовать xcb вместо xlib, не имея на это очень веских причин». а когда появится X12, все Успешные Оптимизаторы с xcb начнут кричать, что так нельзя, что иксы поломали, что у них софт развалился. пользователи xlib не заметят вообще ничего, и даже пересобирать — скорее всего — ничего не будут, просто заменят libx.so на более новую.
> А когда единственная сила, стоящая
> за Иксами (это Valve, а не всякие призывальщики бойкотировать)
что ни день — то потрясающие новости.
> Мне это было надо, что бы сформировать собственное представление о ситуации с
> X11 и Wayland.
вряд ли потрепалово на опеннете — лучший (или даже хороший) способ это сделать. как насчёт действительно рабочего метода: прочитать про протокол иксов, про xlib, посмотреть, насколько xcb соответствует протоколу, и сделать вывод как об архитектуре (на основе протокола обычно видно, что планировали), так и о том, зачем нужна каждая из библиотек?