Line data Source code
1 : library fullscreen_image_viewer; 2 : 3 : import 'package:flutter/material.dart'; 4 : import 'package:fullscreen_image_viewer/fullscreen_viewer.dart'; 5 : 6 : class FullscreenImageViewer { 7 0 : FullscreenImageViewer._(); 8 : 9 : /// Child should be a Hero widget for transition animation 10 1 : static Future<void> open({ 11 : required BuildContext context, 12 : required Widget child, 13 : Widget? closeWidget, 14 : }) { 15 2 : return Navigator.of(context, rootNavigator: true).push( 16 1 : PageRouteBuilder( 17 : fullscreenDialog: true, 18 : opaque: false, 19 2 : pageBuilder: (context, animation, _) => FullscreenViewer( 20 : openAnimation: animation, 21 : closeWidget: closeWidget, 22 : child: child, 23 : ), 24 : ), 25 : ); 26 : } 27 : }