fix re-rendering trigger for canvas