show<T> static method

Future<T?> show<T>(
  1. BuildContext context, {
  2. required PlayerController controller,
})

Displays a GalleryView in a ModalPopup.

Implementation

static Future<T?> show<T>(
  BuildContext context, {
  required PlayerController controller,
}) async {
  final style = Theme.of(context).style;

  final ModalRoute<T> route = MaterialPageRoute<T>(
    builder: (BuildContext context) {
      return Material(
        type: MaterialType.canvas,
        color: style.colors.onBackground,
        child: Scaffold(
          backgroundColor: style.colors.onBackground,
          body: GalleryView(controller),
        ),
      );
    },
  );

  router.obscuring.add(route);

  try {
    return await Navigator.of(context, rootNavigator: true).push<T>(route);
  } finally {
    router.obscuring.remove(route);
  }
}