- check rounding - remove cairo-surface-fallback - simpleops-ize: - atomics, mutexes (partly done, see wip/simpleops) - ctor/dtor - investigate tls for caches - wideint? - gradients: - mesh - along stroked path??? (did someone at least try to define what should happen?) - filtering (supersampling? analitical?) - testsuite: - include fonts in package - specify freetype,fontconfig versions that pass the testsuite - separate font backends refimages - make sure that the buildbot passes the testsuite - snapshots: - improve definition&interaction with surfaces (subsurface-parent-modify failure; see wip/references) - cow snapshots for recording - multithreading??? - damage? (reopening the thread would be a good start) - path: - double? (investigate performance loss) - arc-to - stroke-to-path (easier if paths are double and support arc-to) - would allow arbitrary caps/joins/cusps - boolean ops (check if b-o is appropriate, investigate balaban) - "reusable paths" (cache stroked path & backend-specific paths, see http://lists.freedesktop.org/archives/cairo/2010-April/019711.html) - gstate: - move most optimizations from backends to gstate - check that optimization does as much as possible (never pass DEST/completely clipped etc to a backend) - font: - see testsuite! - size 0 fonts... should they get to the backends? - improve scale matrix handling (translation in gstate, linear transformation in font backend) - text-glyph-range, toy-font-face (failing bad with @cairo:) - quartz-font: - unicode support (might require coretext... different backend?) - subsetting (done?) - _load_truetype_table (done?), _index_to_ucs4 (is it possible? see unicode support) - user-font: - test me! last time there were many failures - halo, halo-transform - text-transform - user-font-rescale - matrix: - projective? (would breaks lots of assumptions in cairo, but it is already supported by pixman) - win32, svg - test, maintain - xcb - what would it take to make it supported? - cairo2 - remove set_device_offset (provide the same functionality through a wrapper surface) - no current point line_to->move_to+line_to - a lot of subtle chanes tha will break most exising applications