diff --git a/lib/src/controllers/one_context.dart b/lib/src/controllers/one_context.dart index 815af14..f44e047 100644 --- a/lib/src/controllers/one_context.dart +++ b/lib/src/controllers/one_context.dart @@ -21,6 +21,8 @@ class OneContext with NavigatorController, OverlayController, DialogController { set context(BuildContext? newContext) => _context = newContext; + Widget Function(BuildContext? context)? progressIndicatorBuilder; + /// If you need reactive changes, do not use OneContext().mediaQuery /// Use `MediaQuery.of(context)` instead. MediaQueryData get mediaQuery => MediaQuery.of(context!); diff --git a/lib/src/controllers/overlay_controller.mixin.dart b/lib/src/controllers/overlay_controller.mixin.dart index 8f73902..553d75f 100644 --- a/lib/src/controllers/overlay_controller.mixin.dart +++ b/lib/src/controllers/overlay_controller.mixin.dart @@ -126,11 +126,13 @@ mixin OverlayController { ), builder != null ? builder(context) - : Center( - child: CircularProgressIndicator( - valueColor: AlwaysStoppedAnimation( - circularProgressIndicatorColor ?? Colors.white), - )) + : OneContext().progressIndicatorBuilder != null + ? OneContext().progressIndicatorBuilder!(context) + : Center( + child: CircularProgressIndicator( + valueColor: AlwaysStoppedAnimation( + circularProgressIndicatorColor ?? Colors.white), + )) ], )); }