ROADMAP ======= 0.6 --- * Finish sealing. * Support multiple classes per node, similar to pseudo-classes. * Improve test suite. Libxml backend for cascading tests. * Cairo-style error handling? Or something else? * "char * foo_serialize()" API instead of _dump(). * _serialize() property class method, serializing should fall back to _convert() should print url('foo'). * Improve test suite. * Use slice allocator and custom list/hash implementations with in-node data. 0.7 --- * Write our own parser, probably hand-written using GScanner. Blue Sky -------- * https://developer.mozilla.org/en/CSS/-moz-image-region * Transitions / animations? http://ejohn.org/blog/css-animations-and-javascript/ Evaluate -------- * Consider a custom allocator (gslice?) for same-sized properties (find out how much overhead regular malloc has for small structs first). * Move `none' and `inherit' out of the structs and into an own hash (save mem). * Pass pseudo class(es) to the drawing function(s) instead of determining them at query time. * Query interface through CSS selectors, see gtk-css-engine TODO.