showWithTickerVsyncBuilder static method

OverlayShower showWithTickerVsyncBuilder({
  1. String? key,
  2. required void tickerBuilder(
    1. OverlayShower shower,
    2. TickerProviderStateMixin<StatefulWidget> vsync
    ),
})

Implementation

static OverlayShower showWithTickerVsyncBuilder({
  String? key,
  required void Function(OverlayShower shower, TickerProviderStateMixin vsync) tickerBuilder,
}) {
  // Tricky: show a Offstage first, then we got the vsync state :)
  OverlayShower shower = OverlayWrapper.show(const Offstage(offstage: true), key: key);
  shower.isWithTicker = true;
  shower.addShowCallBack((shower) {
    State? state = shower.statefulKey.currentState;
    if (state is BuilderWithTickerState) {
      // type and not-null checked
      tickerBuilder(shower, state);
    }
  });
  return shower;
}