OpenFlutter / flutter_screenutil

Flutter screen adaptation, font adaptation, get screen information
https://pub.dartlang.org/packages/flutter_screenutil
Apache License 2.0
3.85k stars 486 forks source link

ScreenUtilInit() make required parameters nullable #520

Closed tremp-m closed 8 months ago

tremp-m commented 10 months ago

hi. I have a suggestion - make required parameters in ScreenUtilInit() constructor nullable. Now if i want to hide ScreenUtilInit class own one i can't to write something like:

class ScreenUtilInitOwn extends StatelessWidget {
  final ScreenUtilInitBuilder? builder;
  final Widget? child;
  final bool? splitScreenMode;
  final bool? minTextAdapt;
  final bool? useInheritedMediaQuery;
  final bool? ensureScreenSize;
  final RebuildFactor? rebuildFactor;
  final FontSizeResolver? fontSizeResolver;

  final Size? designSize;
  final Iterable<String>? responsiveWidgets;

  const ScreenUtilInitOwn({
    super.key,
    this.builder,
    this.child,
    this.rebuildFactor,
    this.designSize,
    this.splitScreenMode,
    this.minTextAdapt,
    this.useInheritedMediaQuery,
    this.ensureScreenSize,
    this.responsiveWidgets,
    this.fontSizeResolver,
  });

  @override
  Widget build(BuildContext context) {
    return ScreenUtilInit(
      key: key,
      builder: builder,
      rebuildFactor: rebuildFactor,
      designSize: designSize,
      splitScreenMode: splitScreenMode,
      minTextAdapt: minTextAdapt,
      useInheritedMediaQuery: useInheritedMediaQuery,
      ensureScreenSize: ensureScreenSize,
      responsiveWidgets: responsiveWidgets,
      fontSizeResolver: fontSizeResolver,
      child: child,
    );
  }
}

i have to write constructor with default values:

const ScreenUtilInitOwn({
    super. key,
    this.builder,
    this.child,
    this.rebuildFactor = RebuildFactors.size,
    this.designSize = ScreenUtil.defaultSize,
    this.splitScreenMode = false,
    this.minTextAdapt = false,
    this.useInheritedMediaQuery = false,
    this.ensureScreenSize,
    this.responsiveWidgets,
    this.fontSizeResolver = FontSizeResolvers.width,
  });
github-actions[bot] commented 9 months ago

This issue is stale because it has been open for 30 days with no activity.

github-actions[bot] commented 8 months ago

This issue was closed because it has been inactive for 14 days since being marked as stale.