On Fri, 09 Oct 2009 16:45:23 +0200 (CEST) Julien Danjou <jul...@danjou.info> wrote: > So I made a couple of tests to see how it works, and actually I'm quite > impressed, because it works very well.
Thanks, I'm quite happy with it too :) > I'm ok to merge this all into next, I just need you to: > - Give a look at the problem I spotted with systray (at least, say that > it's normal or not); I've found the cause and its a tricky one: I'm using pairs to iterate over the widget tables, because in some 'composite' widgets (widgets that are actually made up of a table with a layout containing other widgets) the keys for the widgets are nonnumeric, eg. the promptbox's widget is under key "widget" :). I thought the numeric keys always go before the others and are ordered, but its not so. The order for pairs is random. It seems to work most of the time, but in this case, due to putting nil to index 1 and/or whatever else, it doesn't. Permission to switch to ipairs, fix the widgets that have nonnumeric keys and state that widgets in layouted tables can only be indexed by numbers. Since the order matters in layouts and you can't rely on pairs order at all, I see this as the only solution. Oh, and this should probably be done somewhere on the C side too, somewhere around the rendering funciton. Because it expects the number of geometries equal to the number of the widgets, including those under nonnumeric keys. If ipairs is used in the layout functions, it doesn't return geometry for those keys and the geometries get shifted, messing up all widgets for no apparent reason and making it hard to pinpoint what has gone wrong. I can do this too, but could use some hint.. I just had a quick look and didn't find an obvious way. > - Merge patch 1 and 2. Will do.. Cheers lukash -- To unsubscribe, send mail to awesome-devel-unsubscr...@naquadah.org.