- 08 Jun, 2023 11 commits
-
-
Leigha Jarett authored
Fixes https://github.com/flutter/flutter/issues/128430
-
Mahdi Bagheri authored
*The order of calling Navigator.pop and PopupMenuItem.onTap has been changed so before calling PopupMenuItem onTap method, PopupMenuBotton onSelect method is going to be called.* *Solves #127443* *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
-
Bruno Leroux authored
-
Taha Tesser authored
-
Janice Collins authored
This updates dartdoc to 6.3.0. Release notes are available, here: https://github.com/dart-lang/dartdoc/releases/tag/v6.3.0 Most important for Flutter are the reduction in the size of generated HTML files (dart-lang/dartdoc#3384) and a new dartdoc directive to hide constant implementations from indicated classes (dart-lang/dartdoc#3398), which fixes the longstanding issue (dart-lang/dartdoc#2657). I've also added the api documentation zip to `.gitignore` and the `{@hideConstantImplementations}` dartdoc directive to the motivating example. A screenshot: ![Screenshot 2023-06-07 at 9 54 58 AM](https://github.com/flutter/flutter/assets/14116827/1ad9c1f0-b224-462f-a8e3-706d9858f0d8) I assert that this change to icons.dart should be test-exempt as existing tests cover whether or not dartdoc directives are recognized or are leaking into HTML, and the impact of adding the directive was tested in dart-lang/dartdoc#3398.
-
LongCatIsLooong authored
Fixes https://github.com/flutter/flutter/issues/108187
-
hellohuanlin authored
Many parts of the floating cursor selection feature is pretty tricky. Some took me a while to figure out. So I added some comments to explain a bit for future readers. *List which issues are fixed by this PR. You must list at least one issue.* https://github.com/flutter/flutter/issues/30476 *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
-
Michael Goderbauer authored
This method lived on RenderObjectElement because traditionally, it would be the only one that had to deal with multiple children. The method itself has nothing RenderObjectElement specific, though, and can also be used by any other Element subclass that has multiple children. We are introducing one of those in the near future to handle multiple top-level views. This is a straight up copy&paste move, no changes have been applied to the code itself.
-
Michael Goderbauer authored
Follow-up to https://github.com/flutter/flutter/pull/128287.
-
Zachary Anderson authored
Reverts flutter/flutter#128471 It looks like one of the tests modified by this PR is still failing: https://ci.chromium.org/ui/p/flutter/builders/prod/Mac%20framework_tests_widgets/11385/overview
-
Polina Cherkasova authored
-
- 07 Jun, 2023 9 commits
-
-
Bruno Leroux authored
## Description Fix two typos where 'wether' was used instead of 'whether'. ## Tests Documentation only.
-
fzyzcjy authored
Just now I see some good news: https://www.reddit.com/r/FlutterDev/comments/13vo5a2/the_most_important_flutter_310_feature_that/ (ignore the title though...). It was a performance problem in the old days, so it was great that the problem disappears. However, it seems that the doc is not updated yet, so everyone reading MediaQuery page will still use the old way. Thus I create this super-tiny PR :)
-
Jackson Gardner authored
Reverts flutter/flutter#128095 We have a tree closure related to the `widget_inspector_test.dart`. I'd like to see if reverting this resolves the issue.
-
Leigha Jarett authored
Fixes: https://github.com/flutter/flutter/issues/127215
-
Andrew Kolos authored
Fixes https://github.com/flutter/flutter/issues/127090. https://github.com/flutter/flutter/pull/122505 did a few things to speed up the first asset load that a flutter app performs. One of those things was to not include the main asset in its own list of variants in the asset manifest. The idea was that we know that the main asset always exists, so including it in its list of variants is a waste of storage space and loading time (even if the cost was tiny). However, the assumption that the main asset always exists is wrong. From [Declaring resolution-aware image assets](https://docs.flutter.dev/ui/assets-and-images#resolution-aware), which predates https://github.com/flutter/flutter/pull/122505: > Each entry in the asset section of the pubspec.yaml should correspond to a real file, with the exception of the main asset entry. If the main asset entry doesnât correspond to a real file, then the asset with the lowest resolution is used as the fallback for devices with device pixel ratios below that resolution. The entry should still be included in the pubspec.yaml manifest, however. For example, it's valid to declare `assets/image.png` as an asset even if only `assets/3x/image.png` exists on disk. This fix restores older behavior of including a main asset as a variant of itself in the manifest if it exists. This fix also includes a non-user-visible behavior change: * `"dpr"` is no longer a required field in the asset manifest's underlying structure. For the main asset entry, we do not include `"dpr"`. It makes less sense for the tool to decide what the default target dpr for an image should be. This should be left to the framework.
-
Alex Fischer authored
This PR updates the docs for Transform.Scale constructor by clearing up some ambiguity regarding how the scaling factor is affected by the omission of a value given you provide scaleX and scaleY as arguments as opposed to just scale addresses bug [126822](https://github.com/flutter/flutter/issues/126822) - [X ] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [X ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ X] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [X ] I signed the [CLA]. - [X ] I listed at least one issue that this PR fixes in the description above. - [ X] I updated/added relevant documentation (doc comments with `///`). - [ X] I added new tests to check the change I am making, or this PR is [test-exempt]. - [X ] All existing and new tests are passing.
-
Polina Cherkasova authored
-
Michael Goderbauer authored
Follow-up to https://github.com/flutter/engine/pull/42493.
-
fzyzcjy authored
Close https://github.com/flutter/flutter/issues/126303 When I encounter bugs in production environment saying null pointer error on `return _size!`, I wish I could know more information! However, currently the information is revealed by `assert(hasSize, 'RenderBox was not laid out: $this');`, thus *only* in debug mode can I know what is `this` (and/or more information that can be added), while in release mode I can only see a stack trace saying it is `RenderBox.size` that throws - nothing more :/ Therefore, it is intuitive to add this extra information in release mode. However, will it affect performance? We all know this is in critical path and should be quite careful. Thus I did some experiments: https://godbolt.org/z/zPPPf5969 From my naive understanding of assembly, the two versions of code (`size!` vs `size ?? throw`) has the same assembly, except that they throw different types of errors. In other words, when there is no error, both code should be equivalent; when there is an error, surely the new code will be slower since it calls `this.toString()`, but the error handling process is rare and already heavy, so this is not a problem. ![image](https://user-images.githubusercontent.com/5236035/236962182-b9450d59-a2ac-426f-8300-3c7edcadf35e.png)
-
- 06 Jun, 2023 7 commits
-
-
Khanh Nguyen authored
The old Draggable video had a mistake in it, we've since uploaded a newer version that's been corrected. Thanks for catching that @gspencergoog! - [na] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [na] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [na] I listed at least one issue that this PR fixes in the description above. - [na] I added new tests to check the change I am making, or this PR is [test-exempt]. - [na] All existing and new tests are passing.
-
LongCatIsLooong authored
Add the conditional rounding that I forgot to add in https://github.com/flutter/flutter/pull/127099
-
Renzo Olivares authored
handleSelectWord in MultiSelectableSelectionContainerDelegate should handle rects inside of rects (#127478) Fixes #127076 Sometimes a `Selectable`s rect may contain another `Selectable`s rect within it. In the case of `handleSelectWord` when choosing which `Selectable` to dispatch the `SelectionEvent` to, the event would be dispatched to the wrong `Selectable` causing an assertion error to be thrown. <img width="577" alt="Screenshot 2023-05-24 at 2 46 13 AM" src="https://github.com/flutter/flutter/assets/948037/bb246966-acad-4d81-bd87-758c3ea6ea39"> In the picture above the red outline shows the rect of a two-line piece of text. And the blue rect shows the rect of a piece of text that is on the second line of the two-line piece of text, but has been separated into its own rect for some case, for example when `TextSpan`s are separated by a `WidgetSpan`. We should check if the text layout of the selectable that has been dispatched the SelectionEvent contains the word, if not then return `SelectionResult.next`, and continue to look through the list of selectables.
-
LongCatIsLooong authored
I am trying to remove `textScaleFactor`-dependent logic from the framework since it's likely going to be deprecated, hopefully the original logic isn't from the material spec. I stole the sample code from https://github.com/flutter/flutter/pull/125038 and here are the screenshots (`textScaleFactor = 3.0`). Internal Tests: **no relevant test failures** | Medium | Large | | --------------- | --------------- | | ![flutter_01](https://github.com/flutter/flutter/assets/31859944/515226d9-716f-470a-b794-5fd14b957d36) | ![flutter_03](https://github.com/flutter/flutter/assets/31859944/475c421d-550e-4d02-be08-709b63b63011) |
-
fzyzcjy authored
Close #128113 Fun fact: This is caught by monkey testing I have written (will soon be open sourced as well) that runs on my app! Without the fix, the test fails as expected: <details> ``` (base) â flutter git:(feat/text-field-npe) /Volumes/MyExternal/ExternalRefCode/flutter/bin/flutter test test/material/text_field_test.dart --name 'changes from default' 00:06 +0: context menu contextMenuBuilder changes from default to null âââ¡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ The following _TypeError was thrown building _OverlayEntryWidget-[LabeledGlobalKey<_OverlayEntryWidgetState>#e3717](state: _OverlayEntryWidgetState#7666a): Null check operator used on a null value When the exception was thrown, this was the stack: #0 EditableTextState._createSelectionOverlay.<anonymous closure> (package:flutter/src/widgets/editable_text.dart:3331:43) #1 SelectionOverlay.showToolbar.<anonymous closure> (package:flutter/src/widgets/text_selection.dart:1357:36) #2 ContextMenuController.show.<anonymous closure> (package:flutter/src/widgets/context_menu_controller.dart:65:54) #3 _OverlayEntryWidgetState.build (package:flutter/src/widgets/overlay.dart:351:36) #4 StatefulElement.build (package:flutter/src/widgets/framework.dart:5198:27) #5 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5086:15) #6 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #7 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #8 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #9 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #10 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:6093:32) #11 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6595:17) #12 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #13 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #14 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #15 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #16 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #17 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #18 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #19 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #20 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #21 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #22 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #23 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #24 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #25 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #26 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #27 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #28 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #29 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #30 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #31 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #32 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #33 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #34 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #35 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #36 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #37 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #38 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #39 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #40 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #41 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #42 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #43 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #44 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #45 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #46 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #47 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #48 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #49 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #50 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #51 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #52 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #53 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #54 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #55 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #56 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #57 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #58 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #59 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #60 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #61 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #62 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #63 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #64 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #65 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #66 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #67 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #68 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #69 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #70 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #71 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #72 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #73 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #74 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #75 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #76 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #77 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #78 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #79 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #80 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #81 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #82 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #83 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #84 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #85 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #86 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #87 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #88 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #89 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #90 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #91 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #92 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #93 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #94 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #95 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #96 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #97 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #98 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #99 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #100 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #101 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #102 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #103 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #104 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #105 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #106 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #107 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #108 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #109 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #110 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #111 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #112 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #113 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #114 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #115 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #116 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #117 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #118 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #119 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #120 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #121 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #122 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #123 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #124 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #125 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #126 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #127 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #128 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #129 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #130 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #131 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #132 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #133 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #134 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #135 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #136 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #137 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #138 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #139 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #140 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #141 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #142 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #143 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #144 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #145 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #146 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #147 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #148 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #149 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #150 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #151 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #152 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #153 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #154 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #155 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #156 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #157 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #158 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #159 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #160 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #161 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #162 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #163 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #164 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #165 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #166 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #167 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #168 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #169 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #170 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #171 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #172 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #173 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #174 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #175 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #176 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #177 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #178 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #179 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #180 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #181 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #182 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #183 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #184 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #185 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #186 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #187 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #188 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #189 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #190 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #191 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #192 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #193 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #194 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #195 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #196 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #197 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #198 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #199 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #200 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #201 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #202 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #203 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #204 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #205 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #206 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #207 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #208 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #209 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #210 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #211 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #212 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #213 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #214 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #215 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #216 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #217 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #218 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #219 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #220 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #221 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #222 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #223 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #224 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #225 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #226 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #227 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #228 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #229 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #230 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #231 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #232 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #233 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #234 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #235 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #236 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #237 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #238 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #239 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #240 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #241 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #242 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #243 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #244 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #245 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #246 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #247 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #248 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #249 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #250 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #251 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #252 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #253 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #254 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #255 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #256 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #257 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #258 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #259 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #260 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #261 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #262 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #263 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #264 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #265 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #266 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #267 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #268 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #269 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #270 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #271 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #272 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #273 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #274 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #275 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #276 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #277 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6442:14) #278 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #279 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #280 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #281 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #282 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:107:11) #283 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #284 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #285 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #286 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #287 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #288 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #289 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #290 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #291 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #292 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #293 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #294 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #295 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #296 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #297 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #298 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #299 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #300 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #301 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #302 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #303 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #304 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #305 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #306 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #307 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #308 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #309 StatefulElement.update (package:flutter/src/widgets/framework.dart:5274:5) #310 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #311 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #312 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #313 ProxyElement.update (package:flutter/src/widgets/framework.dart:5417:5) #314 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #315 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5111:16) #316 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #317 StatelessElement.update (package:flutter/src/widgets/framework.dart:5162:5) #318 Element.updateChild (package:flutter/src/widgets/framework.dart:3686:15) #319 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1253:16) #320 RenderObjectToWidgetElement.update (package:flutter/src/widgets/binding.dart:1230:5) #321 RenderObjectToWidgetElement.performRebuild (package:flutter/src/widgets/binding.dart:1244:7) #322 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #323 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2780:19) #324 AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:1396:19) #325 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:358:5) #326 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1297:15) #327 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1227:9) #328 AutomatedTestWidgetsFlutterBinding.pump.<anonymous closure> (package:flutter_test/src/binding.dart:1246:9) #331 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:68:41) #332 AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:1232:27) #333 WidgetTester._pumpWidget (package:flutter_test/src/widget_tester.dart:587:20) #334 WidgetTester.pumpWidget.<anonymous closure> (package:flutter_test/src/widget_tester.dart:572:14) #337 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:68:41) #338 WidgetTester.pumpWidget (package:flutter_test/src/widget_tester.dart:571:27) #339 main.<anonymous closure>.<anonymous closure> (file:///Volumes/MyExternal/ExternalRefCode/flutter/packages/flutter/test/material/text_field_test.dart:15687:20) <asynchronous suspension> <asynchronous suspension> (elided 5 frames from dart:async and package:stack_trace) ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 00:06 +0 -1: context menu contextMenuBuilder changes from default to null [E] Test failed. See exception logs above. The test description was: contextMenuBuilder changes from default to null To run this test again: /Volumes/MyExternal/ExternalRefCode/flutter/bin/cache/dart-sdk/bin/dart test /Volumes/MyExternal/ExternalRefCode/flutter/packages/flutter/test/material/text_field_test.dart -p vm --plain-name 'context menu contextMenuBuilder changes from default to null' 00:06 +0 -1: Some tests failed. (base) â flutter git:(feat/text-field-npe) ``` </details>
-
Leigha Jarett authored
Fixes https://github.com/flutter/flutter/issues/127214
-
Leigha Jarett authored
Fixes https://github.com/flutter/flutter/issues/127213
-
- 05 Jun, 2023 5 commits
-
-
Jonah Williams authored
Adds a special opacity widget that does not act like a repaint boundary. Better solution for https://github.com/flutter/flutter/pull/128138
-
Kate Lovett authored
The deprecated `[RawScrollbar/Scrollbar/CupertinoScrollbar/ScrollbarThemeData].isAlwaysShown` has expired and is removed in thi PR. Also, `Scrollbar.hoverThickness` is also removed after having expired. The replacement for `isAlwaysShown` is `thumbVisibility`. This deprecation was introduced in #96957. The name change came from new behaviors like a track that is conditionally visible. Since the original API only referred to the thumb, the name was changed to reflect this intention. This change is supported by dart fix. â The replacement for `hoverThickness` is `ScrollbarThemeData.thickness`, which is a MaterialStateProperty that allows for the thickness to respond to multiple states including hover. This deprecation was introduced in #97173. This change is not supported by dart fix. ð Part of https://github.com/flutter/flutter/issues/127042
-
Kate Lovett authored
#### (plus some more docs) Fixes https://github.com/flutter/flutter/issues/76760 Fixes https://github.com/flutter/flutter/issues/82391 Fixes https://github.com/flutter/flutter/issues/45619 Fixes #117316 Fixes #110956 Fixes #127282 Fixes #32563 Fixes #46089 Fixes #79077 Part of fixing #62833 This fixes (a bunch of) issues that have been reported differently over the years, but all have the same root cause. Sometimes the NestedScrollView would incorrectly calculate whether or not there is enough content to allow scrolling. This would only apply to drag scrolling (not mouse wheel scrolling for example). This did not relate to how the extent of the NestedScrollView is computed, but just the logic that enabled the actual drag gestures. This fixes that. :)
-
Michael Goderbauer authored
Follow-up to https://github.com/flutter/engine/pull/42493.
-
Jonah Williams authored
Fixes https://github.com/flutter/flutter/issues/127836 The flexible scroll bar needs to rebuild even if the child/opacity hasn't changed. Force this with a value key.
-
- 02 Jun, 2023 5 commits
-
-
Jim Graham authored
This workaround was created 6 years ago with no links to bug databases to track. As best we can determine, the issue is no longer present in SkPicture or DisplayList and is most likely obsolete. More importantly, though, non-rendering primitives are ignored by the DisplayList construction and so this workaround will just be ignored anyway. If a problem surfaces about this issue that we haven't discovered by a thorough code search of the current code base, then workarounds should be installed within the relevant implementation modules rather than in the framework (and documented with bugs filed in either or both of Flutter's github repos, and/or the Skia issue database). Workaround originally created in this PR: https://github.com/flutter/flutter/pull/9654
-
Michael Goderbauer authored
In the multi view world, `RenderViews` are created by the `View` widget and no longer owned by the binding. Prior to this change, the `LiveTestWidgetsFlutterBinding` owned and managed a special subclass of `RenderView`, the `_LiveTestRenderView`. In the new world, where `RenderView`s can be created anywhere in the widget tree where a `View` widget is used, this setup is no longer feasible. This change removes this special `_LiveTestRenderView` and instead adds debug hocks to `RenderView` to allow the `LiveTestWidgetsFlutterBinding` to draw a debug overlay on top of the content of any `RenderView`.
-
fzyzcjy authored
I come across this when migrating my codebase. There is indeed a linter rule for it: unnecessary_overrides (see screenshot below for an example). I can help enabling the rule (as well as other rules, and/or dart formatter, etc) for Flutter codebase if needed. ![image](https://github.com/flutter/flutter/assets/5236035/3fe8fa32-cde2-45a9-901a-a383e8457fa1)
-
Michael Goderbauer authored
Syncs our lints with https://github.com/dart-lang/linter/blob/master/example/all.yaml: * removed the deprecated `iterable_contains_unrelated_type` and `list_remove_unrelated_type` lints (their replacement `collection_methods_unrelated_type` was already enabled for us) * enabled the new `no_self_assignments` and fixed one issue triggered by the lint.
-
Qun Cheng authored
Fixes #127092 This fix can solve the alignment issue in `SearchBar` but we still need to investigate the root cause for the `TextField`. The text baseline of `TextField` doesn't change when the height is less than 48 and greater than 40. The problem should be related to the `minContainerHeight` which is 48 by default but the `contentHeight` has become smaller than this min value already. Setting `isDense`/`isCollapsed` to true gives the `minContainerHeight` a smaller number which is 0.0: https://github.com/flutter/flutter/blob/ff33555b239de4c17e7149db17eb70bcf5dee215/packages/flutter/lib/src/material/input_decorator.dart#L1086 Since [`isDense`](https://github.com/flutter/flutter/blob/ff33555b239de4c17e7149db17eb70bcf5dee215/packages/flutter/lib/src/material/input_decorator.dart#L3907) is used for the case where the text field has less vertical space, I just use this property in SearchBar. https://github.com/flutter/flutter/assets/36861262/6ddc8e90-1b47-4dd5-9a57-59b86cafec6d This is a demo to show the text baseline that doesn't change when we set the text field height under 48. https://github.com/flutter/flutter/assets/36861262/ce2ee815-f1f5-493a-930e-0540a627bec8
-
- 01 Jun, 2023 3 commits
-
-
Taha Tesser authored
-
Hans Muller authored
-
Kate Lovett authored
Adds an error message where we previously would crash without any help. Came across this while working on https://github.com/flutter/flutter/pull/127718 Fixes https://github.com/flutter/flutter/issues/128074
-