some rudimentary canvas support