I'd appreciate some feedback on something I came up with during my spare time: Emacs canvas support. For now it only works on X11 + Cairo builds, and I haven't quite figured out how to make redisplay work reliably on canvases, but it already seems to be quite promising. A patch is attached below.