▲ | userbinator 13 hours ago | |||||||||||||||||||||||||||||||||||||||||||
This is more like "by communicating with the X server", which is not exactly the level of "from scratch" I was expecting, but then again, it's more involved than the equivalent in Win32 that's not much more than filling in some structures and invoking a few functions. | ||||||||||||||||||||||||||||||||||||||||||||
▲ | vidarh 9 hours ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||
It's not even that much more involved, just tedious. The serialization/deserialization of X requests and responses is fairly straight-forward (it could be more straightforward - it's not a very nice protocol, but it's also not difficult), as the article also shows, and it can be made more compact than that with a couple of helpers. The biggest pain in doing "raw" X is the async nature of the protocol - to write a robust X client you really want an event-loop driven approach that embraces that like XCB does, instead of trying to paper over it (like Xlib did). | ||||||||||||||||||||||||||||||||||||||||||||
▲ | signa11 13 hours ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||
seesh ! what would `from scratch` mean for you ? invent the whole universe ? | ||||||||||||||||||||||||||||||||||||||||||||
|