Waits for duration, letting frames render meanwhile.
duration
@override Future<void> wait(Duration duration) async { if (duration > Duration.zero) await Future<void>.delayed(duration); }