use event instead of deferred when completing the display