<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><BR><DIV><DIV>On Sep 21, 2007, at 5:17 AM, Thomas Hunger wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Hey,<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">After another frustrating week in which I<SPAN class="Apple-converted-space">  </SPAN>tried to understand the<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">weird semantics and how to write xcb-util stuff for it, I sat down<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">today and implemented the interesting bits of logic + a parser for<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">the layouts (no geometries yet, but looks simple as well) on the<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">client side in a few hours. Much more fun.<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">XCB-XKB works kind of, if you don't mind rolling your own binary<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">structs in many places. If anyone wants to take this I can give some<SPAN class="Apple-converted-space"> </SPAN></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">guidance, but I will not continue with XKB.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Tom</DIV></BLOCKQUOTE><BR></DIV><DIV>Thank you for a noble effort, Thomas! Do you have your work in a personal git repo somewhere? Feel free to just commit it to the main xcb repositories as well.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>I take it you agree with Daniel Stone's opinions given at last week's XDS:</DIV><UL><LI style="margin: 0.0px 0.0px 0.0px 0.0px"><FONT class="Apple-style-span" face="Times" size="4"><SPAN class="Apple-style-span" style="font-size: 16px;">XKB is wretched. Exposes bad binary format over the wire.</SPAN></FONT></LI><LI style="margin: 0.0px 0.0px 0.0px 0.0px"><FONT class="Apple-style-span" face="Times" size="4"><SPAN class="Apple-style-span" style="font-size: 16px;">API was defined in terms of (bad) implementation.</SPAN></FONT></LI><LI style="margin: 0.0px 0.0px 0.0px 0.0px"><FONT class="Apple-style-span" face="Times" size="4"><SPAN class="Apple-style-span" style="font-size: 16px;">New API that matches use was patched on as badly as possible.</SPAN></FONT></LI></UL><DIV>Daniel also said there is a plan in place to replace XKB. Perhaps we should defer XCB work to only support whatever XKB replacement is coming down the pipe. And also encourage Daniel to use XCB to prototype it.</DIV><DIV><BR class="khtml-block-placeholder"></DIV>Ian<BR></BODY></HTML>