Skip to content

Commit b780eb7

Browse files
authored
don't use future builder when not ensureScreenSize (#517)
1 parent 03a575f commit b780eb7

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

lib/src/screenutil_init.dart

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ class ScreenUtilInit extends StatefulWidget {
7373
this.splitScreenMode = false,
7474
this.minTextAdapt = false,
7575
this.useInheritedMediaQuery = false,
76-
this.ensureScreenSize,
76+
this.ensureScreenSize = false,
7777
this.responsiveWidgets,
7878
this.fontSizeResolver = FontSizeResolvers.width,
7979
}) : super(key: key);
@@ -83,7 +83,7 @@ class ScreenUtilInit extends StatefulWidget {
8383
final bool splitScreenMode;
8484
final bool minTextAdapt;
8585
final bool useInheritedMediaQuery;
86-
final bool? ensureScreenSize;
86+
final bool ensureScreenSize;
8787
final RebuildFactor rebuildFactor;
8888
final FontSizeResolver fontSizeResolver;
8989

@@ -133,7 +133,7 @@ class _ScreenUtilInitState extends State<ScreenUtilInit>
133133
}
134134

135135
Future<void> _validateSize() async {
136-
if (widget.ensureScreenSize ?? false) return ScreenUtil.ensureScreenSize();
136+
if (widget.ensureScreenSize) return ScreenUtil.ensureScreenSize();
137137
}
138138

139139
void _markNeedsBuildIfAllowed(Element el) {
@@ -171,6 +171,18 @@ class _ScreenUtilInitState extends State<ScreenUtilInit>
171171

172172
if (mq == null) return const SizedBox.shrink();
173173

174+
if (!widget.ensureScreenSize) {
175+
ScreenUtil.configure(
176+
data: mq,
177+
designSize: widget.designSize,
178+
splitScreenMode: widget.splitScreenMode,
179+
minTextAdapt: widget.minTextAdapt,
180+
fontSizeResolver: widget.fontSizeResolver,
181+
);
182+
183+
return widget.builder?.call(context, widget.child) ?? widget.child!;
184+
}
185+
174186
return FutureBuilder<void>(
175187
future: _screenSizeCompleter.future,
176188
builder: (c, snapshot) {

0 commit comments

Comments
 (0)