fix double redraw when events fire simultaneously