move redraw to drawCallback