Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[flutter_adaptive_scaffold] use MediaQuery.sizeOf instead of MediaQuery.of to prevent unnecessary rebuilds #6544

Conversation

waleedf112
Copy link
Contributor

@waleedf112 waleedf112 commented Apr 16, 2024

the isActive method uses MediaQuery.of(context).size.width, which triggers widget rebuilds whenever a property of MediaQuery changes, even when the size.width doesn't change.

instead, we should be using MediaQuery.sizeOf(context).width.

fixes: flutter/flutter#146801

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@waleedf112 waleedf112 changed the title use MediaQuery.sizeOf instead of MediaQuery.of to prevent unnecessary rebuilds [flutter_adaptive_scaffold] use MediaQuery.sizeOf instead of MediaQuery.of to prevent unnecessary rebuilds Apr 16, 2024
@waleedf112 waleedf112 marked this pull request as ready for review April 16, 2024 08:45
@gspencergoog
Copy link
Contributor

Thanks for the PR! This is indeed a good idea.

Could you please add a test that keeps this from regressing? (tests are required as part of our contribution guidelines)

Copy link
Contributor

@gspencergoog gspencergoog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

32384589-a60f0e74-c078-11e7-9bc1-e5b5287aea9d

Copy link
Contributor

@justinmc justinmc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍 Good catch!

@gspencergoog gspencergoog added the autosubmit Merge PR when tree becomes green via auto submit App label Apr 30, 2024
@auto-submit auto-submit bot merged commit ebd138d into flutter:main Apr 30, 2024
78 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 1, 2024
…f `MediaQuery.of` to prevent unnecessary rebuilds (flutter/packages#6544)
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request May 1, 2024
flutter/packages@cc47b06...aea93d2

2024-04-30 15619084+vashworth@users.noreply.github.com Skip podspec Swift Search Path validation if only swift file is Package.swift (flutter/packages#6627)
2024-04-30 ditman@gmail.com [go_router_builder] Tweaks for latest analyzer-6.5.0 (flutter/packages#6632)
2024-04-30 engine-flutter-autoroll@skia.org Roll Flutter from db8c475 to b597dd2 (23 revisions) (flutter/packages#6631)
2024-04-30 44902066+waleedf112@users.noreply.github.com [flutter_adaptive_scaffold] use `MediaQuery.sizeOf` instead of `MediaQuery.of` to prevent unnecessary rebuilds (flutter/packages#6544)
2024-04-30 34871572+gmackall@users.noreply.github.com [image_picker] Update documentation to note that Photo Picker use is non-optional on Android 13+ (flutter/packages#6569)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
TecHaxter pushed a commit to TecHaxter/flutter_packages that referenced this pull request May 22, 2024
…Query.of` to prevent unnecessary rebuilds (flutter#6544)

the `isActive` method uses `MediaQuery.of(context).size.width`, which triggers widget rebuilds whenever a property of `MediaQuery` changes, even when the size.width doesn't change.

instead, we should be using `MediaQuery.sizeOf(context).width`.  

fixes: flutter/flutter#146801
arc-yong pushed a commit to Arctuition/packages-arc that referenced this pull request Jun 14, 2024
…Query.of` to prevent unnecessary rebuilds (flutter#6544)

the `isActive` method uses `MediaQuery.of(context).size.width`, which triggers widget rebuilds whenever a property of `MediaQuery` changes, even when the size.width doesn't change.

instead, we should be using `MediaQuery.sizeOf(context).width`.  

fixes: flutter/flutter#146801
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App p: flutter_adaptive_scaffold
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[flutter_adaptive_scaffold] unnecessary rebuilds when checking if breakpoint is active
3 participants