multi canvas handling. tentative checkin.