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

Add MediaQuery to View #118004

Merged
merged 7 commits into from Jan 25, 2023
Merged

Conversation

goderbauer
Copy link
Member

Part of #116929
Fixes #115375

@flutter-dashboard flutter-dashboard bot added a: text input Entering text in a text field or keyboard related problems f: focus Focus traversal, gaining or losing focus f: material design flutter/packages/flutter/material repository. f: scrolling Viewports, list views, slivers, etc. framework flutter/packages/flutter repository. See also f: labels. labels Jan 4, 2023
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

packages/flutter/lib/src/widgets/media_query.dart Outdated Show resolved Hide resolved
packages/flutter/lib/src/widgets/media_query.dart Outdated Show resolved Hide resolved
@@ -92,3 +107,12 @@ class View extends InheritedWidget {
return result!;
}
}

class _ViewScope extends InheritedWidget {
Copy link
Contributor

Choose a reason for hiding this comment

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

I call these kinds of private inherited widgets "markers" (e.g. _FocusMarker, _ActionsMarker, etc.). As a name, "scope" works too, but you might consider using "marker" for consistency.

Copy link
Member Author

Choose a reason for hiding this comment

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

I did a quick count: Maybe we should rename those Markers to Scopes. Currently, we have 5 widgets in the code base that use the suffix Marker, and 13 that uses Scope.

Copy link
Contributor

Choose a reason for hiding this comment

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

Works for me.

@goderbauer
Copy link
Member Author

goderbauer commented Jan 25, 2023

The"google testing" failures were caused by flaws in some internal tests that this change exposed. Fixes for the tests have been submitted for review in

  • cl/504607930
  • cl/504609793
  • cl/504611321

@zanderso
Copy link
Member

zanderso commented Jan 26, 2023

@goderbauer goderbauer deleted the mediaQueryAndViews branch January 26, 2023 18:14
@goderbauer
Copy link
Member Author

Discussed on chat: This adds a MediaQuery for the first time to the hello world app, which explains the size increase there. Any real world app will already contain a MediaQuery so it shouldn't be affected at all (as confirmed by looking at the numbers for Gallery).

engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 26, 2023
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Jan 27, 2023
* a0f7c8cf7 6f806491e [web] use a render target instead of a new surface for Picture.toImage (flutter/engine#38573) (flutter/flutter#119143)

* e85547b3c Roll Plugins from 11361d0 to 8bab180 (28 revisions) (flutter/flutter#119115)

* 81052a7d3 Add usage event to track when a iOS network device is used (flutter/flutter#118915)

* cd34fa6d4 24aa324b8 Roll Skia from da5034f9d117 to c4b171fe5668 (1 revision) (flutter/engine#39127) (flutter/flutter#119159)

* 6cd4fa45e Add --serve-observatory flag to run, attach, and test (flutter/flutter#118402)

* 48cd95dd1 1e5efd1 [various] Enable use_build_context_synchronously (flutter/plugins#6585) (flutter/flutter#119162)

* b907acdde Add the cupertino system colors mint, cyan, and brown (flutter/flutter#118971)

* c6fa5d957 c54580138 Only build analyze_snapshot on Linux host (flutter/engine#39129) (flutter/flutter#119164)

* f34ce86cf 7b72038ef Roll Fuchsia Linux SDK from E9m-Gk382PkB7_Nbp... to pGX7tanT1okL8XCg-... (flutter/engine#39130) (flutter/flutter#119169)

* 0dd63d331 Export View (flutter/flutter#117475)

* 1fd71de0c Remove superfluous words from comments (flutter/flutter#119055)

* cef9cc717 2e7d6fa7b Remove unnecessary null checks (flutter/engine#39113) (flutter/flutter#119174)

* 3be330aaf 30c02e4c8 [Impeller] Make text glyph offsets respect the current transform (flutter/engine#39119) (flutter/flutter#119179)

* a45727d81 Add MediaQuery to View (flutter/flutter#118004)

* 02a9c151f Fix lexer issue where select/plural/other/underscores cannot be in identifier names. (flutter/flutter#119190)

* 766e4d28a Remove single-view assumption from material library (flutter/flutter#117486)

* dcd367951 Roll Flutter Engine from 30c02e4c8b01 to 44362c90fcec (2 revisions) (flutter/flutter#119185)

* 9037e3fe2 roll packages (flutter/flutter#119192)

* e0e88da15 Roll Flutter Engine from 44362c90fcec to 308ce918f67f (2 revisions) (flutter/flutter#119201)

* 202e90274 Roll Flutter Engine from 308ce918f67f to 8f1e5dc1b124 (4 revisions) (flutter/flutter#119208)

* b319938ec Add more flexible image API (flutter/flutter#118966)

* fc0270181 Marks Mac run_debug_test_macos to be unflaky (flutter/flutter#117470)

* c9affdba9 Move windows-x64-flutter.zip to windows-x64-debug location. (flutter/flutter#119177)
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 27, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 27, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 27, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 27, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 27, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 27, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 28, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Jan 28, 2023
auto-submit bot pushed a commit to flutter/plugins that referenced this pull request Jan 28, 2023
* a0f7c8c 6f806491e [web] use a render target instead of a new surface for Picture.toImage (flutter/engine#38573) (flutter/flutter#119143)

* e85547b Roll Plugins from 11361d0 to 8bab180 (28 revisions) (flutter/flutter#119115)

* 81052a7 Add usage event to track when a iOS network device is used (flutter/flutter#118915)

* cd34fa6 24aa324b8 Roll Skia from da5034f9d117 to c4b171fe5668 (1 revision) (flutter/engine#39127) (flutter/flutter#119159)

* 6cd4fa4 Add --serve-observatory flag to run, attach, and test (flutter/flutter#118402)

* 48cd95d 1e5efd1 [various] Enable use_build_context_synchronously (#6585) (flutter/flutter#119162)

* b907acd Add the cupertino system colors mint, cyan, and brown (flutter/flutter#118971)

* c6fa5d9 c54580138 Only build analyze_snapshot on Linux host (flutter/engine#39129) (flutter/flutter#119164)

* f34ce86 7b72038ef Roll Fuchsia Linux SDK from E9m-Gk382PkB7_Nbp... to pGX7tanT1okL8XCg-... (flutter/engine#39130) (flutter/flutter#119169)

* 0dd63d3 Export View (flutter/flutter#117475)

* 1fd71de Remove superfluous words from comments (flutter/flutter#119055)

* cef9cc7 2e7d6fa7b Remove unnecessary null checks (flutter/engine#39113) (flutter/flutter#119174)

* 3be330a 30c02e4c8 [Impeller] Make text glyph offsets respect the current transform (flutter/engine#39119) (flutter/flutter#119179)

* a45727d Add MediaQuery to View (flutter/flutter#118004)

* 02a9c15 Fix lexer issue where select/plural/other/underscores cannot be in identifier names. (flutter/flutter#119190)

* 766e4d2 Remove single-view assumption from material library (flutter/flutter#117486)

* dcd3679 Roll Flutter Engine from 30c02e4c8b01 to 44362c90fcec (2 revisions) (flutter/flutter#119185)

* 9037e3f roll packages (flutter/flutter#119192)

* e0e88da Roll Flutter Engine from 44362c90fcec to 308ce918f67f (2 revisions) (flutter/flutter#119201)

* 202e902 Roll Flutter Engine from 308ce918f67f to 8f1e5dc1b124 (4 revisions) (flutter/flutter#119208)

* b319938 Add more flexible image API (flutter/flutter#118966)

* fc02701 Marks Mac run_debug_test_macos to be unflaky (flutter/flutter#117470)

* c9affdb Move windows-x64-flutter.zip to windows-x64-debug location. (flutter/flutter#119177)

* 7d3b762 Fix: Added `margin` parameter for `MaterialBanner` class (flutter/flutter#119005)

* 40bd82e Roll Plugins from 1e5efd1 to e9406bc (4 revisions) (flutter/flutter#119249)

* 07522b7 Roll Flutter Engine from 8f1e5dc1b124 to 04f22beebb42 (5 revisions) (flutter/flutter#119218)

* 459c1b7 Marks Mac complex_layout_scroll_perf_macos__timeline_summary to be unflaky (flutter/flutter#119157)

* 2b8f2d0 Add API for discovering assets (flutter/flutter#118410)

* a04ab71 Revert "Add API for discovering assets (#118410)" (flutter/flutter#119273)

* 1da487d Roll Flutter Engine from 04f22beebb42 to 93901260098e (12 revisions) (flutter/flutter#119279)

* 1b779b6 Roll Flutter Engine from 93901260098e to be0125bd5716 (2 revisions) (flutter/flutter#119283)

* 42bd5f2 Download platform-agnostic Flutter Web SDK in the flutter_tool (flutter/flutter#118654)

* d52b6b9 Roll Flutter Engine from be0125bd5716 to d17004dd96d7 (2 revisions) (flutter/flutter#119287)

* 4aed487 Roll Flutter Engine from d17004dd96d7 to a63d98feb608 (3 revisions) (flutter/flutter#119299)

* 05fc29f Rename DeviceGestureSettings.fromWindow to DeviceGestureSettings.fromView (flutter/flutter#119291)

* 86ab01d Revert "Add --serve-observatory flag to run, attach, and test (#118402)" (flutter/flutter#119302)

* 8d03af3 Roll Flutter Engine from a63d98feb608 to 79c958fc7e9b (3 revisions) (flutter/flutter#119306)

* 27f8ebd ade610ec8 [fuchsia] Migrate to new RealmBuilder API (flutter/engine#39175) (flutter/flutter#119310)

* c31856b Roll Plugins from e9406bc to ff84c44 (2 revisions) (flutter/flutter#119335)

* d939863 Roll Flutter Engine from ade610ec88b5 to 621e13cc9be3 (3 revisions) (flutter/flutter#119344)

* 0b57596 Run "flutter update-packages --force-upgrade" (flutter/flutter#119340)

* 0417f66 Fix nullability of TableRow.children (flutter/flutter#119285)

* fc3e824 Roll Flutter Engine from 621e13cc9be3 to 189a69d9918d (3 revisions) (flutter/flutter#119347)

* ad1a44d Add `requestFocusOnTap` to `DropdownMenu` (flutter/flutter#117504)

* 4dbb573 [flutter_tools] remove usage of remap samplers arg (flutter/flutter#119346)

* b2f2bf3 Marks Linux run_release_test_linux to be unflaky (flutter/flutter#119156)

* 3f95bef Roll Flutter Engine from 189a69d9918d to b32fc7fef208 (3 revisions) (flutter/flutter#119358)

* 2e8bebd Remove single window assumption from macrobenchmark (flutter/flutter#119368)

* ab2232a Roll Flutter Engine from b32fc7fef208 to 8567d96993ed (5 revisions) (flutter/flutter#119369)

* e9ca9cc Remove references to dart:ui's window singelton (flutter/flutter#119296)

* da3d4bd Roll Flutter Engine from 8567d96993ed to 225ae87334a5 (2 revisions) (flutter/flutter#119376)

* 018c1f8 e2e089ebb Use arm64 engine variant on simulators in iOS unit tests (flutter/engine#39213) (flutter/flutter#119387)

* e349bdc 19651cb1d Roll Dart SDK from 2cd9b7ac95e8 to 135f4c51c9ff (3 revisions) (flutter/engine#39214) (flutter/flutter#119389)

* 95345b5 77bee011d Roll Dart SDK from 2cd9b7ac95e8 to 135f4c51c9ff (3 revisions) (flutter/engine#39217) (flutter/flutter#119394)

* de43ec9 Roll Flutter Engine from 77bee011dabf to 3394b84cc5d7 (3 revisions) (flutter/flutter#119405)

* f8d4de4 3dd0fc13f Roll Fuchsia Linux SDK from 6c2H32X3EXOGlWIgb... to TiK_fVODtUaKOgxRf... (flutter/engine#39224) (flutter/flutter#119408)

* 7856411 7c5c6c9c9 Roll Skia from 0b75650caf2a to 7df7a83f733d (13 revisions) (flutter/engine#39225) (flutter/flutter#119413)

* 75680ae 649362168 Roll Dart SDK from f9583e13e214 to 52dc94238144 (1 revision) (flutter/engine#39227) (flutter/flutter#119416)
Maatteogekko pushed a commit to Maatteogekko/packages that referenced this pull request Feb 4, 2023
…r#3093)

* a0f7c8cf7 6f806491e [web] use a render target instead of a new surface for Picture.toImage (flutter/engine#38573) (flutter/flutter#119143)

* e85547b3c Roll Plugins from 11361d0 to 8bab180 (28 revisions) (flutter/flutter#119115)

* 81052a7d3 Add usage event to track when a iOS network device is used (flutter/flutter#118915)

* cd34fa6d4 24aa324b8 Roll Skia from da5034f9d117 to c4b171fe5668 (1 revision) (flutter/engine#39127) (flutter/flutter#119159)

* 6cd4fa45e Add --serve-observatory flag to run, attach, and test (flutter/flutter#118402)

* 48cd95dd1 1e5efd1 [various] Enable use_build_context_synchronously (flutter/plugins#6585) (flutter/flutter#119162)

* b907acdde Add the cupertino system colors mint, cyan, and brown (flutter/flutter#118971)

* c6fa5d957 c54580138 Only build analyze_snapshot on Linux host (flutter/engine#39129) (flutter/flutter#119164)

* f34ce86cf 7b72038ef Roll Fuchsia Linux SDK from E9m-Gk382PkB7_Nbp... to pGX7tanT1okL8XCg-... (flutter/engine#39130) (flutter/flutter#119169)

* 0dd63d331 Export View (flutter/flutter#117475)

* 1fd71de0c Remove superfluous words from comments (flutter/flutter#119055)

* cef9cc717 2e7d6fa7b Remove unnecessary null checks (flutter/engine#39113) (flutter/flutter#119174)

* 3be330aaf 30c02e4c8 [Impeller] Make text glyph offsets respect the current transform (flutter/engine#39119) (flutter/flutter#119179)

* a45727d81 Add MediaQuery to View (flutter/flutter#118004)

* 02a9c151f Fix lexer issue where select/plural/other/underscores cannot be in identifier names. (flutter/flutter#119190)

* 766e4d28a Remove single-view assumption from material library (flutter/flutter#117486)

* dcd367951 Roll Flutter Engine from 30c02e4c8b01 to 44362c90fcec (2 revisions) (flutter/flutter#119185)

* 9037e3fe2 roll packages (flutter/flutter#119192)

* e0e88da15 Roll Flutter Engine from 44362c90fcec to 308ce918f67f (2 revisions) (flutter/flutter#119201)

* 202e90274 Roll Flutter Engine from 308ce918f67f to 8f1e5dc1b124 (4 revisions) (flutter/flutter#119208)

* b319938ec Add more flexible image API (flutter/flutter#118966)

* fc0270181 Marks Mac run_debug_test_macos to be unflaky (flutter/flutter#117470)

* c9affdba9 Move windows-x64-flutter.zip to windows-x64-debug location. (flutter/flutter#119177)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: text input Entering text in a text field or keyboard related problems autosubmit Merge PR when tree becomes green via auto submit App f: focus Focus traversal, gaining or losing focus f: material design flutter/packages/flutter/material repository. f: scrolling Viewports, list views, slivers, etc. framework flutter/packages/flutter repository. See also f: labels.
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Split MediaQuery into ViewQuery and PlatformQuery
3 participants