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 Framework Team: Notable Commits #121415

Open
HansMuller opened this issue Feb 24, 2023 · 3 comments
Open

Flutter Framework Team: Notable Commits #121415

HansMuller opened this issue Feb 24, 2023 · 3 comments
Assignees
Labels
c: proposal A detailed proposal for a change to Flutter framework flutter/packages/flutter repository. See also f: labels. P1 High-priority issues at the top of the work list permanently locked Prevent this issue from getting automatically unlocked team-framework Owned by Framework team triaged-framework Triaged by Framework team

Comments

@HansMuller
Copy link
Contributor

HansMuller commented Feb 24, 2023

For years, Flutter's Framework team has been reviewing "notable commits" in our weekly staff meeting at Google. The notable commits are a lightly curated list of the pull requests that have landed in the previous week. The goal is to celebrate our progress and the developers who have contributed to that progress. Unfortunately, many of those developers have not been in the weekly staff meeting's conference room, they come from other teams within Google and the wider Flutter community.

As of late February 2023, the lists are finally public. Hopefully, it's never to late to do the right thing.

Each list typically covers about one week and is not comprehensive. Its focus is on commits to Flutter's framework "flutter/flutter" repo that involved the Framework team as pull-request authors or reviewers. That's not strictly true however, we all contribute to many repos - not the least of which is "flutter/engine" - and you'll find evidence of that here. And not all of the commits listed here necessarily involved someone from the Framework team, although that's typically true. One final observation about the participants in the list below is the large number of contributions that have come from the Flutter community. We are blessed with a an active and generous developer community. Each week's notable commits list is a tribute to everyone who has helped advance Flutter, not just Google's Framework team.

@HansMuller HansMuller self-assigned this Feb 24, 2023
@danagbemava-nc danagbemava-nc added in triage Presently being triaged by the triage team framework flutter/packages/flutter repository. See also f: labels. c: proposal A detailed proposal for a change to Flutter and removed in triage Presently being triaged by the triage team labels Feb 27, 2023
@goderbauer goderbauer added the P1 High-priority issues at the top of the work list label Feb 28, 2023
@flutter flutter locked and limited conversation to collaborators Mar 2, 2023
@HansMuller
Copy link
Contributor Author

HansMuller commented Mar 2, 2023

Notable Commits: 2023 May 19th - May 26th

  • Kate Lovett — Remove deprecated OverscrollIndicatorNotification.disallowGlow
    #127050 merged on May 19, 2023 — Small: 3 comments over 2 days, 2 additions and 12 deletions in 1 file
    Reviewed by: Justin McCandless

    Use OverscrollIndicatorNotification.disallowIndicator instead.

  • Gil Nobrega — Do not animate TabBarView if controller is invalid
    #123442 merged on May 19, 2023 — Small: 6 comments over 1 month, 66 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Fixes a 4 year old regression.

  • Loïc Sharma — [Windows] Ensure window is shown
    #127046 merged on May 19, 2023 — Medium: 9 comments over 2 days, 348 additions and 26 deletions in 15 files
    Reviewed by: Christopher Fujino, yaakovschectman

    Fixes a race condition that could prevent a Windows App's window from appearing.

  • Justin McCandless — Fix the breaking of multi-code-unit characters in obscure mode
    #123366 merged on May 23, 2023 — Large: 42 comments over 2 months, 509 additions and 28 deletions in 5 files
    Reviewed by: Renzo Olivares, LongCatIsLooong

    Making text input safer for emojis.

    Before: you could traverse and delete obscured text inside of code points which could cause a crash

    output2

    After: moving the cursor and deleting is based on code points

    output1

  • LouiseHsu — Show warning when attempting to flutter run on an ios device with developer mode turned off
    #125710 merged on May 22, 2023 — Small: 49 comments over 3 weeks, 99 additions and 4 deletions in 9 files
    Reviewed by: Jenn Magder, hellohuanlin, Victoria Ashworth

    A new warning if you attempt to flutter run -d <device id> on a device without developer mode enabled.

    Screenshot 2023-05-09 at 3 53 18 AM
  • Victor Ohashi — fix: Search anchor box location when used on nested navigator
    #127198 merged on May 22, 2023 — Small: 6 comments over 3 days, 39 additions and 12 deletions in 2 files
    Reviewed by: Hans Muller, Qun Cheng

    If the search view doesn't fit within the nested navigator then move it. Automatically.

    Before After
    Screenshot 2023-05-19 at 11 55 53 Screenshot 2023-05-19 at 11 53 30
  • Taha Tesser — Add M3 date picker tests and fix divider
    #127197 merged on May 23, 2023 — Medium: 4 comments over 3 days, 408 additions and 6 deletions in 4 files
    Reviewed by: Hans Muller

    Puts the DatePicker's divider in its place.

    Before After
    Screenshot 2023-05-19 at 17 32 19 Screenshot 2023-05-19 at 17 51 15
  • LongCatIsLooong — Improve TextPainter.layout caching
    #118128 merged on May 24, 2023 — Large: 81 comments over 4 months, 431 additions and 170 deletions in 5 files
    Reviewed by: Ian Hickson, Tomasz Gucio, Michael Goderbauer

    Text layout is often the most time consuming part of rendering a frame. Now it's often a little faster.

  • Sun Jiao — make suggestionsBuilder in SearchAnchor asyncable
    #127019 merged on May 24, 2023 — Medium: 41 comments over 1 week, 454 additions and 7 deletions in 6 files
    Reviewed by: Navaron Bracke, Justin McCandless, Qun Cheng

    For the common case where computing suggestions might block for a while.

  • LongCatIsLooong — Remove Tooltip mouse tracker listener & update hovering/MouseRegion logic & animation
    #119199 merged on May 25, 2023 — Large: 13 comments over 3 months, 587 additions and 313 deletions in 7 files
    Reviewed by: Greg Spencer

    Fine tunes tooltip transitions.

  • pdblasi-google — Adds TestDisplay API for testing Display features
    #127525 merged on May 26, 2023 — Large: 14 comments over 1 day, 552 additions and 22 deletions in 4 files
    Reviewed by: Dan Field

    We have FlutterView.display et al. Now they can be tested.

  • LongCatIsLooong — Remove rounding from TextPainter
    #127099 merged on May 26, 2023 — Medium: 3 comments over 1 week, 260 additions and 84 deletions in 16 files
    Reviewed by: Ian Hickson

    Text height is now exactly the logical pixel height you asked for. If you opt-in.

  • DevinSlider.onChangeStart & Slider.onChangeEnd are not called on keyboard shortcuts
    #126896 merged on May 24, 2023 — Small: 13 comments over 1 week, 129 additions and 30 deletions in 2 files
    Reviewed by: Kate Lovett, Taha Tesser

    Ensures that the notification callbacks run, even if you're operating the slider with the keyboard.

  • Qun ChengSearchBar should not be impacted by overall InputDecorationTheme
    #127465 merged on May 25, 2023 — Small: 2 comments over 1 day, 180 additions and 34 deletions in 2 files
    Reviewed by: Navaron Bracke, Hans Muller

    Prevents the prevailing InputDecorationTheme from affecting the Search Bar's text field.

  • Bruno Leroux — Fix ScrollPosition overscroll precision error
    #127321 merged on May 24, 2023 — Small: 9 comments over 2 days, 43 additions and 1 deletion in 2 files
    Reviewed by: Kate Lovett, nt4f04uNd

    Fixed a ScrollPosition problem that could cause unexpected stretching when overscrolling.

  • LongCatIsLooong — Remove a bad assert from tooltip implementation
    #127629 merged on May 26, 2023 — Small: 1 comment over 1 hour, 194 additions and 45 deletions in 2 files
    Reviewed by: Greg Spencer

    Fixed a crash that could occur when hovering a tooltip.

  • Elias YishakProcessResultMatcher created and used in test
    #127414 merged on May 25, 2023 — Small: 7 comments over 2 days, 88 additions and 1 deletion in 3 files
    Reviewed by: Christopher Fujino

    Support for verifying that your processes exit expectedly.

  • Taha Tesser — Add ScrollNotificationObserver sample
    #127023 merged on May 25, 2023 — Small: 8 comments over 1 week, 175 additions and 0 deletions in 3 files
    Reviewed by: Kate Lovett

    Here it is:

    Screen.Recording.2023-05-17.at.15.31.01.mov
  • Justin McCandless — Fix bug in Autocomplete example
    #127219 merged on May 22, 2023 — Small: 3 comments over 2 days, 74 additions and 11 deletions in 6 files
    Reviewed by: Qun Cheng

    Now there are more tests for the autocomplete example.

  • Daniel Iglesia — Support keeping a bottom sheet with a DraggableScrollableSheet from closing on drag/fling to min extent
    #127339 merged on May 22, 2023 — Small: 2 comments over 4 hours, 94 additions and 11 deletions in 5 files
    Reviewed by: Hans Muller

    Now you can opt-out of having the bottom sheet snap closed.

  • NikolajHarderNota — modal bottom sheet barrier label
    #126431 merged on May 23, 2023 — Small: 8 comments over 1 week, 57 additions and 1 deletion in 2 files
    Reviewed by: Reid Baker, Qun Cheng

    Improves modal bottom sheet a11y and fulfills a 2 year old feature request.

  • lsaudon — Add missing parameters in TextFormField
    #127020 merged on May 24, 2023 — Small: 9 comments over 1 week, 246 additions and 0 deletions in 2 files
    Reviewed by: Justin McCandless, Kate Lovett

    Bings the TextFormField API back in sync with TextField.

  • Tong Mu — [Rasterizer] Make resubmit information temporary
    #42001 merged on May 25, 2023 — Small: 1 comment over 1 week, 47 additions and 31 deletions in 2 files
    Reviewed by: Chinmay Garde

    Tong Mu — [macOS] Clean up unused methods in FlutterRenderer
    #42196 merged on May 21, 2023 — Small: 1 comment over 14 hours, 15 additions and 164 deletions in 6 files
    Reviewed by: Chris Bracken, Chinmay Garde

    Tong Mu — [macOS] Multi-view thread synchronizer
    #41915 merged on May 25, 2023 — Large: 19 comments over 2 weeks, 611 additions and 66 deletions in 13 files
    Reviewed by: Matej Knopp

    Progress towards multi View support which will lead to multi-window on desktops!

Notable Commits: 2023 May 12th - May 19th

  • Taha Tesser — Fix focus behavior and provided thumb and focus color aren't applied to Cupertino variant of Switch.adaptive
    #126688 merged on May 12, 2023 — Small: 2 comments over 2 hours, 109 additions and 17 deletions in 2 files
    Reviewed by: Mitchell Goodwin

    Now you'll get the thumb and focus colors you asked for and the focus for just one tab key.

    Before After
    Screen.Recording.2023-05-12.at.19.27.38.mov
    Screen.Recording.2023-05-12.at.19.25.52.mov
  • Kate Lovett — Add ScrollController.onAttach & onDetach, samples/docs on listening/getting scrolling info
    #124823 merged on May 15, 2023 — Large: 15 comments over 1 month, 547 additions and 7 deletions in 9 files
    Reviewed by: Tae Hyung Kim

    New API and examples that take the pain out of reacting to scroll gestures.

    Screen.Recording.2023-04-13.at.4.28.27.PM.mov
  • JellyO1 — Expose callback that allows focus traversal customization
    #120235 merged on May 17, 2023 — Medium: 31 comments over 3 months, 297 additions and 21 deletions in 2 files
    Reviewed by: Loïc Sharma, Greg Spencer, Kate Lovett

    Adds a requestFocusCallback on FocusTraversalPolicy.

  • Justin McCandless — Autocomplete async examples
    #126283 merged on May 17, 2023 — Large: 5 comments over 1 week, 799 additions and 0 deletions in 9 files
    Reviewed by: Renzo Olivares

    3 new examples that show how to configure Autocomplete when the completions show up asynchronously.

  • st merlhin — expose CupertinoDatePicker and CupertinoTimerPicker itemExtent
    #125852 merged on May 16, 2023 — Small: 28 comments over 2 weeks, 63 additions and 13 deletions in 3 files
    Reviewed by: Greg Spencer

    Provides explicit control over the size of the rotating drum items in the time and date pickers.

  • chunhtai — Properly cleans up routes
    #126453 merged on May 19, 2023 — Small: 18 comments over 1 week, 143 additions and 66 deletions in 6 files
    Reviewed by: Michael Goderbauer

    Fixed a leak related to overlays.

  • Qun Cheng — Remove deprecated primaryVariant and secondaryVariant from ColorScheme
    #127124 merged on May 19, 2023 — Small: 2 comments over 6 hours, 0 additions and 125 deletions in 4 files
    Reviewed by: Kate Lovett

    Eventually deprecated API gets removed per the repo's official policy.

  • Renzo Olivares — Remove deprecated fixTextFieldOutlineLabel
    #125893 merged on May 17, 2023 — Small: 8 comments over 2 weeks, 0 additions and 72 deletions in 3 files
    Reviewed by: Kate Lovett

    Eventually deprecated API gets removed per the repo's official policy.

  • Mitchell Goodwin — Add checkmark style to CupertinoRadio
    #126480 merged on May 16, 2023 — Small: 9 comments over 5 days, 142 additions and 17 deletions in 4 files
    Reviewed by: Greg Spencer, Pierre-Louis

    For stylish checkboxes.

    Screen.Recording.2023-05-10.at.4.42.30.PM.mov
  • Michael Goderbauer — enable no_literal_bool_comparisons lint
    #126647 merged on May 16, 2023 — Small: 4 comments over 4 days, 79 additions and 79 deletions in 46 files
    Reviewed by: Ian Hickson, Christopher Fujino

    No more if (foo == true) etc.

  • Qun Cheng — Clip search view content during animation
    #126975 merged on May 18, 2023 — Small: 5 comments over 23 hours, 102 additions and 55 deletions in 2 files
    Reviewed by: Bernardo Ferrari, Hans Muller

    Fixed a crash that could occur during search view's animated segue.

  • Mushaheed Syed — Fix copyWith method of ActionIconThemeData
    #126763 merged on May 16, 2023 — Small: 5 comments over 2 days, 40 additions and 4 deletions in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    Found the problem and fixed it! Thanks to @predatorx7

  • Mahdi Bagheri — Fixing richMessage gesture recognizer in tooltip widget
    #126207 merged on May 18, 2023 — Small: 9 comments over 1 week, 48 additions and 20 deletions in 2 files
    Reviewed by: Michael Goderbauer, chunhtai

    Tooltips have always ignored the pointer. No one could remember why. Now they don't.

  • Chris Bracken — [macOS] Clean up PlatformView mutator scaling
    #42110 merged on May 18, 2023 — Small: 12 comments over 1 hour, 52 additions and 24 deletions in 1 file
    Reviewed by: Greg Spencer

    Chris Bracken — [macOS] Refactor PlatformView mutators
    #42130 merged on May 18, 2023 — Small: 10 comments over 3 hours, 147 additions and 81 deletions in 1 file
    Reviewed by: Chris Yang

    Engine changes to ensure that you can ROTATE PlatformViews on MacOS. Yes, you can do that (now).

  • Loïc Sharma — [Windows] Add force redraw to the C++ client wrapper
    #42061 merged on May 16, 2023 — Small: 4 comments over 19 hours, 36 additions and 2 deletions in 6 files
    Reviewed by: Chris Bracken, yaakovschectman

    Progress towards making app startup behavior on Windows a little bit more robust.

  • Renzo Olivares — [Android] Do not collapse text selection on shift key up
    #42075 merged on May 17, 2023 — Small: 2 comments over 1 day, 4 additions and 10 deletions in 2 files
    Reviewed by: Justin McCandless, LongCatIsLooong

    Nothing should happen as a consquence of moving the shift key up or down.

Notable Commits: 2023 May 5th - May 12th

  • Justin McCandless — Hide the context menu on tap down
    #126295 merged on May 12, 2023 — Small: 6 comments over 3 days, 97 additions and 3 deletions in 3 files
    Reviewed by: Greg Spencer

    Fixed some unintentionally flashy context menu behavior. Looks good now:

    context_menu_down

  • fzyzcjy — Fix that flutter test does not understand concurrency
    #125942 merged on May 8, 2023 — Small: 21 comments over 5 days, 7 additions and 7 deletions in 3 files
    Reviewed by: Christopher Fujino, Elias Yishak

    Ensure that concurrency=1 in dart_test.yaml causes tests to be run one at a time.

  • Michael Goderbauer — Make dpr available during Scrollable disposal
    #126535 merged on May 11, 2023 — Small: 1 comment over 2 hours, 49 additions and 4 deletions in 4 files
    Reviewed by: Kate Lovett

    Fixed a crash that could occur when View.of was called through ScrollPosition.devicePixelRatio.

  • Qun Cheng — Reorder materialStateProperty defaults
    #125905 merged on May 11, 2023 — Extra large: 2 comments over 1 week, 1210 additions and 425 deletions in 37 files
    Reviewed by: Hans Muller

    Systematic fix for a problem in computing defaults defined with MaterialStateProperty. Pressed before hoevered, hovered before focused, etc.

  • Michael Goderbauer — Fix leaks
    #126144 merged on May 8, 2023 — Small: 3 comments over 2 days, 115 additions and 75 deletions in 13 files
    Reviewed by: Polina Cherkasova

    Resolved 5 issues related to leaky tests.

  • LongCatIsLooong — Fix TextSpan gc regression
    #126382 merged on May 12, 2023 — Small: 5 comments over 2 days, 33 additions and 21 deletions in 1 file
    Reviewed by: Ian Hickson, Michael Goderbauer

    Fixed a 20% GC preformance benchmark regression.

  • Alex Li — ✨ Add strokeAlign to CircularProgressIndicator and RefreshProgressIndicator
    #125945 merged on May 10, 2023 — Small: 5 comments over 1 week, 101 additions and 2 deletions in 2 files
    Reviewed by: Hans Muller, Greg Spencer

    Resolves an issue submitted by yours truly SEVEN years ago. Wow.

  • Taha Tesser — Add FocusNode, onFocusChange, and autofocus to CupertinoSwitch
    #126684 merged on May 12, 2023 — Small: 1 comment over 1 hour, 126 additions and 0 deletions in 2 files
    Reviewed by: Mitchell Goodwin

    Fills out the CupertinoSwitch focus support.

  • Taha Tesser — Fix showDatePicker in input mode throws an ArgumentError
    #126525 merged on May 12, 2023 — Small: 1 comment over 1 day, 55 additions and 1 deletion in 3 files
    Reviewed by: Greg Spencer

    Now we'll show the date parsing problem to the user, not the developer.

  • Michael Goderbauer — Sync lints
    #126316 merged on May 11, 2023 — Small: 8 comments over 2 days, 29 additions and 24 deletions in 14 files
    Reviewed by: Christopher Fujino, Greg Spencer

    Adds two new guardrails to the repo: implicit_reopen and type_literal_in_constant_pattern.

  • Tirth — [ExpansionPanelList] add materialGapSize property in ExpansionPanelList Widget
    #123971 merged on May 6, 2023 — Small: 26 comments over 1 month, 96 additions and 2 deletions in 2 files
    Reviewed by: Ian Hickson, Viren Khatri

    Now you can leave a little breathing room between expansion panels.

    materialGapSize: 0 materialGapSize: 16 (default) materialGapSize: 30
    screenshot_1680450783 screenshot_1680453525 screenshot_1680450910

    See the PR for more screenshots!

  • Patrick Lindsay — Added CupertinoDatepicker monthYear mode ([Proposal] CupertinoDatePicker with month and year. #93508)
    #125603 merged on May 5, 2023 — Large: 11 comments over 1 week, 515 additions and 8 deletions in 2 files
    Reviewed by: Justin McCandless, Mitchell Goodwin

    Adds a monthYear mode:

    monthYearMode

  • Qun Cheng — Add Switch.trackOutlineWidth property
    #125848 merged on May 5, 2023 — Small: 10 comments over 3 days, 274 additions and 23 deletions in 5 files
    Reviewed by: Hans Muller

    Switch outline widths can now vary according to the switch's state.

    Screenshot 2023-05-01 at 12 24 16 PMScreenshot 2023-05-01 at 12 24 04 PM

  • 林洵锋 — [ios] fix hold and drag spacebar does not move cursor when obscureTex…
    #122383 merged on May 6, 2023 — Small: 11 comments over 1 month, 42 additions and 0 deletions in 2 files
    Reviewed by: Justin McCandless, Chris Yang

    Long-press on the iOS keyboard's space bar now moves the cursor, even when the TextField has obscureText: true.

  • Istiak Ahmed — Add sample code for SliverAppBar
    #125785 merged on May 5, 2023 — Small: 18 comments over 4 days, 143 additions and 0 deletions in 3 files
    Reviewed by: Justin McCandless, Kate Lovett

    Demos stretch and onStretchTrigger.

    Screenrecorder-2023-05-01-12-54-00-483.mp4

Notable Commits: 2023 April 28th - May 5th

  • Loïc Sharma — Remove single view assumption from pointer events
    #41602 merged on April 29, 2023 — Small: 7 comments over 4 hours, 98 additions and 21 deletions in 7 files
    Reviewed by: Chris Bracken, Tong Mu, Greg Spencer

    An important step towards handling multi-view input.

  • Greg Spencer — Determine lifecycle by looking at window focus also
    #41094 merged on April 28, 2023 — Medium: 69 comments over 2 weeks, 469 additions and 31 deletions in 16 files
    Reviewed by: Greg Price, xster, Ari Weiland, Reid Baker

    Improves our ability to recognize the resumed and inactive application states on Android.

  • Tae Hyung Kim — Sliver Cross Axis Group
    #123862 merged on April 28, 2023 — Large: 121 comments over 4 weeks, 1003 additions and 3 deletions in 7 files
    Reviewed by: Kate Lovett

    A new sliver that arranges its children along the "cross axis", i.e. horizontally for a vertical sliver list. More information here.

  • Qun ChengCheckbox.fillColor should be applied to checkbox's background color when it is unchecked.
    #125643 merged on April 28, 2023 — Small: 5 comments over 1 day, 206 additions and 61 deletions in 4 files
    Reviewed by: Hans Muller

    Corrects the M3 default and ensures that it can be overridden.

    Screenshot 2023-04-27 at 9 50 54 AM
  • Viren Khatri — add support to customize Slider interacivity
    #121483 merged on May 1, 2023 — Medium: 49 comments over 2 months, 451 additions and 29 deletions in 4 files
    Reviewed by: Kate Lovett

    Now you can choose if your slider only responds to taps or drags or thumb-drags, etc. More info here.

  • Tirth — [NavigationDrawer] adds padding property in NavigationDrawer Widget
    #123961 merged on May 5, 2023 — Small: 20 comments over 1 month, 37 additions and 1 deletion in 2 files
    Reviewed by: Michael Goderbauer, Viren Khatri

    A small change so that you can spread out navigation drawer items.

    Without adding tilePadding in NavigationDrawer With tilePadding: EdgeInsets.all(16) in NavigationDrawer
    photo_2023-04-02_15-03-56 photo_2023-04-02_15-04-00
  • Polina Cherkasova — Define testWidgetsWithLeakTracking.
    #125063 merged on May 4, 2023 — Large: 23 comments over 2 weeks, 495 additions and 189 deletions in 22 files
    Reviewed by: Michael Goderbauer, Dan Field

    Makes it easy to define tests that check for leaks.

  • Taha Tesser — Introduce TabBar.tabAlignment
    #125036 merged on May 1, 2023 — Medium: 22 comments over 1 week, 355 additions and 24 deletions in 5 files
    Reviewed by: Kate Lovett

    Now you can override the default alignment of a TabBar's tabs.

  • Valentin Vignal — Align the Popup Menu under its child
    #125534 merged on May 2, 2023 — Small: 8 comments over 6 days, 44 additions and 2 deletions in 2 files
    Reviewed by: Kate Lovett, Qun Cheng

    Popup menus used to slightly overlap the child they popped up from.

    Before After
    image image
  • Pierre-Louis — Provide default constraints for M3 dialogs
    #120082 merged on May 4, 2023 — Small: 4 comments over 2 months, 63 additions and 31 deletions in 3 files
    Reviewed by: Eilidh Southren, hangyu

    Constrains the default maximum size of M3 dialogs to 560x560.

  • Taha Tesser — Fix Material 3 tab indicator weight and position
    #125883 merged on May 5, 2023 — Medium: 10 comments over 2 days, 430 additions and 15 deletions in 5 files
    Reviewed by: Kate Lovett

    Fine tunes the appearance of M3 tabs and tab indicators.

  • fzyzcjyModalBarrier's gesture recognizer does not call invokeCallback
    #125386 merged on May 3, 2023 — Small: 19 comments over 1 week, 27 additions and 1 deletion in 2 files
    Reviewed by: Michael Goderbauer, chunhtai

    Improves error reporting for ModalBarrier onDismiss callback errors.

  • LongCatIsLooong — Add InlineSpan.visitDirectChildren
    #125656 merged on May 3, 2023 — Small: 11 comments over 5 days, 147 additions and 106 deletions in 6 files
    Reviewed by: Michael Goderbauer

    Makes it possible to traverse the InlineSpans within a TextSpan. In this case the motivation was to enable creating TextStyles based on structural inheritance.

  • Bruno Leroux — Add a ReorderableListView example with cards + cleanup existing tests
    #126155 merged on May 5, 2023 — Small: 1 comment over 3 hours, 214 additions and 79 deletions in 9 files
    Reviewed by: Hans Muller

    A nice example of a ReorderableListView feature.

    Capture.video.du.2023-05-05.15-12-36.mp4
  • Bruno Leroux — Add debugPrintKeyboardEvents flag
    #125629 merged on May 2, 2023 — Small: 8 comments over 5 days, 79 additions and 3 deletions in 3 files
    Reviewed by: Tong Mu

    If your app listens directly to the keyboard, this flag may come in handy.

  • Ian Hickson — Minor fixes found while working on blankcanvas
    #125751 merged on May 5, 2023 — Small: 1 comment over 5 days, 95 additions and 46 deletions in 9 files
    Reviewed by: Michael Goderbauer

    Various documentation and error reporting improvements, and a little refactoring.

  • Casey Rogers — Make future and stream required arguments in their respective builder widgets
    #125838 merged on May 2, 2023 — Small: 5 comments over 10 hours, 14 additions and 11 deletions in 2 files
    Reviewed by: Brett Morgan, Michael Goderbauer

    A breaking change that makes FutureBuilder.future, StreamBuilderBase.stream, and StreamBuilder.stream a little safer to use. Resolves a two year old issue!

Notable Commits: 2023 April 21st - April 28th

  • Bernardo Ferrari — Add borderRadius to LinearProgressIndicator
    #123517 merged on April 24, 2023 — Small: 21 comments over 4 weeks, 63 additions and 3 deletions in 2 files
    Reviewed by: Kate Lovett

    Now you can configure a LinearProgressIndicator to look like this:

    image
  • chunhtai — Implement url support for RouteInformation and didPushRouteInformation
    #119968 merged on April 24, 2023 — Large: 35 comments over 2 months, 466 additions and 315 deletions in 13 files
    Reviewed by: Michael Goderbauer

    Another step on the road towards simplifying support for deep links.

  • Justin McCandless — iOS TextField spell check style
    #125432 merged on April 25, 2023 — Small: 3 comments over 23 hours, 119 additions and 25 deletions in 3 files
    Reviewed by: Camille Simon

    Make spell-check feedback for Material TextFields running on iOS look native.

    Before After
    Screenshot 2023-04-24 at 11 41 59 AM Screenshot 2023-04-24 at 11 25 12 AM
  • Taha Tesser — Fix SliverAppBar.medium & SliverAppBar.large text scale
    #125038 merged on April 25, 2023 — Small: 8 comments over 6 days, 214 additions and 19 deletions in 2 files
    Reviewed by: Kate Lovett

    Limit the textScaleFactor applied to app bar titles to prevent unsightly clipping.

    Before

    Medium App Bar - textScaleFactor: 3.0 Large App Bar - textScaleFactor.30

    After

    Medium App Bar - textScaleFactor: 3.0 Large App Bar - textScaleFactor.30
  • arvin — fix RangeSlider, with no overlayShape shifts to the left
    #125483 merged on April 28, 2023 — Small: 14 comments over 3 days, 93 additions and 47 deletions in 2 files
    Reviewed by: Kate Lovett, Viren Khatri, Taha Tesser

    Ensure that the RangeSlider's thumbs always fit in their track.

    Before

    Screenshot 2023-04-26 at 16 06 56

    After

    Screenshot 2023-04-26 at 16 25 36

  • Justin McCandless — Fix the position of the Android-style spell check toolbar
    #124897 merged on April 24, 2023 — Small: 8 comments over 1 week, 78 additions and 23 deletions in 5 files
    Reviewed by: Camille Simon

    Moves the Android spell-check menu below the mistake, and the text selection handle below the menu, where they belong.

    Before After
    Screenshot from 2023-04-14 15-10-41 image

    Bonus "after" gif:

    handles

  • Taha Tesser — Fix SnackBar material clip
    #125622 merged on April 27, 2023 — Small: 1 comment over 4 hours, 45 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    A small fix for the clipBehavior plumbing.

    Before After
    Screenshot 2023-04-27 at 14 08 05 Screenshot 2023-04-27 at 14 00 44
  • Tirth — [date_picker] [date_range_picker] add properties to change switch-to icons
    #124881 merged on April 24, 2023 — Small: 5 comments over 1 week, 275 additions and 6 deletions in 3 files
    Reviewed by: Hans Muller

    Now you can customize the icons for the buttons that switch the date picker's entry mode.

    showDatePicker

    switchToInputEntryModeIcon: default switchToInputEntryModeIcon: Icons.keyboard
    dp_switchtoinputentrymodeicon_default dp_switchtoinputentrymodeicon_icon_keyboard
    switchToCalendarEntryModeIcon: default switchToCalendarEntryModeIcon: Icons.weekend
    dp_switchtocalendarentrymodeicon_default dp_switchtocalendarentrymodeicon_icons_weekend

    showDateRangePicker

    switchToInputEntryModeIcon: default switchToInputEntryModeIcon: Icons.keyboard
    drp_switchtoinputentrymodeicon_default drp_switchtoinputentrymodeicon_icon_keyboard
    switchToCalendarEntryModeIcon: default switchToCalendarEntryModeIcon: Icons.weekend
    drp_switchtocalendarentrymodeicon_default drp_switchtocalendarentrymodeicon_icons_weekend
  • Viren Khatri — enhances OverlayEntry docs
    #124478 merged on April 28, 2023 — Small: 21 comments over 2 weeks, 16 additions and 8 deletions in 1 file
    Reviewed by: Michael Goderbauer, LongCatIsLooong

    A small clarfication about the differences between OverlayEntry and the exciting new OverlayPortal.

  • Tae Hyung Kim — Sliver Constrained Cross Axis
    #125239 merged on April 24, 2023 — Medium: 19 comments over 4 days, 350 additions and 0 deletions in 6 files
    Reviewed by: Kate Lovett

    One small step towards SliverCrossAxisGroup.

  • Pierre-Louis — Provide default constraints for M3 bottom sheets
    #120065 merged on April 27, 2023 — Small: 5 comments over 2 months, 26 additions and 18 deletions in 3 files
    Reviewed by: Eilidh Southren, hangyu

    By default the width of M3 bottom sheets will now be constrained to 640dp max. We're not doing this for late 1980s VGA compatiblity.

  • chunhtai — Adds selected semantics flag to radio button for Apple devices
    #125499 merged on April 25, 2023 — Small: 2 comments over 3 hours, 100 additions and 0 deletions in 4 files
    Reviewed by: Jonah Williams

    A small a11y improvement for iOS.

  • Taha Tesser — Fix OutlinedButton, TextButton, and IconButton throw exception when passing only one cursor to styleFrom
    #125204 merged on April 24, 2023 — Small: 14 comments over 4 days, 73 additions and 29 deletions in 9 files
    Reviewed by: Hans Muller, Qun Cheng

    Nice fix for a cursor crash.

  • fzyzcjy — Allow users to provide route settings to showMenu
    #124935 merged on April 28, 2023 — Small: 8 comments over 1 week, 63 additions and 0 deletions in 2 files
    Reviewed by: Loïc Sharma, Greg Spencer

    Now you can specify the RouteSettings provided to the route that showMenu creates.

  • Renzo Olivares — Fix iOS touch drag behavior
    #125169 merged on April 24, 2023 — Small: 8 comments over 4 days, 114 additions and 2 deletions in 3 files
    Reviewed by: Justin McCandless

    Another text input tweak to match your iOS muscle memory.

    Before After Native
    fixed.mov
    Screen.Recording.2023-04-19.at.4.59.31.PM.mov
    native.mov
  • Taha Tesser — Add Sliders to macrobenchmarks
    #125296 merged on April 24, 2023 — Small: 1 comment over 3 days, 114 additions and 0 deletions in 6 files
    Reviewed by: Kate Lovett

    A benchmark to prevent slider performance regressions.

  • Tae Hyung Kim — Refactor "gen-l10n" command to use same code path when "l10n.yaml" is present or not present
    #125429 merged on April 26, 2023 — Medium: 8 comments over 2 days, 277 additions and 180 deletions in 7 files
    Reviewed by: Christopher Fujino

    Makes configuration of our localization tools a little less (potentially) confusing.

  • Tae Hyung Kim — Handle dollar signs properly when generating localizations
    #125514 merged on April 25, 2023 — Small: 7 comments over 1 hour, 48 additions and 5 deletions in 3 files
    Reviewed by: Hans Muller, Christopher Fujino

    Ensures that your translations can see dollar signs.

Notable Commits: 2023 April 14th - April 21st

  • Loïc Sharma — [Windows] Don't block raster thread until v-blank
    #41231 merged on April 21, 2023 — Small: 6 comments over 5 days, 214 additions and 25 deletions in 13 files
    Reviewed by: yaakovschectman

    Frees up raster thread time for the multi view future. In the sample that follows rasterizing the frame only really required one ms.

    Before

    The raster thread spends ~17ms per frame consistently:

    Pasted image 20230414180144

    After

    After this change, the raster thread spends less than 1ms per frame consistently:

    Pasted image 20230414180011

  • Mitchell Goodwin — Adaptive alert dialog
    #124336 merged on April 18, 2023 — Medium: 24 comments over 1 week, 391 additions and 1 deletion in 4 files
    Reviewed by: Qun Cheng, Viren Khatri

    With showAdaptiveDialog, AlertDialog.adaptive and a little bit of platform-specific tailoring, your dialogs will look native.

    iOS Android
  • Taha Tesser — Fix Chip highlight color isn't drawn on top of the background color
    #124673 merged on April 17, 2023 — Small: 3 comments over 5 days, 52 additions and 2 deletions in 2 files
    Reviewed by: Hans Muller

    Resolves 3 issues that have been simmering for a while.

    Before After
  • Mubarak Bakarman — Customize color and thickness of connected lines in Stepper.dart
    #122485 merged on April 17, 2023 — Small: 27 comments over 1 month, 117 additions and 11 deletions in 2 files
    Reviewed by: Daniël Roek, Dhruvin, Hans Muller

    A little additional visual customization for Stepper.

  • Justin McCandless — Red spell check selection on iOS
    #125162 merged on April 21, 2023 — Small: 12 comments over 1 day, 129 additions and 12 deletions in 6 files
    Reviewed by: Mitchell Goodwin, Camille Simon

    If it's wrong, it's red.

    Native iOS Flutter before Flutter now
    image Screenshot from 2023-04-19 14-52-13 Screenshot from 2023-04-19 15-07-46
  • Justin McCandless — iOS spell check cursor placement
    #124875 merged on April 18, 2023 — Small: 3 comments over 3 days, 122 additions and 5 deletions in 2 files
    Reviewed by: Camille Simon

    After replacing a mispelled word the cursor will appear at the end of the word's replacement.

    Before After
    cursor-pos-old cursor-pos
  • Justin McCandless — Limit the number of Material spell check suggestions to 3
    #124899 merged on April 18, 2023 — Small: 1 comment over 3 days, 147 additions and 55 deletions in 4 files
    Reviewed by: Camille Simon

    Three suggestions is enough on any platform.

    Before After
    Screenshot from 2023-04-14 16-24-08 Screenshot from 2023-04-14 15-44-40
  • Justin McCandless — Disableable ContextMenuButtonItems
    #124253 merged on April 19, 2023 — Small: 2 comments over 1 week, 129 additions and 16 deletions in 10 files
    Reviewed by: Camille Simon

    If there's no fix then the user can't tap.

    Native Flutter before Flutter after
    Screenshot 2023-04-05 at 9 26 16 AM Screenshot 2023-04-05 at 11 18 01 AM Screenshot 2023-04-05 at 11 17 36 AM
  • Justin McCandless — Show iOS menu on iOS for TextField by default
    #124895 merged on April 20, 2023 — Small: 5 comments over 5 days, 122 additions and 30 deletions in 5 files
    Reviewed by: Camille Simon

    Now we do the right thing by default, unless you override.

    Before After
    Screenshot from 2023-04-14 14-55-47 Screenshot 2023-04-20 at 11 15 36 AM
  • Qun Cheng — Search view shape should clip the view content
    #125161 merged on April 20, 2023 — Small: 1 comment over 7 hours, 2 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Corrects an actual corner case.

    Before After
  • Tirth — [InputDatePickerFormField] adds acceptEmptyDate to InputDatePickerFormField Widget
    #124143 merged on April 18, 2023 — Small: 8 comments over 1 week, 42 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller, Viren Khatri

    Don't force the user to say when.

    acceptEmptyDate is false acceptEmptyDate is true
    acceptemptydate_false acceptemptydate__true
  • Bruno Leroux — Make selectable text mouse cursor configurable
    #125133 merged on April 21, 2023 — Small: 5 comments over 2 days, 204 additions and 21 deletions in 9 files
    Reviewed by: Pierre-Louis

    Get the right cursor for a button within a SelectionArea.

    Before After
    Before.mov
    After.mov
  • hangyu — Fix a null crash in SelectableRegion Widget
    #124736 merged on April 17, 2023 — Small: 3 comments over 4 days, 33 additions and 2 deletions in 2 files
    Reviewed by: chunhtai

    Fixed a difficult to reproduce crash.

  • Kate Lovett — Add optional axis specifier to static scrollable methods
    #124894 merged on April 18, 2023 — Small: 14 comments over 3 days, 233 additions and 35 deletions in 2 files
    Reviewed by: Michael Goderbauer

    One step closer to fully supporting 2D scrolling.

  • 9oya — Implement CheckmarkableChipAttributes on ChoiceChip
    #124743 merged on April 20, 2023 — Small: 20 comments over 1 week, 42 additions and 1 deletion in 3 files
    Reviewed by: Hans Muller, Taha Tesser

    Adds showCheckmark and checkmarkColor to ChoiceChip.

  • xubaolinDropdownMenu.width should support updating at runtime
    #124847 merged on April 20, 2023 — Small: 1 comment over 6 days, 38 additions and 3 deletions in 2 files
    Reviewed by: Qun Cheng

    Dynamic changes to a dropdown menu's width are now OK.

  • Hans Muller — Updated the BottomNavigationBar API doc to link to NavigationBar
    #125240 merged on April 20, 2023 — Small: 3 comments over 3 hours, 16 additions and 0 deletions in 1 file
    Reviewed by: Qun Cheng

    Remind developers that NavigationBar is the BottomNavigationBar upgrade for M3.

  • Renzo Olivares — Toolbar should re-appear on drag end
    #125165 merged on April 20, 2023 — Small: 1 comment over 1 day, 18 additions and 0 deletions in 3 files
    Reviewed by: Justin McCandless

    A small improvement for double-tap-drag text input fans.

  • Viren Khatri — relayout active ListWheelScrollView children every performLayout
    #124476 merged on April 18, 2023 — Small: 7 comments over 1 week, 37 additions and 1 deletion in 2 files
    Reviewed by: Kate Lovett

    A nice one-line fix that keeps things where they belong.

  • xubaolin — fix DropdownMenu crash when resize window during menu showing
    #124855 merged on April 19, 2023 — Small: 4 comments over 5 days, 67 additions and 3 deletions in 3 files
    Reviewed by: Qun Cheng

    Fixed a crash that could occur when a menu's window was resized.

  • Renzo Olivares — Show magnifier on touch drag gestures
    #125151 merged on April 20, 2023 — Small: 2 comments over 11 hours, 253 additions and 35 deletions in 4 files
    Reviewed by: Justin McCandless

    Show the magnifier on touch drag gestures for Android and iOS and hide it when the drag ends.

    Screen.Recording.2023-04-19.at.5.14.25.PM.mov
  • Qun Cheng — Dismiss the docked search view when the window size is changed
    #125071 merged on April 19, 2023 — Small: 3 comments over 20 hours, 98 additions and 38 deletions in 2 files
    Reviewed by: Hans Muller

    Do the right thing when the window/screen changes while the search view is up.

    Desktop Mobile
    PR_desktop_demo.mov
    PR_mobile_demo.mov
  • Qun Cheng — Add an example for SearchBar
    #124992 merged on April 17, 2023 — Small: 5 comments over 3 hours, 132 additions and 3 deletions in 3 files
    Reviewed by: Hans Muller

    Shows how to put SearchAnchor and SearchBar together.

  • Chris Bobbe — BottomAppBar doc: Fix doc about surfaceTintColor
    #124563 merged on April 20, 2023 — Small: 1 comment over 1 week, 10 additions and 4 deletions in 1 file
    Reviewed by: Hans Muller

    Thanks for the careful read and the fix.

  • Loïc Sharma — [Windows] Shutdown the engine before destroying the surface
    #41012 merged on April 12, 2023 — Small: 5 comments over 3 days, 81 additions and 23 deletions in 4 files
    Reviewed by: Chris Bracken, yaakovschectman

    Eliminate the risk of drawing on window destruction.

Notable Commits: 2023 April 7th - April 14th

  • Taha Tesser — Refactor SliverAppBar.medium & SliverAppBar.large to fix several issues
    #122542 merged on April 13, 2023 — Large: 34 comments over 1 month, 921 additions and 428 deletions in 4 files
    Reviewed by: Kate Lovett

    Fixes SIX SliverAppBar issues. For the full complement of full resolution before and after screenshots, see the issue itself.

    Fix text cut off in SliverAppBar.medium

    Before After

    Fix title disappears with the bottom widget

    Before After
    Screenshot 2023-03-13 at 19 35 22 Screenshot 2023-03-13 at 19 34 49

    Fix title style and action theme customization (AppBarTheme) and tittle alignment

    Before After
    Screenshot 2023-03-13 at 19 33 11 Screenshot 2023-03-13 at 19 41 38

    Fix center title alignment

    Before After
    Screenshot 2023-03-13 at 19 42 57 Screenshot 2023-03-13 at 19 42 41

    Fix automaticallyImplyLeading

    Before After
    Screenshot 2023-03-13 at 19 31 31 Screenshot 2023-03-13 at 19 33 47
  • Bernardo Ferrari — Add StrokeCap to CircularProgressIndicator
    #122664 merged on April 12, 2023 — Small: 82 comments over 3 weeks, 94 additions and 8 deletions in 3 files
    Reviewed by: Bruno Leroux, Kate Lovett

    Now you may cap the ends of the circular progress indicator line as you like.

    image

  • Aditya Thakur — Fix ShaderMask Example issue
    #124511 merged on April 11, 2023 — Small: 7 comments over 1 day, 4 additions and 1 deletion in 1 file
    Reviewed by: Jonah Williams, Viren Khatri

    Now the example text is on fire.

    Example that makes the text look like it is on fire
  • Justin McCandless — iOS context menu shadow
    #122429 merged on April 14, 2023 — Small: 13 comments over 1 month, 87 additions and 14 deletions in 2 files
    Reviewed by: Greg Price, Bernardo Ferrari

    Shadowing native ever more closely.

    Flutter old Flutter new Native (physical iPad iOS 16.3.1)
    toolbar_old Screenshot 2023-04-12 at 4 12 38 PM toolbar_native
    IMG_0054 Screenshot 2023-04-12 at 4 12 30 PM IMG_0056
  • Jonah Williams — [cupertino] improve cupertino picker performance by using at most one opacity layer
    #124719 merged on April 15, 2023 — Small: 23 comments over 3 days, 91 additions and 44 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Nice performance improvment for ListWheelScrollView that's of great benefit to CupertinoPicker.

  • pdblasi-google — Adds dart_fix support to flutter_test
    #124347 merged on April 11, 2023 — Medium: 51 comments over 5 days, 486 additions and 4 deletions in 23 files
    Reviewed by: Michael Goderbauer, Kate Lovett

    First step towards expanding Flutter's deprecation policy to the flutter_test package.

  • xubaolin — DraggableScrollableSheet & NestedScrollView should respect NeverScrollableScrollPhysics
    #123109 merged on April 12, 2023 — Small: 15 comments over 3 weeks, 99 additions and 4 deletions in 5 files
    Reviewed by: Kate Lovett

    When you really don't want scrolling, we will not scroll.

  • Chris Bobbe — BottomAppBar: Fix doubled layers of color and shadow
    #123294 merged on April 11, 2023 — Small: 42 comments over 2 weeks, 95 additions and 36 deletions in 3 files
    Reviewed by: Justin McCandless, Greg Price

    Resolves three issues related to BottomAppBar and Material 3.

  • Tirth — [CupertinoListSection] adds new property separatorColor
    #124803 merged on April 14, 2023 — Small: 4 comments over 23 hours, 55 additions and 1 deletion in 2 files
    Reviewed by: Kate Lovett, Mitchell Goodwin

    Now your CupertinoListSection separators can be whatever color your like. For example:

    Color.fromARGB(255, 136, 13, 207) Color.fromARGB(255, 13, 62, 207) Color.fromARGB(255, 29, 207, 13)
    a b c
  • Mouad Debbar — [web] Add benchmarks for the Material3 Components screen
    #124354 merged on April 11, 2023 — Extra large: 1 comment over 4 days, 2346 additions and 0 deletions in 2 files
    Reviewed by: Yegor

    Web performance of Material 3 demo is now benchmarked and tracked.

  • chunhtai — ExpansionTile audit
    #124281 merged on April 10, 2023 — Extra large: 4 comments over 4 days, 2289 additions and 89 deletions in 85 files
    Reviewed by: Greg Spencer, Taha Tesser

    Improves ExpansionTile accessibility.

  • Tae Hyung Kim — Sliver Constrained Cross Axis
    #124337 merged on April 10, 2023 — Small: 34 comments over 4 days, 238 additions and 0 deletions in 5 files
    Reviewed by: Kate Lovett

    A new Sliver. More expected.

  • Callum Moffat — Reduce macOS overscroll friction
    #122142 merged on April 10, 2023 — Small: 7 comments over 1 month, 26 additions and 22 deletions in 3 files
    Reviewed by: Kate Lovett

    Overscrolls on macOS are now much closer to native. Use the full-screen button to check out how much better we line up with native:

    Before After
    Screen.Recording.2023-04-04.at.8.11.49.PM.mov
    Screen.Recording.2023-04-04.at.8.08.36.PM.mov
  • Gabriel Gava — Exposed EdgeDraggingAutoScroller velocityScalar to ReorderableList
    #124459 merged on April 12, 2023 — Small: 15 comments over 3 days, 202 additions and 3 deletions in 5 files
    Reviewed by: Kate Lovett, chunhtai

    Now you can control how fast a ReorderableList scrolls when you drag off the edge.

  • hangyu — Add optional labelText and semanticLabel to Checkbox
    #124555 merged on April 14, 2023 — Small: 2 comments over 3 days, 69 additions and 0 deletions in 4 files
    Reviewed by: Pierre-Louis

    More checkbox accessibility.

  • luckysmg — [Text Input] Only unfocus when receive connectionClosed on platform except web
    #123929 merged on April 10, 2023 — Small: 9 comments over 1 week, 56 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless

    Make sure Flutter text field's remain in sync when the mobile platform closes the keyboard.

Notable Commits: 2023 March 31st - April 7th

  • Renzo Olivares — TapAndDragGestureRecognizer should declare victory immediately when drag is detected
    #123055 merged on April 5, 2023 — Large: 48 comments over 2 weeks, 949 additions and 110 deletions in 5 files
    Reviewed by: Justin McCandless, chunhtai
    Thanks @xu-baolin for his work and investigation on fix a TapAndDragGestureRecognizer bug #122374 which some changes are incorporated into this PR.

    Better tap-and-drag gesture recognition benefits all platforms.

    Before fix

    macOS iOS Android
    Screen.Recording.2023-03-28.at.1.39.17.AM.mov
    Screen.Recording.2023-03-28.at.1.40.55.AM.mov
    Screen.Recording.2023-03-28.at.1.42.41.AM.mov

    After fix

    macOS iOS Android
    Screen.Recording.2023-03-28.at.1.23.07.AM.mov
    Screen.Recording.2023-03-28.at.1.27.11.AM.mov
    Screen.Recording.2023-03-28.at.1.29.24.AM.mov
  • chunhtai — Refactor reorderable list semantics
    #123263 merged on April 6, 2023 — Extra large: 29 comments over 2 weeks, 179 additions and 2400 deletions in 119 files
    Reviewed by: Michael Goderbauer, Kate Lovett

    Corrects a high priority accessiibility issue.

  • chunhtai — Fixes IgnorePointer and AbsorbPointer to only block user interactions…
    #120619 merged on April 7, 2023 — Large: 78 comments over 1 month, 850 additions and 186 deletions in 25 files
    Reviewed by: Michael Goderbauer

    This is a breaking change, please see the migration guide.

  • Tirth — [DropdownMenu] add helperText & errorText to DropdownMenu Widget
    #123775 merged on April 6, 2023 — Small: 25 comments over 1 week, 146 additions and 0 deletions in 2 files
    Reviewed by: Qun Cheng, Justin McCandless

    DropdownMenus can now set their text field's hint and error text properties.

    helperText Dropdown Closed errorText Dropdown Closed
    photo_2023-03-30_20-21-07 photo_2023-03-30_20-21-06
    helperText Dropdown Open errorText Dropdown Open
    photo_2023-03-30_20-21-04 photo_2023-03-30_20-21-02
  • Loune Lam — Remove mouse tap text drag selection throttling to improve responsiveness
    #123460 merged on April 6, 2023 — Small: 10 comments over 1 week, 0 additions and 14 deletions in 2 files
    Reviewed by: Greg Spencer, Renzo Olivares, Mouad Debbar

    Makes text selection with the mouse feel a little snappier and a little more native.

    text-select.mp4

    Live Demo: https://flutter-apps-ll-public.s3.us-west-2.amazonaws.com/text-selection/index-frame.html

  • Rydmike — FIX: SegmentedButton segments background cannot be made transparent
    #123293 merged on April 4, 2023 — Small: 18 comments over 1 week, 30 additions and 0 deletions in 2 files
    Reviewed by: Eilidh Southren, Taha Tesser

    A one-line change that ensures that the Material within a SegmentedButton is transparent.

    Before

    Light Dark
    Screenshot 2023-03-22 at 23 16 31 Screenshot 2023-03-22 at 23 16 45

    After

    Light Dark
    Screenshot 2023-03-22 at 23 17 25 Screenshot 2023-03-22 at 23 17 39
  • Taha Tesser — Fix clipBehavior for Drawer with shape and add clipBehavior property.
    #124104 merged on April 4, 2023 — Small: 3 comments over 15 hours, 117 additions and 3 deletions in 2 files
    Reviewed by: Hans Muller

    Now the Drawer is properly clipped to its shape (check the drawer's upper right hand corner).

    Before After
    Screenshot 2023-04-04 at 10 40 15 Screenshot 2023-04-04 at 10 45 08
  • Mitchell Goodwin — Add adaptive constructor to Radio and RadioListTile
    #123816 merged on April 4, 2023 — Small: 3 comments over 4 days, 208 additions and 17 deletions in 4 files
    Reviewed by: Qun Cheng

    Automatically native radio buttons for Android and iOS.

    Screenshot 2023-03-30 at 1 46 30 PM Screenshot 2023-03-30 at 1 46 15 PM
  • Taha Tesser — Fix some MaterialBanner properties aren't respected when presented by ScaffoldMessenger
    #124024 merged on April 3, 2023 — Small: 1 comment over 45 minutes, 42 additions and 62 deletions in 2 files
    Reviewed by: Hans Muller

    Now we respect surfaceTintColor, shadowColor, and dividerColor.

  • Tae Hyung Kim — Add Welsh to Material Flutter (and update some other translations)
    #123575 merged on April 4, 2023 — Extra large: 5 comments over 6 days, 3337 additions and 2228 deletions in 116 files
    Reviewed by: chunhtai, godofredoc

    Introducing support for the language of Wales and small updates to the translations for Flutter's other supported locales.

  • Camille Simon — Add spell check TextSpan creation logic that doesn't rely on composing region
    #123481 merged on April 5, 2023 — Medium: 57 comments over 1 week, 245 additions and 147 deletions in 2 files
    Reviewed by: Justin McCandless

    Don't spell check until the user is finished composing a word.

  • Greg Spencer — Rename Sample classes
    #124080 merged on April 4, 2023 — Extra large: 8 comments over 20 hours, 3125 additions and 3816 deletions in 480 files
    Reviewed by: Loïc Sharma

    Say goodbye to MyApp , _MyAppState, etc.

  • chunhtai — Adds i18n to widget layer
    #123620 merged on April 4, 2023 — Extra large: 10 comments over 1 week, 4171 additions and 66 deletions in 124 files
    Reviewed by: Tae Hyung Kim

    The widgets library now has its own localizations.

  • Albert Wolszon — Add decimalPatternDigits to gen-l10n valid NumberFormats
    #122682 merged on April 6, 2023 — Small: 3 comments over 3 weeks, 50 additions and 0 deletions in 2 files
    Reviewed by: Tae Hyung Kim

    Translations can now use the decimalDigitPattern added in intl 0.18.0.

  • Rexios — [flutter_test] Adds method to mock EventChannels
    #123726 merged on April 7, 2023 — Small: 39 comments over 1 week, 216 additions and 45 deletions in 5 files
    Reviewed by: Michael Goderbauer, pdblasi-google

    Addresses a lacuna first reported in 2019.

  • Henry Riehl — Add vertical alignment offset to the MenuAnchor widget when overflowing
    #123740 merged on April 6, 2023 — Small: 12 comments over 1 week, 105 additions and 1 deletion in 2 files
    Reviewed by: Taha Tesser, Justin McCandless, Greg Spencer

    Mind the new gap.

    simplescreenrecorder-2023-03-30_01.45.29.mp4
  • Bruno Leroux — Fix EditableText misplaces caret when selection is invalid
    #123777 merged on April 7, 2023 — Medium: 14 comments over 1 week, 183 additions and 121 deletions in 5 files
    Reviewed by: Justin McCandless

    Corrects this embarrassing failure mode:

    120631_Before.mp4
  • Loïc Sharma — Add CallbackShortcuts example
    #123944 merged on April 5, 2023 — Small: 13 comments over 4 days, 97 additions and 0 deletions in 3 files
    Reviewed by: Greg Spencer

    Equalize the sample energy for Shortcuts and CallbackShortcuts.

  • godofredoc — Do not use colors in output if running from CI.
    #122645 merged on April 4, 2023 — Small: 2 comments over 2 weeks, 4 additions and 1 deletion in 1 file
    Reviewed by: Christopher Fujino

    Less visual noise for those of us who see the world through a tty.

  • Gregory Conrad — Fix a memory leak in AutomaticKeepAlive
    #124163 merged on April 6, 2023 — Small: 18 comments over 1 day, 46 additions and 1 deletion in 2 files
    Reviewed by: Dan Field, Kate Lovett

    Plugs a memory leak!

  • Greg Price — Fix surface-size state leak in material/paginated_data_table_test (framework shuffle-all 3/n)
    #123842 merged on April 6, 2023 — Small: 8 comments over 6 days, 13 additions and 7 deletions in 2 files
    Reviewed by: pdblasi-google

    Another set of fixes for tests that couldn't be shuffled due to leaks of state.

  • Qun Cheng — Fix search view position
    #124169 merged on April 5, 2023 — Small: 9 comments over 23 hours, 203 additions and 16 deletions in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    Ensure that the SearchAnchor's search view respects the edges of its window.

    Screen.Recording.2023-04-04.at.4.22.56.PM.mov
  • Greg Price — Make tester.startGesture less async, for better stack traces
    #123946 merged on April 6, 2023 — Small: 3 comments over 4 days, 44 additions and 11 deletions in 2 files
    Reviewed by: chunhtai

    A surgicial change to WidgetController that will simplify debugging test failures that begin with WidgetTester.startGesture.

  • Greg Spencer — Initialize ThemeData.visualDensity using ThemeData.platform instead of defaultTargetPlatform
    #124357 merged on April 7, 2023 — Small: 6 comments over 3 hours, 53 additions and 6 deletions in 2 files
    Reviewed by: Calvin Goodman, Hans Muller

    A small change that affects apps which specify ThemeData.platform.

  • Chris Bracken — [macOS] Remigrate principal class to NSApplication
    #124173 merged on April 5, 2023 — Small: 1 comment over 15 hours, 40 additions and 40 deletions in 17 files
    Reviewed by: Greg Spencer

  • Michael Goderbauer — Fix error about missing MediaQuery
    #124243 merged on April 6, 2023 — Small: 2 comments over 11 hours, 12 additions and 16 deletions in 3 files
    Reviewed by: Hans Muller

    Fixed a misleading warning. MediaQuery now comes from the app's View.

  • Chris Bracken — [macOS] Handle termination in FlutterAppDelegate
    #40929 merged on April 5, 2023 — Small: 4 comments over 5 hours, 29 additions and 131 deletions in 7 files
    Reviewed by: Greg Spencer

    Graceful exits for macOS applications.

  • yaakovschectman — Re-introduce WM_CLOSE listener, new quit protocol posts a second message to next handler
    #40802 merged on April 3, 2023 — Large: 33 comments over 3 days, 666 additions and 38 deletions in 12 files
    Reviewed by: Loïc Sharma, Chris Bracken, Greg Spencer

    Graceful exits for Windows applications.

Notable Commits: 2023 March 24th - March 31st

  • nt4f04uNd — Fix ListWheelScrollView gestures and paint coordinates in tests
    #121342 merged on March 30, 2023 — Small: 13 comments over 1 month, 181 additions and 25 deletions in 4 files
    Reviewed by: Kate Lovett

    Nice improvements to the tests and test infrastructure. Resolves 2 issues, including one that's 4 years old.

  • Renzo Olivares — Add TextField triple tap/click gestures
    #119046 merged on March 27, 2023 — Extra large: 110 comments over 2 months, 2713 additions and 21 deletions in 4 files
    Reviewed by: Justin McCandless, Tomasz Gucio

    We now support gestures like triple-click-drag to update the selection a paragraph at a time. Part of our continued effort to respect users' muscle memory.

  • Qun Cheng — Create SearchAnchor and SearchViewTheme Widget
    #123256 merged on March 28, 2023 — Extra large: 51 comments over 5 days, 2535 additions and 51 deletions in 14 files
    Reviewed by: Hans Muller

    Along with SearchBar, these new components resolve a 5 year old feature request submitted by yours truly.

    Screenshot 2023-03-23 at 10 26 01 AM   Screenshot 2023-03-23 at 10 26 35 AM

  • Mitchell Goodwin — Create CupertinoRadio Widget
    #123296 merged on March 30, 2023 — Large: 24 comments over 1 week, 872 additions and 0 deletions in 7 files
    Reviewed by: Greg Spencer

    When your radio buttons need to look native on iOS.

    Screen.Recording.2023-03-22.at.3.49.57.PM.mov
  • Greg Price — Fix out-of-bounds and reversed TextBox queries in computing caret metrics
    #122480 merged on March 28, 2023 — Small: 28 comments over 2 weeks, 235 additions and 9 deletions in 3 files
    Reviewed by: Justin McCandless, LongCatIsLooong, Tomasz Gucio

    A nice contribution in a difficult area that resolves 4 issues.

  • ivirtex — Update CupertinoPageRoute transition animation curves
    #122275 merged on March 30, 2023 — Medium: 18 comments over 3 weeks, 172 additions and 156 deletions in 8 files
    Reviewed by: Justin McCandless, Mitchell Goodwin

    Not only a nice native fidelity improvement; the videos that illustrate the change are beautfiful.

    Before After
    RPReplay_Final1678315602.mov
    RPReplay_Final1678221817.mov
  • Taha Tesser — Fix divider width in scrollable TabBar for Material 3 and add dividerHeight parameter
    #123127 merged on March 27, 2023 — Small: 9 comments over 6 days, 171 additions and 74 deletions in 6 files
    Reviewed by: Kate Lovett

    2 images...Group 11Group 10

    If the TabBar is full-width, then the divider below it should be too.

    Before After
  • Ayush Bherwani — [Stepper] adds stepIconBuilder property
    #122816 merged on March 29, 2023 — Small: 14 comments over 1 week, 60 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Stepper iconography is now customizable.

  • Qun Cheng — Fix bottom app bar height and end-contained fab location
    #123746 merged on March 30, 2023 — Small: 1 comment over 16 hours, 56 additions and 13 deletions in 3 files
    Reviewed by: Hans Muller

    On the bottom of some phones the BottomAppBar and the FAB didn't quite fit.

    Before After
  • Renzo Olivares — Match iOS Longpress behavior with native
    #123630 merged on March 29, 2023 — Medium: 1 comment over 1 day, 327 additions and 15 deletions in 5 files
    Reviewed by: Justin McCandless

    Long press now selects word-by-word when the long press starts on an unfocused iOS TextField.

    RPReplay-Final1680030321.MP4
  • Chinmoy — Added backgroundColor and disabledBackgroundColor to SnackBarAction.
    #118786 merged on March 27, 2023 — Medium: 7 comments over 2 months, 441 additions and 13 deletions in 4 files
    Reviewed by: Hans Muller, Eilidh Southren

    Snackbars that look the way you want.

  • Taha Tesser — Fix scrolling in the Drawer and NavigationDrawer triggers AppBar's scrolledUnderElevation
    #122600 merged on March 29, 2023 — Small: 11 comments over 2 weeks, 100 additions and 1 deletion in 4 files
    Reviewed by: Hans Muller, Kate Lovett

    If the Scaffold's drawer scrolls the AppBar's elevation shouldn't change as if the body of the app scrolled underneath.

  • Henry Riehl — Wire up MenuAnchor clipBehaviour property
    #123632 merged on March 30, 2023 — Small: 18 comments over 1 day, 67 additions and 6 deletions in 2 files
    Reviewed by: Greg Spencer, Taha Tesser

    Fixed a little bit of our clipping plumbing.

  • Henry Riehl — Add alignmentOffset when menu is positioned on the opposite side
    #122812 merged on March 28, 2023 — Small: 4 comments over 1 week, 156 additions and 2 deletions in 2 files
    Reviewed by: Justin McCandless, Greg Spencer

    Before After
    simplescreenrecorder-2023-03-16_16.34.32.mp4
    simplescreenrecorder-2023-03-16_16.33.18.mp4
  • Kate Lovett — Fix SliverGridRegularTileLayout.computeMaxScrollOffset for 0 children
    #123348 merged on March 29, 2023 — Small: 5 comments over 5 days, 54 additions and 0 deletions in 2 files
    Reviewed by: Michael Goderbauer, Tae Hyung Kim

    Small fix for a crash.

  • hangyu — Use SemanticsService.announce to announce form text validation error
    #123373 merged on March 29, 2023 — Small: 12 comments over 5 days, 77 additions and 20 deletions in 4 files
    Reviewed by: chunhtai

    hangyu — [macOS]Support SemanticsService.announce
    #40585 merged on March 30, 2023 — Small: 11 comments over 6 days, 76 additions and 0 deletions in 3 files
    Reviewed by: Chris Bracken, Loïc Sharma, chunhtai

    VoiceOver now announces form validation errors.

  • Michael Goderbauer — Fix Align doc
    #123566 merged on March 28, 2023 — Small: 1 comment over 6 hours, 19 additions and 14 deletions in 1 file
    Reviewed by: Kate Lovett

    Hopefully the Align widget is just a little easier to understand now.

  • Greg Price — Fix state leak in rendering/editable_test (framework shuffle-all 2/n)
    #123806 merged on March 31, 2023 — Small: 2 comments over 4 hours, 22 additions and 24 deletions in 1 file
    Reviewed by: Greg Spencer, LongCatIsLooong

    Greg Price — Remove no-shuffle from framework tests, part 1: easy cases
    #123751 merged on March 30, 2023 — Small: 4 comments over 12 hours, 12 additions and 50 deletions in 7 files
    Reviewed by: Michael Goderbauer, Greg Spencer

    Restores test shuffling as part of #85160.

  • Bruno Leroux — Fix Animations in NavigationDestination icons don't work
    #123400 merged on March 27, 2023 — Small: 1 comment over 3 days, 85 additions and 41 deletions in 2 files
    Reviewed by: Hans Muller

    NavigationBar icons now animate correctly.

  • Bruno Leroux — Make InkInteractiveFeature customBorder updatable
    #123536 merged on March 27, 2023 — Small: 2 comments over 6 hours, 133 additions and 24 deletions in 6 files
    Reviewed by: Hans Muller

    When a component like a button sets its customBorder, ensure that the ink splash gets the message.

    Before After
    Enregistrement.de.l.ecran.2023-03-27.a.16.16.44.mov
    Enregistrement.de.l.ecran.2023-03-27.a.17.20.06.mov
  • Taha Tesser — Fix TableRow with no children throws unnamed assertion
    #123770 merged on March 30, 2023 — Small: 3 comments over 9 hours, 52 additions and 0 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Childless rows now produce a more helpful error message.

  • Loïc Sharma — [Shortcuts] Improve documentation
    #123499 merged on March 28, 2023 — Small: 8 comments over 1 day, 42 additions and 32 deletions in 2 files
    Reviewed by: Greg Spencer

    Spreads the word about CallbackShortcuts because that's often what you want.

  • Justin McCandless — TextFormField.spellCheckConfiguration
    #123295 merged on March 29, 2023 — Small: 2 comments over 1 week, 33 additions and 1 deletion in 2 files
    Reviewed by: Camille Simon

  • Michael Goderbauer — Make Element tree root generic
    #123352 merged on March 27, 2023 — Small: 8 comments over 4 days, 95 additions and 55 deletions in 19 files
    Reviewed by: Greg Spencer

    Another small step towards support for multiple views.

  • Loïc Sharma — [Focus] Add run key command to dump the focus tree
    #123473 merged on March 28, 2023 — Small: 3 comments over 2 days, 160 additions and 2 deletions in 13 files
    Reviewed by: Zachary Anderson, Greg Spencer

    Now you can see the focus tree. Just press f.

    dump_focus_tree

  • Loïc Sharma — [Windows] Add version info migration
    #123414 merged on March 29, 2023 — Medium: 23 comments over 5 days, 485 additions and 0 deletions in 4 files
    Reviewed by: Christopher Fujino, Chris Bracken, yaakovschectman

    Makes it easier to set the version information on Windows apps.

  • Loïc Sharma — [macOS] Use the new update semantics embedder API
    #40584 merged on March 28, 2023 — Small: 7 comments over 4 days, 26 additions and 24 deletions in 4 files
    Reviewed by: Chris Bracken, chunhtai

    Part of stablizing the embedder's API:
    [Embedder API] Fix ABI stability of the update semantics API #121176

  • yaakovschectman — Listen to WM_CLOSE message on Windows to allow framework to cancel exit
    #40493 merged on March 24, 2023 — Medium: 65 comments over 2 days, 427 additions and 29 deletions in 12 files
    Reviewed by: Chris Bracken, Loïc Sharma, Greg Spencer

    Enable graceful exits for Windows applications.

Notable Commits: 2023 March 17th - March 24th

  • Bernardo Ferrari — Add Non-Uniform Border to Border.
    #121921 merged on March 24, 2023 — Medium: 28 comments over 2 weeks, 245 additions and 56 deletions in 3 files
    Reviewed by: Greg Spencer, Kate Lovett

    Now it's possible to create borders that look just like the ones you can create in Figma.

    image
  • Benjamin Quinn — Expose toggle to textfield's opacity animation.
    #122474 merged on March 23, 2023 — Small: 15 comments over 1 week, 74 additions and 7 deletions in 5 files
    Reviewed by: Justin McCandless, Viren Khatri

    Adds a cursorOpacityAnimates flag so you can specify if your textfield cursors should blink or fade in and out.

  • Hans Muller — Added ExpansionTileController
    #123298 merged on March 24, 2023 — Medium: 24 comments over 1 day, 434 additions and 15 deletions in 4 files
    Reviewed by: Kate Lovett

    Now you can programatically expand and collapse an ExpansionTile.

  • Pierre-Louis — Add support for secondary tab bar
    #122756 merged on March 23, 2023 — Large: 15 comments over 1 week, 801 additions and 130 deletions in 10 files
    Reviewed by: Kate Lovett

    Split level tab bars have arrived.

    image
  • Mitchell Goodwin — Create cupertino checkbox
    #122244 merged on March 21, 2023 — Large: 44 comments over 1 week, 1058 additions and 0 deletions in 4 files
    Reviewed by: Bernardo Ferrari, Greg Spencer

    Check and uncheck like a Cupertino native.

    Screen.Recording.2023-03-08.at.3.06.53.PM.mov
  • Michael Goderbauer — Bump lower Dart SDK constraints to 3.0 & add class modifiers
    #122546 merged on March 21, 2023 — Small: 23 comments over 1 week, 145 additions and 130 deletions in 103 files
    Reviewed by: Greg Spencer, Kate Lovett, Christopher Fujino, LongCatIsLooong

    This is it: Dart 3.0 has arrived.

  • Taha Tesser — Fix TimePicker input mode width for 12-hour format
    #122868 merged on March 20, 2023 — Small: 3 comments over 3 days, 164 additions and 3 deletions in 2 files
    Reviewed by: Greg Spencer

    Corrects a small layout problem between the hours and the minutes.

    Before After
  • pdblasi-google — Deprecates TestWindow
    #122824 merged on March 21, 2023 — Medium: 30 comments over 4 days, 458 additions and 34 deletions in 2 files
    Reviewed by: Loïc Sharma, Michael Goderbauer

    Michael Goderbauer — Deprecate BindingBase.window
    #120998 merged on March 21, 2023 — Small: 6 comments over 1 month, 46 additions and 32 deletions in 4 files
    Reviewed by: Loïc Sharma

    More progress towards a world with multiple views and windows.

  • Ian Hickson — Documentation improvements
    #122787 merged on March 22, 2023 — Large: 50 comments over 6 days, 730 additions and 211 deletions in 30 files
    Reviewed by: Dan Field, Navaron Bracke, Greg Price

    Resolved ten documentation issues, including one fossil from April 2016.

  • Chris Bracken — [macOS] Add platform_channel sample/test
    #123141 merged on March 23, 2023 — Large: 23 comments over 2 days, 1477 additions and 0 deletions in 24 files
    Reviewed by: stuartmorgan, Jenn Magder, Loïc Sharma, yaakovschectman

    If you're interested in writing a MacOS platform channel for Flutter, now there's an example.

  • Rydmike — FIX: NavigationDrawer hover/focus/pressed do not use indicatorShape
    #123325 merged on March 23, 2023 — Small: 5 comments over 6 hours, 12 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    If you specify the navigation drawer indicator's shape, now the shape of the indicator's highlight overlay matches.

    Before After
    Screenshot 2023-03-23 at 12 03 19 Screenshot 2023-03-23 at 12 23 38
  • Kate Lovett — Remove indicator from scrolling tab bars
    #123057 merged on March 21, 2023 — Small: 3 comments over 1 day, 18 additions and 7 deletions in 2 files
    Reviewed by: Taha Tesser

    Prevents the Android overscroll "glow" from showing up in scrollable tab bars.

  • Taha Tesser — Add customizable mouse cursor to DataTable
    #123128 merged on March 24, 2023 — Medium: 11 comments over 2 days, 329 additions and 17 deletions in 4 files
    Reviewed by: Hans Muller

    Any cursor you want.

    Screen.Recording.2023-03-22.at.16.16.59.mov
  • Kate Lovett — Clean up scrolling delegate code for 2D
    #122651 merged on March 23, 2023 — Extra large: 12 comments over 1 week, 873 additions and 880 deletions in 9 files
    Reviewed by: Michael Goderbauer, chunhtai

    Another step towards 2D scrolling.

  • Michael Goderbauer — Remove 1745 decorative breaks
    #123259 merged on March 22, 2023 — Extra large: 3 comments over 2 hours, 2 additions and 1749 deletions in 291 files
    Reviewed by: Tong Mu, Chris Bracken

    In Dart 3, switch statement break statements are no longer needed. Ours are now gone. All 1745 of them. dart fix --apply FTW!

  • Ian Hickson — Add documentation saying that people can add themselves to the AUTHORS file
    #123061 merged on March 22, 2023 — Small: 2 comments over 1 day, 6 additions and 0 deletions in 1 file
    Reviewed by: stuartmorgan

    "Anyone who has contributed to the Flutter project in any way" can be an AUTHOR.

  • Kate Lovett — Fix error message for unbounded viewports
    #123035 merged on March 20, 2023 — Small: 2 comments over 3 hours, 198 additions and 71 deletions in 4 files
    Reviewed by: Michael Goderbauer

    Unbounded viewports now fail with a much more helpful error message.

  • Greg Price — Give PolynomialFit more docs, and a debug toString
    #122333 merged on March 20, 2023 — Small: 2 comments over 1 week, 23 additions and 1 deletion in 2 files
    Reviewed by: Greg Spencer

    A little help in deciphering the PolynomialFit coeffecients and confidence parameters.

  • Callum Moffat — Send PointerSignalKind.scale events from web
    #36348 merged on March 20, 2023 — Small: 25 comments over 5 months, 189 additions and 45 deletions in 5 files
    Reviewed by: Justin McCandless, Mouad Debbar

    Control-mouse-wheel now means "scale" not scroll.

  • yaakovschectman — Add Windows exit requests and responses
    #40400 merged on March 21, 2023 — Small: 8 comments over 3 days, 158 additions and 1 deletion in 3 files
    Reviewed by: stuartmorgan, Greg Spencer

    yaakovschectman — Listen to WM_CLOSE message on Windows to allow framework to cancel exit
    #40493 merged on March 24, 2023 — Medium: 65 comments over 2 days, 427 additions and 29 deletions in 12 files
    Reviewed by: Chris Bracken, Loïc Sharma, Greg Spencer

    Graceful application exits are now supported on MacOS, Windows, and Linux.

  • Loïc Sharma — [Embedder API] Introduce new update semantics callback
    #39807 merged on March 22, 2023 — Large: 34 comments over 3 weeks, 691 additions and 48 deletions in 8 files
    Reviewed by: Chris Bracken, chunhtai, yaakovschectman

    New update semantics embedder API!

  • Loïc Sharma — [Clipboard] Assert at least one clipboard data variant is provided
    #122446 merged on March 24, 2023 — Small: 18 comments over 1 week, 60 additions and 3 deletions in 2 files
    Reviewed by: Bernardo Ferrari, Chris Bracken, Michael Goderbauer, Greg Spencer, yaakovschectman

    Now you can count on Clipboard.text always being there when you need it.

  • Nazareno Cavazzon — Return value when pop
    #3368 merged on March 23, 2023 — Small: 53 comments over 2 weeks, 117 additions and 31 deletions in 12 files
    Reviewed by: HBS, chunhtai, hangyu

    Now go_router push will return the value produced by pop.

  • Valentin Vignal — [go_router] When replace is called, reuse the same key when possible
    #2846 merged on March 21, 2023 — Medium: 66 comments over 3 months, 392 additions and 20 deletions in 7 files
    Reviewed by: chunhtai, hangyu

    Conservation of keys.

Notable Commits: 2023 March 10th - March 17th

  • Qun Cheng — Create SearchBar and SearchBarTheme
    #122309 merged on March 16, 2023 — Extra large: 48 comments over 1 week, 1811 additions and 0 deletions in 10 files
    Reviewed by: Hans Muller, Pierre-Louis

    Light Theme Dark Theme
  • Christopher Fujino — [flutter_tools] Remove sound null safety flag
    #120936 merged on March 17, 2023 — Large: 17 comments over 4 weeks, 130 additions and 1126 deletions in 67 files
    Reviewed by: Nicholas Shahan, Zachary Anderson

    Null safety is the rule and there's no more going back.

  • Bruno Leroux — Fix MenuAnchor closes on internal scroll
    #122696 merged on March 15, 2023 — Small: 2 comments over 6 hours, 76 additions and 4 deletions in 2 files
    Reviewed by: Greg Spencer

    Menus do close when the scrollable they're within scrolls. But not when the menu itself scrolls. Not anymore.

  • Bruno Leroux — Fix cursor disappear on undo.
    #122402 merged on March 16, 2023 — Small: 8 comments over 5 days, 68 additions and 14 deletions in 3 files
    Reviewed by: Justin McCandless

    Nice fix in the text selection code.

  • Renzo Olivares — TextField should support disabled input text style
    #119216 merged on March 17, 2023 — Small: 17 comments over 1 month, 90 additions and 7 deletions in 3 files
    Reviewed by: Justin McCandless

    If text hasn't been entered yet, a disabled textifield's initial text will now be disabled.

  • Chinmoy — Exposes onSecondaryTap in InkWell.
    #119058 merged on March 16, 2023 — Small: 22 comments over 1 month, 116 additions and 2 deletions in 2 files
    Reviewed by: Justin McCandless, Renzo Olivares, Kate Lovett

    On desktops a "secondary tap" is the right mouse button. On mobile it's the long press.

  • acumen — Fix bug with clicking Copy or Select All within contextMenu
    #120081 merged on March 16, 2023 — Small: 43 comments over 1 month, 143 additions and 3 deletions in 2 files
    Reviewed by: Justin McCandless, chunhtai

    Improves native fidelity for the context menu on Android and IOS.

  • Greg Spencer — Add support for application exit requests
    #121378 merged on March 17, 2023 — Medium: 61 comments over 3 weeks, 313 additions and 25 deletions in 20 files
    Reviewed by: Robert Ancell, Michael Goderbauer

    Now if your app is asked to exit, you can check to see if it's safe to exit.

  • Greg Spencer — Add macos project auto migration code for FlutterApplication
    #122336 merged on March 16, 2023 — Medium: 2 comments over 6 days, 285 additions and 29 deletions in 20 files
    Reviewed by: Chris Bracken

    Will automatically upgrade most MacOS projects.

  • Kate Lovett — Update ScrollableDetails for 2D scrolling
    #122555 merged on March 14, 2023 — Medium: 19 comments over 22 hours, 446 additions and 27 deletions in 16 files
    Reviewed by: Michael Goderbauer

    More progress towards another dimension in scrolling.

  • Greg Spencer — Refine the directional traversal algorithm for out of band widgets
    #122556 merged on March 14, 2023 — Small: 6 comments over 2 hours, 254 additions and 18 deletions in 2 files
    Reviewed by: Yegor, Chris Bracken, Loïc Sharma

    Focus traversal order is now feels a little more natural in cases where there isn't an obvious "next widget".

    Before After
    before.mp4
    after.mp4
  • LongCatIsLooong — Fix Caret Height On Empty Lines
    #120834 merged on March 13, 2023 — Medium: 18 comments over 3 weeks, 297 additions and 115 deletions in 8 files
    Reviewed by: Justin McCandless, Renzo Olivares

    Fixes unsightly caret height problems like this:

  • Tim Sneath — Disable formatting on save for Dart and HTML files
    #122048 merged on March 14, 2023 — Small: 7 comments over 1 week, 13 additions and 1 deletion in 2 files
    Reviewed by: Danny Tuppeny

    Do Google directors find time to fix rough edges in VSCode that have annoyed Flutter developers for a long time? Yes they do.

  • pdblasi-google, Michael Goderbauer — Updates flutter/test/material to no longer use TestWindow
    #122337 merged on March 14, 2023 — Medium: 5 comments over 4 days, 183 additions and 234 deletions in 13 files
    #122354 merged on March 14, 2023 — Small: 1 comment over 4 days, 92 additions and 132 deletions in 9 files
    #122358 merged on March 14, 2023 — Small: 1 comment over 4 days, 8 additions and 8 deletions in 1 file
    #122644 merged on March 15, 2023 — Small: 1 comment over 2 hours, 52 additions and 46 deletions in 19 files
    Reviewed by: Michael Goderbauer, pdblasi-google

    More test migrations as we head towards Multiple Views.

  • Bruno Leroux — Fix TabBarView and TabBar animations are not synchronized
    #122021 merged on March 15, 2023 — Small: 1 comment over 1 week, 127 additions and 50 deletions in 2 files
    Reviewed by: Hans Muller

    Tabbing back and forth has never looked so good.

  • Taha Tesser — Cleanup M3 token templates for theme lookups
    #122601 merged on March 14, 2023 — Small: 3 comments over 4 hours, 172 additions and 111 deletions in 24 files
    Reviewed by: Pierre-Louis

    Good housekeeping for the M3 default theme code generation templates.

  • Qun Cheng, Pierre-Louis — Run dart command to update widget defaults
    #122557 merged on March 15, 2023 — Small: 2 comments over 1 day, 10 additions and 8 deletions in 6 files
    #122388 merged on March 13, 2023 — Medium: 6 comments over 3 days, 153 additions and 156 deletions in 102 files
    Reviewed by: Pierre-Louis, Qun Cheng

    Syncing up with the M3 defaults database.

  • Loïc Sharma — [Windows] Fix crash if clipboard is set to null
    #40238 merged on March 16, 2023 — Small: 0 comments over 5 days, 19 additions and 0 deletions in 2 files
    Reviewed by: Chris Bracken, yaakovschectman

    You shouldn't set the clipboard to null. Buf if you do (you really shouldn't) your app will not crash. On Windows.

Notable Commits: 2023 March 3rd - March 10th

This is a little late due to vacations and the usual distractions. There are about 19 entries from the fluter/flutter and flutter/engine repos. Thanks as always to Loïc Sharma who created the tech that assembles this list.

  • Hasnen Tai — Feat : TextField cursor color matching M2 and M3 Spec in error state
    #119225 merged on March 9, 2023 — Small: 42 comments over 1 month, 31 additions and 5 deletions in 2 files
    Reviewed by: Greg Price, Justin McCandless

    Before After
  • Jami Couch — Add support for iOS UndoManager
    #98294 merged on March 8, 2023 — Extra large: 93 comments over 12 months, 1429 additions and 347 deletions in 14 files
    Reviewed by: chunhtai, Justin McCandless

    Enable 3-finger/shake gestures to undo/redo text editing and enable undo/redo from the iPad keyboard.

  • Mitchell Goodwin — Constrain date picker to max width to avoid bending outwards
    #120827 merged on March 10, 2023 — Small: 6 comments over 3 weeks, 69 additions and 3 deletions in 2 files
    Reviewed by: LongCatIsLooong

    Before After
  • Michael Goderbauer — Introduce the PipelineOwner tree
    #122231 merged on March 10, 2023 — Large: 18 comments over 1 day, 1341 additions and 34 deletions in 6 files
    Reviewed by: Greg Spencer

    Another framework step towards Multi-View rendering.

  • LongCatIsLooong — Update test font
    #121306 merged on March 6, 2023 — Large: 4 comments over 1 week, 290 additions and 350 deletions in 23 files
    #40188 merged on March 10, 2023 — Small: 4 comments over 23 hours, 30 additions and 20 deletions in 6 files
    Reviewed by: Justin McCandless, Mouad Debbar, Jason Simmons

    Paves the way for an Ahem replacement that has has accurate metrics. Look mom, no rounding (coming soon). See also: Flutter Test Fonts and this warning about breaking changes.

  • Bruno Leroux — SystemUiOverlayStyle, add two examples and improve documentation
    #122187 merged on March 8, 2023 — Small: 10 comments over 5 hours, 187 additions and 33 deletions in 6 files
    Reviewed by: Kate Lovett

    SystemUiOverlayStyle has always been a little mysterious. Hopefully this will help.

  • Michael Goderbauer — Enable invalid_case_patterns lint
    #122318 merged on March 9, 2023 — Small: 1 comment over 1 hour, 1 addition and 0 deletions in 1 file
    Reviewed by: Kate Lovett

    Puts a stop to invalid switch statement case patterns.

  • Josh Matthews — Fix PlatformMenuItems with onSelectedIntent are never enabled
    #121885 merged on March 7, 2023 — Small: 21 comments over 3 days, 171 additions and 123 deletions in 2 files
    Reviewed by: Chris Bracken, Justin McCandless, Loïc Sharma

    Nice fix for a problem on MacOS.

  • pdblasi-google — Removes single window assumptions from flutter_test
    #121549 merged on March 6, 2023 — Extra large: 113 comments over 6 days, 2267 additions and 1308 deletions in 16 files
    #122347 merged on March 10, 2023 — Small: 3 comments over 1 hour, 21 additions and 48 deletions in 3 files
    #122325 merged on March 9, 2023 — Small: 4 comments over 2 hours, 20 additions and 28 deletions in 4 files
    #122321 merged on March 9, 2023 — Small: 1 comment over 2 hours, 9 additions and 14 deletions in 2 files
    #122327 merged on March 9, 2023 — Small: 1 comment over 1 hour, 5 additions and 4 deletions in 1 file
    Reviewed by: Michael Goderbauer

    Mass migration of tests away from the single window assumption.

  • Michael Goderbauer — Remove references to BindingBase.window
    #122119 merged on March 9, 2023 — Medium: 14 comments over 2 days, 264 additions and 96 deletions in 13 files
    #122352 merged on March 10, 2023 — Small: 6 comments over 1 hour, 26 additions and 15 deletions in 3 files
    #122341 merged on March 10, 2023 — Small: 2 comments over 1 hour, 2 additions and 2 deletions in 1 file
    #122019 merged on March 6, 2023 — Small: 2 comments over 7 hours, 288 additions and 8 deletions in 5 files
    #40160 merged on March 9, 2023 — Small: 2 comments over 17 hours, 16 additions and 19 deletions in 9 files
    #40156 merged on March 9, 2023 — Large: 7 comments over 47 minutes, 236 additions and 276 deletions in 16 files
    Reviewed by: Jonah Williams, pdblasi-google, Loïc Sharma

    More migration of tests and test infrastructure away from the single window assumption.

  • Taha Tesser — Fix license page title color issues
    #121872 merged on March 6, 2023 — Small: 8 comments over 3 days, 167 additions and 45 deletions in 2 files
    Reviewed by: Hans Muller

    An improvement for those developers and users who read the license pages.

    Before After
  • xubaolin — Fix a scrolling stutter caused by dragging scrollbar
    #121786 merged on March 9, 2023 — Small: 7 comments over 6 days, 85 additions and 9 deletions in 2 files
    Reviewed by: Hans Muller, Kate Lovett

    Stops the stuttering when the size of items scrolling in and out of view change significantly.

  • Callum Moffat — No friction factor on macOS overscroll ease
    #122143 merged on March 8, 2023 — Small: 2 comments over 22 hours, 44 additions and 19 deletions in 3 files
    Reviewed by: Rohit, Kate Lovett

    Another win for users' muscle memory on macOS.

  • Callum Moffat — Clear _scribbleCacheKey when connection closes
    #122145 merged on March 8, 2023 — Small: 1 comment over 20 hours, 82 additions and 0 deletions in 2 files
    Reviewed by: LongCatIsLooong

    Improves text selection state preservation across changes in focus.

  • Callum Moffat — SelectionChangedCause for iOS keyboard-select
    #122144 merged on March 10, 2023 — Small: 0 comments over 2 days, 42 additions and 5 deletions in 3 files
    Reviewed by: LongCatIsLooong

    Now we're a little more native for iOS keyboard users.

  • Chris Bobbe — ModalBottomSheetRoute: Remove gap at screen bottom with useSafeArea: true
    #122118 merged on March 8, 2023 — Small: 6 comments over 1 day, 27 additions and 13 deletions in 2 files
    Reviewed by: Greg Price, hangyu

    Removes some bottom sheet gaps that were particularly unsightly on mobile in landscape mode.

  • Bernardo Ferrari — Fix allowedButtonsFilter not working as intended when null.
    #122227 merged on March 8, 2023 — Small: 1 comment over 3 hours, 29 additions and 7 deletions in 5 files
    Reviewed by: Renzo Olivares

    Nice fix for a problem with some gesture recognizers.

  • J-P Nurmi — Add missing properties to ListTileTheme.merge
    #121975 merged on March 6, 2023 — Small: 7 comments over 1 day, 92 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    Someday we'll be able to define boilerplate classes like themes using a meta programming facility. Till then we sometimes make mistakes. Thanks for catching this one!

  • Jonah Williams — [engine] move asset mapping copy to background thread
    #39918 merged on March 8, 2023 — Small: 16 comments over 1 week, 145 additions and 16 deletions in 6 files
    Reviewed by: Dan Field

    Reduces the jank that can be caused by lazy asset loading.

Notable Commits: 2023 February 24th - March 3rd

  • LongCatIsLooongOverlayPortal
    #105335 merged on March 2, 2023 — Extra large: 429 comments over 9 months, 3066 additions and 132 deletions in 10 files
    Reviewed by: Michael Goderbauer, Justin McCandless, Ian Hickson, fzyzcjy, Dan Field, Alex Li

    Many reviewers, over 400 comments, and about 9 months: OverlayPortal has finally landed! OverlayPortal enables adding components like menus, tooltips, and dialogs to Flutter's overlay, without explicitly moving the corresponding widget subtree to the overlay. Now the themes and data inherited by those components will still be inherited when the component is shown in the overlay.

  • Greg Price — Make ClampingScrollSimulation ballistic and more like Android
    #120420 merged on February 28, 2023 — Small: 25 comments over 2 weeks, 230 additions and 66 deletions in 6 files
    Reviewed by: Gary Roumanis, Jonah Williams, Kate Lovett

    Flutter's goal is to respect users' muscle memory with components that feel native. This PR is a nice step in that direction for the Android platform.

  • ivirtex — Fix text color not resolving when CupertinoThemeData.brightness is null
    #115026 merged on February 27, 2023 — Small: 15 comments over 3 months, 94 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless, Mitchell Goodwin

    Ensures that text is visible by default when iOS is in dark mode.

  • takashi kasai — moving the left handle automatically scrolls EditableText to the right handle, which doesn't happen on native
    #105836 merged on March 1, 2023 — Medium: 105 comments over 8 months, 356 additions and 11 deletions in 6 files
    Reviewed by: Justin McCandless, Anthony Oleinik

    Prevents an unexpected scroll when one selection handle is moved and the other isn't visible.

  • Taha Tesser — Fix ExpansionTile double tap to collapse/expanded and expanded/collapsed states semantics announcements
    #120881 merged on February 27, 2023 — Extra large: 4 comments over 1 week, 1488 additions and 81 deletions in 84 files
    Reviewed by: Greg Spencer, chunhtai

    Tweaks what TalkBack says about ExpansionTile state changes.

  • Skandar Munir — fixes Show Week Day in CupertinoDatePicker with CupertinoDatePickerMo…
    #120052 merged on February 28, 2023 — Small: 29 comments over 3 weeks, 74 additions and 11 deletions in 8 files
    Reviewed by: Kate Lovett, Mitchell Goodwin

    Adds a showDayOfTheWeek option to CupertinoDatePicker.

  • Taha Tesser — Add OverflowBox example and update existing examples under basic.dart
    #121213 merged on February 27, 2023 — Large: 3 comments over 5 days, 811 additions and 287 deletions in 35 files
    Reviewed by: Greg Spencer

    Adds 17 (!) widget examples and tests.

  • Michael Goderbauer — showOnScreen does not crash if target node doesn't exist anymore
    #121575 merged on February 28, 2023 — Small: 3 comments over 1 hour, 49 additions and 1 deletion in 2 files
    Reviewed by: chunhtai

    Now it's always safe to call showOnScreen.

  • Qun Cheng — Add visual density for menu default style
    #114878 merged on March 1, 2023 — Small: 5 comments over 3 months, 155 additions and 36 deletions in 3 files
    Reviewed by: Greg Spencer

    Desktop menus are now as compact as you'd expect by default.

  • Jim Gerth — Use AnimatedSwitcher's _childNumber as Key in layoutBuilder's Stack
    #121408 merged on February 28, 2023 — Small: 11 comments over 4 days, 38 additions and 15 deletions in 2 files
    Reviewed by: Chris Bracken, Michael Goderbauer

    Should cut down on AnimatedSwitcher key collisions.

  • Bruno Leroux — Fix Ink decoration image does not render
    #121521 merged on February 27, 2023 — Small: 1 comment over 3 hours, 23 additions and 15 deletions in 2 files
    Reviewed by: Hans Muller

    Ink wasn't showing up if it was only constrained in one dimension. Now it will show up.

  • Taha Tesser — Update date picker examples, remove unused variables and add missing tests
    #121528 merged on February 28, 2023 — Small: 8 comments over 16 hours, 201 additions and 74 deletions in 10 files
    Reviewed by: Hans Muller

    More of our existing examples now sport Material 3.

  • Dan Field — Fix monodrag gestures for DragGestureRecognizer.acceptGesture null check operator used on a null value #112403 and b/249091367
    #121615 merged on February 28, 2023 — Small: 5 comments over 2 hours, 45 additions and 2 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Prevents some difficult to diagnose DragGestureRecognizer crashes.

  • Justin McCandless — Custom context menus in SelectableRegion on web
    #121653 merged on March 1, 2023 — Small: 3 comments over 17 hours, 51 additions and 5 deletions in 3 files
    Reviewed by: Renzo Olivares

    To use custom TextField context menus on the web, BrowserContextMenu.enabled must be false.

  • Bruno Leroux — Fix text history undo/redo should not add a new entry to the history
    #120889 merged on March 1, 2023 — Medium: 1 comment over 1 week, 249 additions and 187 deletions in 2 files
    Reviewed by: Renzo Olivares

    Disallow undo/redo from within undo/redo.

  • Davide Dessì — Fix CupertinoSliverNavigationBar's alwaysShowMiddle not working properly during page transition
    #120895 merged on March 1, 2023 — Small: 6 comments over 1 week, 66 additions and 1 deletion in 2 files
    Reviewed by: Kate Lovett, Mitchell Goodwin

    Prevents an embarrasing bad frame from appearing in the middle of a Cupertino page transition.

  • Tomohiko Tanihata — Update scroll paging logic in Scrollbar
    #121481 merged on February 27, 2023 — Small: 7 comments over 1 day, 16 additions and 31 deletions in 1 file
    Reviewed by: Kate Lovett, Jonah Williams

    A little scrollbar house keeping: removed some duplicated code.

  • Greg Spencer — Add platform channel System.exitApplication and System.requestAppExit support
    #39836 merged on March 3, 2023 — Medium: 80 comments over 1 week, 470 additions and 13 deletions in 15 files
    Reviewed by: Loïc Sharma, Chris Bracken

    MacOS progress towards orderly application exit on all platofrms.

  • Loïc Sharma — [Embedder API] Freeze parts of API for ABI stability
    #39963 merged on March 3, 2023 — Small: 12 comments over 2 days, 178 additions and 2 deletions in 5 files
    Reviewed by: Chinmay Garde, Chris Bracken, yaakovschectman

    Added tests to ensure that it stays frozen.

Notable Commits: 2023 February 17th - 24th

This is the first time we've ever published a list like this. Please forgive errors of ommission, formatting, attribution, grammar, spelling, etc. We're still getting the hang of making the notable commits list public.

As per usual, this list covers roughly one week and it is not comprehensive. It's focus is on commits to Flutter's framework "flutter/flutter" repo that involved the Framework team as pull-request authors or reviewers. That's not strictly true however, we all contribute to many repos - not the least of which is "flutter/engine" - and you'll find evidence of that here. And not all of the commits listed here neccessarily involved someone from the Framework team, although that's typically true. One final observation about the participants in the list below is the large number of contributions that have come from the Flutter community. We are blessed with a an active and generous developer community. Each week's notable commits list is a tribute to everyone who has helped advance Flutter, not just Google's Framework team.

So, without further ado, here's the notable commits list.

  • Casey Hillers — Reland Button padding M3
    #119656 merged on February 22, 2023 — Medium: 6 comments over 3 weeks, 339 additions and 32 deletions in 10 files
    Reviewed by: Pierre-Louis, Eilidh Southren

    Horizontal padding for all buttons updated to match Material 3.

    Button Padding Change

  • Taha Tesser — Add InheritedTheme support to ScrollbarTheme
    #120970 merged on February 17, 2023 — Small: 1 comment over 6 hours, 192 additions and 1 deletion in 3 files
    Reviewed by: Kate Lovett

    Ensures that ScrollbarTheme applies to components that appear in the overlay, like menus.

  • Qun Cheng — Remove the deprecated accentColor from ThemeData
    #120932 merged on February 18, 2023 — Small: 4 comments over 1 day, 4 additions and 68 deletions in 3 files
    Reviewed by: Kate Lovett

    Another "grab bag" ThemeData property is finally, completely, gone.

  • Taha Tesser — Fix SliverAppBar.medium & SliverAppBar.large title overlap with leading/actions widgets, leading width, and title spacing
    #120780 merged on February 23, 2023 — Large: 4 comments over 1 week, 595 additions and 72 deletions in 4 files
    Reviewed by: Kate Lovett

    Resolves three issues and looks good.

    Before After
    Before After
  • yim — Modify the updateChildren method deep copy _children
    #120773 merged on February 17, 2023 — Small: 14 comments over 2 days, 25 additions and 2 deletions in 2 files
    Reviewed by: Michael Goderbauer, xubaolin

    Fixes a crash that occurs when a child with a GlobalKey moves.

  • Jessica Pereira — Fix license page rtl
    #120497 merged on February 21, 2023 — Small: 12 comments over 1 week, 134 additions and 1 deletion in 2 files
    Reviewed by: Greg Spencer, Viren Khatri, Tomasz Gucio

    Corrects and embarrassing RTL layout fail.

  • Greg Price — Fix buggy formula for critically-damped springs
    #120488 merged on February 23, 2023 — Small: 4 comments over 1 week, 12 additions and 9 deletions in 2 files
    Reviewed by: Jonah Williams, Kate Lovett

    Fixed an spring simulation math error noticed by LevisonNN upon a very close reading of the code.

  • codiss — Fix Material3 TabBarTheme.dividerColor not working
    #119690 merged on February 23, 2023 — Small: 6 comments over 3 weeks, 31 additions and 1 deletion in 2 files
    Reviewed by: Chris Bracken, Hans Muller

    Small fix for a TabBarTheme oversight.

  • Andrew Kolos — Speed up first asset load by using the binary-formatted asset manifest for image resolution
    #118782 merged on February 21, 2023 — Small: 9 comments over 1 month, 98 additions and 149 deletions in 6 files
    Reviewed by: Jonah Williams

    Roughly 2X startup performance improvement by loading a binary instead of JSON

  • Greg Spencer — Modify focus traversal policy search to use focus tree instead of widget tree
    #121186 merged on February 23, 2023 — Medium: 11 comments over 1 day, 213 additions and 126 deletions in 5 files
    Reviewed by: damien saint macary, Michael Goderbauer

    You can now override the default for BackButton, CloseButton and more.

  • David Neuy — Fix DataCell overflows when cell height is large by adding dataRowMinHeight, dataRowMaxHeight props.
    #114338 merged on February 23, 2023 — Medium: 30 comments over 3 months, 405 additions and 46 deletions in 7 files
    Reviewed by: Kate Lovett, Ian Hickson

    Now you can specify min/max rowHeight in tables, instead of just rowHeight. The actual row heights reflect their contents.

  • chunhtai — Fix text.rich to merge widget span
    #113461 merged on February 23, 2023 — Medium: 46 comments over 4 months, 312 additions and 21 deletions in 4 files
    Reviewed by: Michael Goderbauer, LongCatIsLooong

    Improves a11y for the rich text widget (and resolves a P2).

  • Qun Cheng — Change mouse cursor to be SystemMouseCursors.click when not editable
    #121353 merged on February 23, 2023 — Small: 1 comment over 3 hours, 32 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Don’t show the text cursor if the DropdownMenu can’t take the focus.

  • Hans Muller — Added identical(a,b) short circuit to painting Library lerp methods
    #121346 merged on February 23, 2023 — Medium: 3 comments over 4 hours, 268 additions and 59 deletions in 30 files
    Reviewed by: Michael Goderbauer

    Only do lerping work that’s needed and preserve const singletons.

  • Greg Spencer — Add getInheritedWidgetOfExactType to BuildContext
    #121276 merged on February 23, 2023 — Small: 5 comments over 3 hours, 82 additions and 27 deletions in 7 files
    Reviewed by: Michael Goderbauer

    A convenience for when you don’t want to create an InheritedWidget build dependency.

  • Greg Spencer — Modify focus traversal policy search to use focus tree instead of widget tree
    #121186 merged on February 23, 2023 — Medium: 11 comments over 1 day, 213 additions and 126 deletions in 5 files
    Reviewed by: damien saint macary, Michael Goderbauer

    A fast fix for a tricky problem.

  • Todd Volkert — Add ResizeImage.policy
    #121154 merged on February 23, 2023 — Large: 4 comments over 1 day, 855 additions and 119 deletions in 3 files
    Reviewed by: Dan Field

    Now you can resize an image of unknown size (an IOUS) and preserve it’s aspect ratio.

  • Michael Goderbauer — Rename WindowPadding to ViewPadding
    #121152 merged on February 22, 2023 — Small: 4 comments over 1 day, 149 additions and 89 deletions in 15 files
    Reviewed by: Loïc Sharma, Kate Lovett

    Because now it's multiple views, not a single window.

  • Michael Goderbauer — Remove more references to dart:ui.window
    #120994 merged on February 18, 2023 — Small: 5 comments over 7 hours, 99 additions and 57 deletions in 15 files
    Reviewed by: Loïc Sharma

    Another small step towards our multi-window future.

  • chunhtai — Fix scrollable to clear inner semantics node if it does not use two p…
    #120996 merged on February 17, 2023 — Small: 4 comments over 3 hours, 62 additions and 0 deletions in 3 files
    Reviewed by: Michael Goderbauer

    A tiny fix for the sake of a11y.

  • Eilidh Southren — [M3] Update checkbox shape value
    #120976 merged on February 20, 2023 — Small: 3 comments over 2 days, 53 additions and 5 deletions in 3 files
    Reviewed by: Pierre-Louis

    Possibly the smallest visual change ever.

    Before After
    Screenshot 2023-02-17 12 44 42 PM Screenshot 2023-02-17 12 43 56 PM
  • Chris Bracken — [linux] Eliminate mirrors support
    #39701 merged on February 17, 2023 — Small: 1 comment over 15 hours, 54 additions and 113 deletions in 7 files
    Reviewed by: J-P Nurmi

    Support for optionally enabling mirrors had been deprecated for two years. Now it’s gone.

  • yaakovschectman — Unregister the FlutterWindowsView on its destruction
    #39824 merged on February 24, 2023 — Small: 5 comments over 22 hours, 37 additions and 2 deletions in 5 files
    Reviewed by: Loïc Sharma, chenjianguang

    Protect against invocations that occur mid destruction.

@HansMuller
Copy link
Contributor Author

HansMuller commented Jun 2, 2023

Notable Commits: 2023 October 13th - October 20th

  • Greg Spencer — Convert menus to use OverlayPortal
    #130534 merged on October 18, 2023 — Large: 22 comments over 3 months, 384 additions and 289 deletions in 11 files
    Reviewed by: Kate Lovett,

    Now the inherited widget ancestors of your menus and menu items will be visible from your menus and menu items without any unsightly copying.

  • pdblasi-google — Adds API for performing semantics actions in tests
    #132598 merged on October 18, 2023 — Large: 65 comments over 2 months, 1039 additions and 24 deletions in 5 files
    Reviewed by: Michael Goderbauer

    We miss you Paul.

  • Christopher Fujino — Flutter preview device
    #135639 merged on October 18, 2023 — Extra large: 46 comments over 2 weeks, 1465 additions and 656 deletions in 24 files
    Reviewed by: Andrew Kolos, Elias Yishak

    Allows new Flutter developers to experience Flutter's hot reload developer experience before installing a native build toolchain (such as Xcode, or Visual Studio).

  • Aakash Pamnani — Fixed : Empty Rows shown at last page in Paginated data table
    #132646 merged on October 18, 2023 — Small: 14 comments over 2 months, 97 additions and 2 deletions in 2 files
    Reviewed by: Hans Muller, Chris Bracken, Kate Lovett

    If you specify showEmptyRows: false we will not show them.

    Before After
    Before After
  • Arash — [Feat] Stroke color for Slider value indicator
    #135986 merged on October 18, 2023 — Medium: 28 comments over 2 weeks, 371 additions and 7 deletions in 2 files
    Reviewed by: Taha Tesser, Kate Lovett

    Enables making the Slider's indicator completely visible when background color and indicator's background color are the same.

    Before After
    current expected
  • Gildásio Filho — Add findChildIndexCallback examples
    #133469 merged on October 18, 2023 — Medium: 14 comments over 1 month, 255 additions and 155 deletions in 6 files
    Reviewed by: Kate Lovett, Chris Bracken

    Examples are often more important than prose. This is an example of that.

  • Qun Cheng — Allow users to customize search algorithm in DropdownMenu
    #136848 merged on October 19, 2023 — Small: 9 comments over 19 hours, 120 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Now you can specify whatever matching algorithm you want for DropdownMenus for which enableSearch is true.

  • Greg Spencer — Add code for updating focusedChild when removing grandchildren from scope
    #136771 merged on October 18, 2023 — Small: 3 comments over 1 day, 47 additions and 1 deletion in 2 files
    Reviewed by:

    Prevents a crash that could occur when ESCaping from a menu.

  • chunhtai — Fixes ability to call nextFocus() on a node to focus its descendant
    #136773 merged on October 18, 2023 — Small: 4 comments over 19 hours, 122 additions and 6 deletions in 2 files
    Reviewed by: Todd Volkert, Greg Spencer

    Corrects a regression that could crop up when tabbing to a no-yet-visible component.

  • Dan Field — Do not hold on to stale canvas reference in _RenderSegmentedButton
    #136658 merged on October 16, 2023 — Small: 4 comments over 3 hours, 39 additions and 9 deletions in 2 files
    Reviewed by: Kate Lovett, Taha Tesser

    Take-home lesson: don't let paint methods hang on to their canvas parameter. Once painting is done, drop the canvas.

  • Todd Volkert — Add docs to SchedulerBinding
    #136433 merged on October 17, 2023 — Small: 2 comments over 4 days, 20 additions and 0 deletions in 1 file
    Reviewed by: Ian Hickson

    Our director has updated the schedule API docs. Notable.

  • Taha Tesser — Fix NavigationRail's indicator inkwell doesn't support transparent color.
    #136359 merged on October 16, 2023 — Small: 2 comments over 4 days, 66 additions and 2 deletions in 2 files
    Reviewed by: Hans Muller

    Now you can have transparent NavigationRail hover color.

  • Taha Tesser — Fix Slider onChanged callback order & never calls onChangeStart on SliderInteraction.slideOnly allowed interaction
    #136720 merged on October 18, 2023 — Small: 5 comments over 1 day, 80 additions and 5 deletions in 2 files
    Reviewed by: Kate Lovett

    Fixed a regression introduced in February where Slider could call onChanged before onChangeStart.

  • Binni Goel — Cupertino search field test leak tracking and Fix. RestorableTextEditingController not disposed.
    #136615 merged on October 16, 2023 — Small: 1 comment over 14 hours, 54 additions and 30 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — GoldenFileComparators should dispose created Image objects.
    #136716 merged on October 17, 2023 — Small: 1 comment over 11 hours, 53 additions and 6 deletions in 5 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — _DefaultTabControllerState should dispose all created TabContoller instances.
    #136608 merged on October 19, 2023 — Medium: 14 comments over 3 days, 165 additions and 154 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — SearchAnchor should dispose created FocusNode and SearchController.
    #136120 merged on October 13, 2023 — Medium: 9 comments over 5 days, 245 additions and 82 deletions in 2 files
    Reviewed by: Kate Lovett, Renzo Olivares, Qun Cheng

    Polina Cherkasova — Mark leak in NativeCodec.getNextFrame.
    #136514 merged on October 13, 2023 — Small: 1 comment over 15 hours, 2 additions and 2 deletions in 1 file
    Reviewed by: Renzo Olivares

    The campaign of leak detection and fixing finally slowed down a little this week. Thanks to Binni, Polina, Kostia, Renzo.

Notable Commits: 2023 September 29th - October 13th

  • Qun Cheng — Floating SnackBar should always float above the bottom widgets
    #136411 merged on October 12, 2023 — Small: 3 comments over 4 hours, 43 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Now the snackbar will float above even the tallest bottom navigation bar.

    Before After
    Screenshot 2023-10-11 at 1 54 30 PM Screenshot 2023-10-11 at 1 54 52 PM

    |

  • Taha Tesser — Fix chip widgets don't the apply provided iconTheme
    #135751 merged on October 12, 2023 — Medium: 5 comments over 1 week, 441 additions and 39 deletions in 10 files
    Reviewed by: Hans Muller

    Now all of the chips respect the specified icon theme.

    Before After
    Screenshot 2023-09-29 at 16 59 39 Screenshot 2023-09-29 at 16 55 24
  • Valentin Vignal — Add SizeTransition.fixedCrossAxisSizeFactor
    #134659 merged on October 11, 2023 — Small: 31 comments over 3 weeks, 140 additions and 3 deletions in 2 files
    Reviewed by: Chris Bracken, Renzo Olivares

    A new animated transition that can blink its child.

    Screen.Recording.2023-09-13.at.10.02.09.PM.mov
  • Maximilian Fischer — Include size factors when computing the intrinsic size of a RenderPositionedBox
    #135823 merged on October 11, 2023 — Small: 4 comments over 1 week, 32 additions and 0 deletions in 2 files
    Reviewed by: Michael Goderbauer,

    RenderPositionedBox now includes widthFactor and heightFactor when computing its intrinsic size.

    Before After
    grafik grafik
  • Hassan — [web] Fix page up page down home end shortcut behavior on web
    #135454 merged on October 9, 2023 — Large: 5 comments over 1 week, 544 additions and 10 deletions in 2 files
    Reviewed by: Renzo Olivares

    The page up and down keys now DTRT in web apps.

  • Greg Spencer — Add key event handlers that happen before or after the focus traversal
    #136280 merged on October 10, 2023 — Medium: 13 comments over 4 hours, 340 additions and 4 deletions in 4 files
    Reviewed by: Michael Goderbauer

    Adds support for listening to key events before or after focus traversal occurs. For the menu system, this change enables closing open menus with escape and consuming the escape key.

  • Bryan Olivares — SearchBar should listen to changes to the SearchController and update suggestions on change
    #134337 merged on October 12, 2023 — Small: 3 comments over 1 month, 97 additions and 1 deletion in 2 files
    Reviewed by: Renzo Olivares, Qun Cheng

    Adds a listener to the SearchController, so that the suggestionBuilder can be updated when the SearchController changes.

  • xubaolin — [SingleChildScrollView] Correct the offset pixels if it is out of range during layout
    #136239 merged on October 12, 2023 — Small: 1 comment over 2 days, 53 additions and 16 deletions in 4 files
    Reviewed by: Kate Lovett

    Corrects a problem that was particularly evident when a desktop/web window's width was maximized.

  • Greg Spencer — Allow TapRegion to consume tap events
    #136305 merged on October 12, 2023 — Medium: 3 comments over 1 day, 350 additions and 67 deletions in 5 files
    Reviewed by: Qun Cheng

    Ensures that the tap even that closes a menu isn't delievered to anyone else.

  • pdblasi-google — Updates references to finders.dart in controller.dart to use a namespace.
    #136423 merged on October 12, 2023 — Small: 3 comments over 17 hours, 45 additions and 45 deletions in 1 file
    Reviewed by: Michael Goderbauer

    We miss you Paul.

  • huycozy — Fix PageView API doc sample fails on Desktop and Web
    #135910 merged on October 12, 2023 — Small: 4 comments over 1 week, 225 additions and 15 deletions in 3 files
    Reviewed by: Bruno Leroux, Hans Muller

    Updates the PageView example with buttons and indicators so that it can be operated from DartPad.

    Screen.Recording.2023-10-01.at.02.01.44.mov
  • Loïc Sharma — [Windows] Add Arm64 benchmarks
    #135514 merged on October 11, 2023 — Small: 1 comment over 2 weeks, 29 additions and 0 deletions in 1 file
    Reviewed by: Chris Bracken

    We're tracking our preformance on arm64, see https://flutter.dev/go/windows-arm64.

  • LongCatIsLooong — Call markNeedsPaint when adding overlayChild to Overlay
    #135941 merged on October 6, 2023 — Small: 2 comments over 2 days, 98 additions and 51 deletions in 4 files
    Reviewed by: Michael Goderbauer

    Corrects this recalcitrant tooltip problem (now the tooltip disappears when it's supposed to):

    flutter_tooltip_bug_aNvhh8aklk

  • 林洵锋 — Fix the character field of RawKeyEvent is always null on iOS
    #135100 merged on October 3, 2023 — Small: 4 comments over 1 week, 6 additions and 2 deletions in 2 files
    Reviewed by: Chris Bracken, Tong Mu

    The original problem was reported (declared!) by Super Declarative.

  • Kostia Sokolovskyi — Fix a couple of CupertinoTextField tests to avoid leak-tracking test failures.
    #135851 merged on October 2, 2023 — Small: 3 comments over 8 hours, 24 additions and 8 deletions in 1 file
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — RenderEditable should dispose created layers.
    #135942 merged on October 6, 2023 — Small: 3 comments over 2 days, 16 additions and 67 deletions in 3 files
    Reviewed by: Michael Goderbauer

    Kostia Sokolovskyi — Fix memory leaks in DateRangePickerDialog.
    #136034 merged on October 6, 2023 — Large: 6 comments over 21 hours, 311 additions and 205 deletions in 3 files
    Reviewed by: Polina Cherkasova, Taha Tesser

    derdilla — Test cover cupertino text field for memory leaks.
    #135804 merged on October 2, 2023 — Large: 1 comment over 1 day, 371 additions and 196 deletions in 1 file
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Fix memory leaks in WidgetInspector and WidgetInspectorService.
    #135828 merged on October 2, 2023 — Large: 3 comments over 13 hours, 305 additions and 205 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — Allow leaks around tap down/up, while flackiness is not fixed.
    #136133 merged on October 7, 2023 — Small: 1 comment over 56 minutes, 5 additions and 1 deletion in 1 file
    Reviewed by: Jonah Williams

    derdilla — Cover some cupertino tests with leak tracking
    #135230 merged on October 2, 2023 — Medium: 2 comments over 1 week, 263 additions and 200 deletions in 8 files
    Reviewed by: Polina Cherkasova

    derdilla — leak track tab_scaffold_test.dart
    #135309 merged on October 2, 2023 — Small: 1 comment over 1 week, 53 additions and 28 deletions in 1 file
    Reviewed by: Polina Cherkasova

    droidbg — [leak-tracking] Cover testwidgets with leak tracking in test/gestures
    #136166 merged on October 9, 2023 — Small: 3 comments over 20 hours, 10 additions and 3 deletions in 2 files
    Reviewed by: Polina Cherkasova

    droidbg — [leak-tracking] Add leak tracking in test/rendering -3
    #136308 merged on October 13, 2023 — Small: 1 comment over 2 days, 125 additions and 62 deletions in 1 file
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — TimePickerDialog should dispose created ChangeNotifiers.
    #136261 merged on October 10, 2023 — Small: 2 comments over 2 hours, 95 additions and 73 deletions in 2 files
    Reviewed by: Polina Cherkasova

    droidbg — [leak-tracking] Add leak tracking in test/painting Tweak to use async/await #2
    #136169 merged on October 9, 2023 — Small: 0 comments over 14 hours, 31 additions and 29 deletions in 2 files
    Reviewed by: Polina Cherkasova

    droidbg — [leak-tracking] Add leak tracking in test/rendering - 1
    #136275 merged on October 11, 2023 — Small: 0 comments over 1 day, 17 additions and 14 deletions in 5 files
    Reviewed by: Polina Cherkasova

    droidbg — [leak-tracking] Add leak tracking in test/rendering -2
    #136310 merged on October 13, 2023 — Small: 1 comment over 2 days, 19 additions and 24 deletions in 4 files
    Reviewed by: Polina Cherkasova

    droidbg — [leak-tracking] Add leak tracking in test/painting Update README.md: Fix spelling mistake #1
    #136167 merged on October 9, 2023 — Small: 2 comments over 20 hours, 19 additions and 15 deletions in 5 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/material tests with leak tracking.
    #136093 merged on October 10, 2023 — Large: 7 comments over 3 days, 396 additions and 248 deletions in 12 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — _RenderSnapshotWidget should dispose created OffsetLayer.
    #136267 merged on October 11, 2023 — Small: 2 comments over 23 hours, 4 additions and 13 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — SearchAnchor should dispose created FocusNode and SearchController.
    #136120 merged on October 13, 2023 — Medium: 9 comments over 5 days, 245 additions and 82 deletions in 2 files
    Reviewed by: Kate Lovett, Renzo Olivares, Qun Cheng

    Kostia Sokolovskyi — RenderAnnotatedRegion should dispose created layers.
    #136086 merged on October 10, 2023 — Small: 2 comments over 3 days, 12 additions and 12 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — TestClipPaintingContext should dispose ContainerLayer
    #135949 merged on October 10, 2023 — Small: 2 comments over 6 days, 16 additions and 23 deletions in 3 files
    Reviewed by: Jonah Williams

    Polina Cherkasova — Fix flakiness: finalize dropped gestures in tests to release resources, and update doc-comment.
    #136136 merged on October 11, 2023 — Medium: 4 comments over 3 days, 313 additions and 105 deletions in 24 files
    Reviewed by: Jonah Williams

    Yet another wave wave of leak detection and leak fixing. Huge thanks to the huge effort from Polina Cherkasova, Kostia Sokolovskyi, derdilla, Jonah, droidbg.

Notable Commits: 2023 September 22nd - September 29th

  • Chip Weinberger — [Velocity Tracker] Fix: Issue 97761: Flutter Scrolling does not match iOS; inadvertent scrolling when user lifts up finger
    #132291 merged on September 25, 2023 — Small: 20 comments over 1 month, 56 additions and 1 deletion in 2 files
    Reviewed by: Michael Goderbauer, Chris Bracken, Kate Lovett

    No more scrolling when you lift your finger!

    Before After
    152463186-40c92a64-e21e-407d-a61c-3a452b3f39cd.mov
    PXL_20230810_201728338-small.mp4
  • Daco Harkes — Native assets support for Windows
    #134203 merged on September 27, 2023 — Extra large: 50 comments over 2 weeks, 1208 additions and 343 deletions in 20 files
    Reviewed by: Pierrick Bouvier, stuartmorgan, Loïc Sharma

    New FFI @Native external metadata annotation enables bundling native code without any build-system boilerplate.

  • Renzo Olivares — Implement SelectionArea single click/tap gestures
    #132682 merged on September 28, 2023 — Medium: 34 comments over 1 month, 375 additions and 99 deletions in 7 files
    Reviewed by: chunhtai

    To match native selection behavior: collapse the selection at the clicked/tapped location on single click down for desktop platforms, and on single click/tap up for mobile platforms.

  • tauu — [web] fix: do not call onSubmitted of TextField when switching browser tabs on mobile web
    #134870 merged on September 28, 2023 — Small: 6 comments over 1 week, 7 additions and 17 deletions in 2 files
    Reviewed by: Renzo Olivares, LongCatIsLooong

    Makes switching tabs safer for Flutter apps.

  • Kate Lovett — Allow multiple ParentDataWidgets to write to ParentData
    #133581 merged on September 26, 2023 — Medium: 35 comments over 4 weeks, 424 additions and 45 deletions in 4 files
    Reviewed by: Michael Goderbauer

    With some restrictions.

  • Kate Lovett — Support ensureVisible/showOnScreen/showInViewport for 2D Scrolling
    #135182 merged on September 27, 2023 — Large: 61 comments over 6 days, 1026 additions and 58 deletions in 9 files
    Reviewed by: LongCatIsLooong, chunhtai

    Enables default focus traversal and implicit scrolling in 2D.

  • Taha Tesser — Fix SearchAnchor's search view isn't updated when the theme changes & widgets inside the search view do not inherit local themes
    #132749 merged on September 27, 2023 — Small: 9 comments over 1 month, 168 additions and 53 deletions in 3 files
    Reviewed by: Qun Cheng

    Fixed two SearchAnchor problems: the search view now updates when the platform's brightness changes, and widgets within the search view can use local themes.

    search_view drawio

    Screen.Recording.2023-08-17.at.11.17.13.mov
  • godofredoc — Update localizations.
    #135691 merged on September 29, 2023 — Extra large: 2 comments over 9 hours, 1202 additions and 969 deletions in 221 files
    Reviewed by: Greg Spencer, Kevin Chisholm

    Periodic udpate of all of Flutter's message translations.

  • Alex Li — 🚀 Add more fields to RefreshProgressIndicator
    #135207 merged on September 28, 2023 — Small: 4 comments over 1 week, 89 additions and 3 deletions in 2 files
    Reviewed by: Taha Tesser

    Adds parameters for elevation, indicatorMargin, and indicatorPadding.

  • Matheus Kirchesch — Added option to disable [NavigationDestination]s ([NavigationBar] destination widget)
    #132361 merged on September 28, 2023 — Small: 15 comments over 1 month, 83 additions and 12 deletions in 2 files
    Reviewed by: Navaron Bracke, Hans Muller, Qun Cheng

    If there's a place you don't want to go, now you can disable it.

  • Edgar Jan — Fix and Test Conditional Validator Behavior in FormField
    #132714 merged on September 25, 2023 — Small: 13 comments over 1 month, 69 additions and 0 deletions in 2 files
    Reviewed by: Chris Bracken, Kate Lovett, LongCatIsLooong

    Now: if the validator fails and then you remove it, the error vanishes.

  • Renzo Olivares — SelectionArea long press selection overlay behavior should match native
    #133967 merged on September 26, 2023 — Small: 7 comments over 3 weeks, 117 additions and 2 deletions in 4 files
    Reviewed by: chunhtai

    More tweaks to the selection behavior so that Flutter matches what your muscles remember on each platform. Check out the PR for all of the details.

  • Kate Lovett — Remove assertions on getOffsetToReveal
    #135634 merged on September 28, 2023 — Small: 3 comments over 1 day, 134 additions and 20 deletions in 8 files
    Reviewed by: chunhtai

    Includes a bonus diagram that shows all of Flutter's viewport types.

    graph TB;
      id1((RenderAbstractViewport)) --> RenderListWheelViewport
      id1((RenderAbstractViewport)) --> _RenderSingleChildViewport
      id1((RenderAbstractViewport)) --> id2((RenderTwoDimensionalViewport))
      id1((RenderAbstractViewport)) --> id3((RenderViewportBase))
      id3((RenderViewportBase)) --> RenderShrinkWrappingViewport
      id3((RenderViewportBase)) --> RenderViewport
    
  • Taha Tesser — Update TextField.style documentation for Material 3
    #135556 merged on September 28, 2023 — Small: 3 comments over 1 day, 6 additions and 2 deletions in 2 files
    Reviewed by: Qun Cheng

    TextField now uses bodyLarge instead of titleMedium by default per the Material3 spec.

  • Matej Knopp — [macOS] FlutterTextInputPlugin should clip to bounds
    #46142 merged on September 28, 2023 — Small: 3 comments over 1 week, 8 additions and 1 deletion in 3 files
    Reviewed by: Chris Bracken

    On macOS Sonoma, NSView's default behaviour changed from clipped to bounds to not clipped to bounds. In the macOS embedder, we use a textfield located at the origin and with a zero-sized bounds rect so that we get full fidelity with respect to accessibility behaviour during text input. The new clipping behaviour appeared in early macOS betas but was reverted in beta 7 through the release candidates, only to return in Sonoma final. This engine PR manually re-enables clipping.

  • Matej Knopp — [macOS] TextInputPlugin should mark navigation events in IME popover as handled
    #46141 merged on September 28, 2023 — Small: 2 comments over 1 week, 97 additions and 1 deletion in 3 files
    Reviewed by: Chris Bracken

    A bad interaction between our IME input and and shortcut key handling resulted in IME navigation working correctly, but triggering an audible beep due to our attempting to shunt arrow-key key events to the framework and back. To prevent that, when composing is active, we apply special handling for IME navigation keys.

Notable Commits: 2023 September 15th - September 22nd

  • Tomasz Gucio — Size CupertinoTextSelectionToolbar to children
    #133386 merged on September 22, 2023 — Medium: 45 comments over 3 weeks, 253 additions and 215 deletions in 4 files
    Reviewed by: Justin McCandless, LongCatIsLooong

    Resolves 3 issues (one of which is 3 years old). Now we get the toolbar height correct for complex scripts; check out the examples in the beautiful illustrations below.

    Before After
    before after
  • Qun Cheng — Remove extra padding if a dropdown menu entry also has a leading icon
    #135004 merged on September 22, 2023 — Small: 1 comment over 2 days, 54 additions and 13 deletions in 2 files
    Reviewed by: Hans Muller

    When the dropdown menu has both labels and icons, they end up in their own columns.

    Before After
    Screenshot 2023-09-19 at 4 37 58 PM Screenshot 2023-09-19 at 4 35 24 PM
  • Daco Harkes — Native assets support for Linux
    #134031 merged on September 18, 2023 — Large: 20 comments over 1 week, 919 additions and 21 deletions in 12 files
    Reviewed by: Zachary Anderson, stuartmorgan

    Support for FFI calls with @Native external functions through Native assets on Linux.

  • huycozy — Improve DropdownMenu sample code for requestFocusOnTap on mobile platforms
    #134867 merged on September 18, 2023 — Small: 6 comments over 1 day, 28 additions and 0 deletions in 2 files
    Reviewed by: Qun Cheng

    This is an example of an API doc example that ran OK on mobile but didn't work as expected when it appeared in DartPad.

  • chunhtai — Fixes focus traversal crash if the current node can't request focus
    #134954 merged on September 18, 2023 — Small: 3 comments over 4 hours, 38 additions and 1 deletion in 2 files
    Reviewed by: Greg Spencer

    Fixed a high priority issue reported by our director!

  • hangyu — Update alwaysNeedsCompositing in RenderParagraph
    #135076 merged on September 21, 2023 — Small: 3 comments over 1 day, 63 additions and 0 deletions in 2 files
    Reviewed by: chunhtai

    Corrected a selection highlight boundary problem that occured when a SelectionArea contained a FittedBox that contained text.

  • Matheus Kirchesch — Added option to disable [NavigationDrawerDestination]s
    #132349 merged on September 22, 2023 — Small: 15 comments over 1 month, 93 additions and 19 deletions in 2 files
    Reviewed by: Navaron Bracke, Hans Muller, Qun Cheng

    Now you could even disable all the destinations.

  • Bruno Leroux — Add a parameter to configure InputDecorator hint fade animations duration
    #135211 merged on September 21, 2023 — Medium: 1 comment over 8 hours, 287 additions and 43 deletions in 2 files
    Reviewed by: Hans Muller

    InputDecorator continues to dominate in the "most configurable" widget category.

  • Tong Mu — Fix violation of the render rule in Windows Startup Test
    #134245 merged on September 21, 2023 — Small: 12 comments over 1 week, 48 additions and 17 deletions in 1 file
    Reviewed by: Loïc Sharma

    What's the FlutterView.render rule you ask?

      /// This function must be called within the scope of the
      /// [PlatformDispatcher.onBeginFrame] or [PlatformDispatcher.onDrawFrame]
      /// callbacks being invoked.
      ///
      /// If this function is called a second time during a single
      /// [PlatformDispatcher.onBeginFrame]/[PlatformDispatcher.onDrawFrame]
      /// callback sequence or called outside the scope of those callbacks, the call
      /// will be ignored.
    
  • Bruno Leroux — Form fields onChange callback should be called on reset
    #134295 merged on September 21, 2023 — Small: 13 comments over 1 week, 177 additions and 19 deletions in 6 files
    Reviewed by: Renzo Olivares

    Now, when a Form that contains a TextFormField (or any other FormField) is reset, the TextFormField's onChanged method will be called.

  • Michael Goderbauer — Enable strict-inference
    #135043 merged on September 20, 2023 — Small: 1 comment over 1 day, 63 additions and 55 deletions in 27 files
    Reviewed by: Devon Carew, Greg Spencer

    Prevents dynamic types from sneaking in, see https://dart.dev/tools/analysis#enabling-additional-type-checks.

  • Greg Spencer — Remove 'must be non-null' and 'must not be null' comments from material.
    #134991 merged on September 20, 2023 — Large: 12 comments over 1 day, 127 additions and 376 deletions in 93 files
    Reviewed by: Michael Goderbauer

    Greg Spencer — Remove 'must be non-null' and 'must not be null' comments in widgets library
    #134992 merged on September 20, 2023 — Large: 13 comments over 1 day, 157 additions and 619 deletions in 85 files
    Reviewed by: Michael Goderbauer

    Greg Spencer — Remove 'must be non-null' and 'must not be null' comments from non-framework libraries
    #134994 merged on September 19, 2023 — Small: 1 comment over 16 hours, 7 additions and 60 deletions in 12 files
    Reviewed by: Michael Goderbauer

    Greg Spencer — Remove 'must not be null' comments from various libraries.
    #134984 merged on September 20, 2023 — Large: 22 comments over 1 day, 176 additions and 461 deletions in 70 files
    Reviewed by: Chris Bracken, Michael Goderbauer

    Greg Spencer — Remove 'must not be null' comments from painting and rendering libraries.
    #134993 merged on September 20, 2023 — Medium: 7 comments over 1 day, 79 additions and 309 deletions in 59 files
    Reviewed by: Michael Goderbauer

    Removes all of the comments that are of the form "so-and-so (must not be null|can ?not be null|must be non-null)" from the cases where those values are defines as non-nullable values.

  • Michael Goderbauer — Enable private field promotion for framework
    #134473 merged on September 18, 2023 — Small: 7 comments over 6 days, 47 additions and 47 deletions in 21 files
    Reviewed by: Greg Spencer

    Enables a new Dart 3.2 language feature, see Enable promotion for private final fields and fields on non-escaping private classes dart-lang/language#2020.

  • Polina Cherkasova — _RenderChip should not create OpacityLayer without disposing.
    #134708 merged on September 22, 2023 — Small: 23 comments over 1 week, 12 additions and 7 deletions in 2 files
    Reviewed by: Michael Goderbauer

    derdilla — Fix leak in hardware_keyboard_test.dart
    #134380 merged on September 20, 2023 — Small: 9 comments over 1 week, 54 additions and 43 deletions in 2 files
    Reviewed by: Polina Cherkasova

    derdilla — cover more tests with leak tracing
    #134833 merged on September 20, 2023 — Small: 1 comment over 5 days, 2 additions and 1 deletion in 1 file
    Reviewed by: Polina Cherkasova

    derdilla — cover more tests with leak tracking
    #134837 merged on September 20, 2023 — Small: 0 comments over 4 days, 7 additions and 6 deletions in 1 file
    Reviewed by: Polina Cherkasova

    derdilla — cover more tests with leak tracing
    #134834 merged on September 20, 2023 — Small: 0 comments over 5 days, 17 additions and 12 deletions in 5 files
    Reviewed by: Polina Cherkasova

    derdilla — Cover some cupertino tests with leak tracing
    #135149 merged on September 21, 2023 — Large: 2 comments over 21 hours, 291 additions and 261 deletions in 23 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking
    #134869 merged on September 18, 2023 — Medium: 3 comments over 2 days, 263 additions and 227 deletions in 18 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking
    #134884 merged on September 18, 2023 — Large: 3 comments over 2 days, 366 additions and 203 deletions in 20 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking
    #134943 merged on September 20, 2023 — Large: 2 comments over 2 days, 409 additions and 263 deletions in 29 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking
    #135045 merged on September 20, 2023 — Large: 1 comment over 20 hours, 868 additions and 419 deletions in 21 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking
    #135054 merged on September 20, 2023 — Large: 1 comment over 18 hours, 366 additions and 230 deletions in 41 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking
    #135143 merged on September 20, 2023 — Large: 2 comments over 4 hours, 506 additions and 294 deletions in 33 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking
    #135231 merged on September 21, 2023 — Large: 2 comments over 7 hours, 410 additions and 247 deletions in 20 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Fix memory leak in _SelectableTextState
    #135049 merged on September 20, 2023 — Small: 3 comments over 1 day, 137 additions and 124 deletions in 2 files
    Reviewed by: Renzo Olivares

    Polina Cherkasova — Cover more tests with leak tracking.
    #134805 merged on September 18, 2023 — Medium: 3 comments over 3 days, 215 additions and 146 deletions in 10 files
    Reviewed by: Renzo Olivares

    Polina Cherkasova — Fix _paintAvatar in chip.dart to dispose layer.
    #135228 merged on September 22, 2023 — Small: 2 comments over 1 day, 9 additions and 3 deletions in 1 file
    Reviewed by: Michael Goderbauer

    Polina Cherkasova — TabController should dispatch creation in constructor.
    #133952 merged on September 22, 2023 — Small: 7 comments over 2 weeks, 31 additions and 3 deletions in 6 files
    Reviewed by: chunhtai

    Polina Cherkasova — Handle breaking changes in leak_tracker.
    #135185 merged on September 21, 2023 — Small: 6 comments over 17 hours, 48 additions and 22 deletions in 8 files
    Reviewed by: Christopher Fujino

    Polina Cherkasova — Resolve breaking change of adding a method to ChangeNotifier.
    #134953 merged on September 18, 2023 — Small: 7 comments over 5 hours, 30 additions and 34 deletions in 19 files
    Reviewed by: Michael Goderbauer

    derdilla — Mark ReastaurationManager not disposed
    #134832 merged on September 20, 2023 — Small: 1 comment over 5 days, 6 additions and 2 deletions in 1 file
    Reviewed by: Polina Cherkasova

    derdilla — Cover cupertino/form_section_test with leak tracing
    #135158 merged on September 20, 2023 — Small: 0 comments over 3 hours, 11 additions and 9 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Fix memory leak in _MatchesReferenceImage
    #135150 merged on September 22, 2023 — Small: 8 comments over 2 days, 161 additions and 35 deletions in 3 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Fix memory leak in NestedScrollViewState.
    #135248 merged on September 22, 2023 — Small: 3 comments over 5 hours, 77 additions and 52 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Fix memory leak in _DarwinViewState.
    #134938 merged on September 18, 2023 — Small: 2 comments over 4 hours, 108 additions and 104 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Add RestorationManager disposals in test/services/restoration_test.dart.
    #135218 merged on September 21, 2023 — Small: 4 comments over 4 hours, 14 additions and 11 deletions in 1 file
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — Dispose layers in test.
    #134802 merged on September 15, 2023 — Small: 2 comments over 14 hours, 9 additions and 3 deletions in 1 file
    Reviewed by: Renzo Olivares

    Another week gone and another tidal wave of leak detection and leak fixing. Huge thanks to the huge effort from Polina Cherkasova, Chun-Heng Tai, Kostia Sokolovskyi, derdilla

Notable Commits: 2023 September 8th - September 15th

  • Justin McCandless — LinkedText (Linkify)
    #125927 merged on September 14, 2023 — Extra large: 131 comments over 4 months, 2520 additions and 0 deletions in 18 files
    Reviewed by: Renzo Olivares, hahai96, Benjamin, chunhtai

    Now you can easily create Text widgets that contain links. Check out the PR for more examples.

    Urls (default)

    LinkedText(
      text: 'Check out flutter.dev.',
      onTap: (String urlString) {
        Uri uri = Uri.parse(urlString);
        if (uri.host.isEmpty) {
          uri = Uri.parse('https://$uriString');
        }
        if (!await launchUrl(uri)) {
          throw 'Could not launch $urlString.';
        }
      },
    )

    Screenshot from 2023-05-03 17-16-36

    Twitter handles

    LinkedText(
      text: 'Check out @FlutterDev on Twitter for the latest.',
      regExp: RegExp(r'@[a-zA-Z0-9]{4,15}'),
      onTap: (String urlString) {
        final String handleWithoutAt = linkText.substring(1);
        Uri uri = Uri.parse('https://www.twitter.com/$handleWithoutAt');
        if (!await launchUrl(uri)) {
          throw 'Could not launch $uri.';
        }
      },
    )

    Screenshot from 2023-05-03 17-10-26

  • chunhtai — [Impeller] Fixes stroke path geometry that can draw outside of path if the path ends at sharp turn.
    #45252 merged on September 13, 2023 — Small: 43 comments over 2 weeks, 151 additions and 13 deletions in 6 files
    Reviewed by: Brandon DeRosier

    Fixes corner case for wide lines and sharp corners.

    Before this fix, a wide polyline with a sharp corner like this (below the red line):
    Screenshot 2023-09-15 at 11 53 47 AM

    could overflow the corner a little, like this:
    Screenshot 2023-09-15 at 11 55 17 AM

  • yaakovschectman — Use start instead of extent for Windows IME cursor position
    #45667 merged on September 13, 2023 — Small: 7 comments over 1 day, 63 additions and 2 deletions in 2 files
    Reviewed by: Chris Bracken, Renzo Olivares

    Fixes a a Windows IME issue.

  • yaakovschectman — Handle external window's WM_CLOSE in lifecycle manager
    #45840 merged on September 14, 2023 — Small: 3 comments over 2 hours, 60 additions and 21 deletions in 3 files
    Reviewed by: Chris Bracken, Greg Spencer

    Ensures graceful exits for Windows apps.

  • xubaolin — [New feature] Allowing the ListView slivers to have different extents while still having scrolling performance
    #131393 merged on September 12, 2023 — Large: 36 comments over 1 month, 614 additions and 73 deletions in 8 files
    Reviewed by: Kate Lovett

    Now you can provide an additional list builder parameter that reports the height of each list item.

  • Bruno Leroux — Fix TabBarView desynchronized after animation interruption
    #132748 merged on September 12, 2023 — Small: 14 comments over 3 weeks, 68 additions and 5 deletions in 2 files
    Reviewed by: Kate Lovett

    Nervous tabbing back and forth could cause animation glitches. Now it's OK.

  • Delwin Mathew — Fix null check crash by ReorderableList
    #132153 merged on September 13, 2023 — Small: 19 comments over 1 month, 64 additions and 0 deletions in 2 files
    Reviewed by: Michael Goderbauer, Kate Lovett

    Fixed an exception that occurred if you dragged the last element of ReorderableList and then put it back at the same index.

  • Bruno Leroux — Fix NavigationRail hover misplaced when using large icons
    #134719 merged on September 14, 2023 — Small: 1 comment over 7 hours, 147 additions and 7 deletions in 2 files
    Reviewed by: Hans Muller

    The selection highlight for big icons is centered properly now.

    Before After
    image image
  • Jonah Williams — [framework] reduce ink sparkle uniform count.
    #133897 merged on September 13, 2023 — Small: 9 comments over 1 week, 42 additions and 49 deletions in 2 files
    Reviewed by: Chinmay Garde, Matan Lurey, Brandon DeRosier

    Cheaper sparkles.

  • chunhtai — Allows page removal that contains Localhistoryentry
    #134757 merged on September 14, 2023 — Small: 7 comments over 2 hours, 102 additions and 8 deletions in 3 files
    Reviewed by: Michael Goderbauer

    Resolves 3 issues.

  • Kohei Seino — ScaleGestureRecognizer: make pointerCount public
    #127310 merged on September 12, 2023 — Small: 10 comments over 3 months, 15 additions and 9 deletions in 2 files
    Reviewed by: Renzo Olivares, Kate Lovett

    Answers the question: what if you wanted to handle a scale gesture differently, based on the number of pointers involved.

  • Michael Goderbauer — Enable private field promotion for other packages
    #134475 merged on September 12, 2023 — Small: 3 comments over 21 hours, 13 additions and 13 deletions in 12 files
    Reviewed by: Greg Spencer

    Michael Goderbauer — Enable private field promotion for examples
    #134478 merged on September 12, 2023 — Small: 1 comment over 18 hours, 10 additions and 10 deletions in 10 files
    Reviewed by: Kate Lovett

    Michael Goderbauer — Enable private field promotion for dev
    #134480 merged on September 12, 2023 — Small: 1 comment over 18 hours, 52 additions and 54 deletions in 50 files
    Reviewed by: Greg Spencer

    Michael Goderbauer — Enable private field promotion for flutter_tools
    #134474 merged on September 12, 2023 — Small: 5 comments over 20 hours, 98 additions and 98 deletions in 46 files
    Reviewed by: Christopher Fujino

    New feature in upcoming Dart 3.2. See Enable promotion for private final fields and fields on non-escaping private classes dart-lang/language#2020. Feature is enabled by bumping the min SDK version to 3.2.

  • Kate Lovett — Remove chip tooltip deprecations
    #134486 merged on September 12, 2023 — Small: 1 comment over 16 hours, 2 additions and 75 deletions in 3 files
    Reviewed by: Michael Goderbauer

    Kate Lovett — Remove deprecated TextSelectionOverlay.fadeDuration
    #134485 merged on September 12, 2023 — Small: 1 comment over 15 hours, 0 additions and 11 deletions in 2 files
    Reviewed by: chunhtai

    Deprecated APIs are eventually removed. See Flutter Deprecations Removed after 3.13.

  • Bruno Leroux — Fix navigation rail hover misplaced when direction is RTL and extended is true
    #134815 merged on September 15, 2023 — Small: 1 comment over 5 hours, 113 additions and 3 deletions in 2 files
    Reviewed by: Hans Muller

    Prevents this from happening again:

    bug.mov
  • hangyu — Dispose routes in navigator when throwing exception
    #134596 merged on September 13, 2023 — Small: 1 comment over 18 hours, 4 additions and 9 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — _DayPicker should build days using separate stetefull widget _Day.
    #134607 merged on September 14, 2023 — Small: 4 comments over 21 hours, 125 additions and 82 deletions in 1 file
    Reviewed by: Hans Muller

    Polina Cherkasova — Cover more tests with leak tracking.
    #134363 merged on September 11, 2023 — Large: 1 comment over 1 day, 349 additions and 325 deletions in 37 files
    Reviewed by: chunhtai

    Kostia Sokolovskyi — Fix memory leak in ListWheelScrollView
    #134732 merged on September 15, 2023 — Small: 4 comments over 13 hours, 100 additions and 24 deletions in 2 files
    Reviewed by: Kate Lovett, Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking Use arrow function in README example #3
    #134576 merged on September 14, 2023 — Large: 10 comments over 1 day, 333 additions and 273 deletions in 21 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking Unfortunately, Sky has stopped #4
    #134663 merged on September 13, 2023 — Large: 3 comments over 1 hour, 301 additions and 246 deletions in 31 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover focus tests with leak tracking
    #134457 merged on September 11, 2023 — Large: 7 comments over 2 hours, 501 additions and 151 deletions in 3 files
    Reviewed by: Polina Cherkasova, chunhtai

    Kostia Sokolovskyi — Fix memory leak in RenderAnimatedSize
    #133653 merged on September 11, 2023 — Small: 25 comments over 1 week, 73 additions and 0 deletions in 2 files
    Reviewed by: Kate Lovett, xubaolin

    Polina Cherkasova — Mark leak: instances of OpacityLayer, created by _RenderChip, should be disposed.
    #134395 merged on September 11, 2023 — Small: 1 comment over 14 hours, 7 additions and 2 deletions in 1 file
    Reviewed by: Renzo Olivares

    Polina Cherkasova — _YearPicker should dispose ScrollController and MaterialSatesController.
    #134393 merged on September 13, 2023 — Small: 1 comment over 1 day, 15 additions and 7 deletions in 3 files
    Reviewed by: chunhtai

    derdilla — Cover some Services tests with leak tracing
    #134381 merged on September 14, 2023 — Small: 1 comment over 4 days, 6 additions and 4 deletions in 2 files
    Reviewed by: Polina Cherkasova, chunhtai

    Polina Cherkasova — Date picker dialog state should dispose members.
    #134804 merged on September 15, 2023 — Small: 1 comment over 9 hours, 103 additions and 87 deletions in 2 files
    Reviewed by: Hans Muller

    Kostia Sokolovskyi — Cover more test/widgets tests with leak tracking Tweak to use async/await #2
    #134387 merged on September 13, 2023 — Extra large: 27 comments over 2 days, 1209 additions and 1070 deletions in 15 files
    Reviewed by: Polina Cherkasova, chunhtai

    hangyu — Update BottomSheetTest
    #134562 merged on September 13, 2023 — Small: 0 comments over 7 hours, 2 additions and 8 deletions in 1 file
    Reviewed by: Polina Cherkasova

    Another tidal wave of leak detection and leak fixing. Huge thanks to the huge effort from Polina Cherkasova, Chun-Heng Tai, Kostia Sokolovskyi, derdilla

Notable Commits: 2023 September 1st - September 8th

  • Taha Tesser — Fix DataTable's headingTextStyle & dataTextStyle are not merged with default text style
    #134138 merged on September 7, 2023 — Small: 2 comments over 18 hours, 46 additions and 4 deletions in 2 files
    Reviewed by: Hans Muller

    Corrects another serious, uh, readability problem.

    Before

    Desktop Mobile

    After

    Desktop Mobile
  • Gray Mackall — [integration_test] Allow capture of screenshots for FlutterFragmentActivitys
    #132406 merged on September 7, 2023 — Small: 14 comments over 3 weeks, 95 additions and 9 deletions in 7 files
    Reviewed by: Camille Simon, Reid Baker

    Now screenshots work for this case (Android) and we have regression tests.

  • Taha Tesser — Fix TabBar doesn't use labelStyle & unselectedLabelStyle color
    #133989 merged on September 7, 2023 — Medium: 2 comments over 2 days, 315 additions and 19 deletions in 3 files
    Reviewed by: Hans Muller

    TabBars labels are now styled the way you specified.

    Before After
    image image
  • Burak İmdat — Fix subtitleTextStyle.color isn't applied to the ListTile.subtitle in Material 2
    #133422 merged on September 6, 2023 — Small: 17 comments over 1 week, 207 additions and 28 deletions in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    A tweak for Material 2. Of course we're hope you'll migrate to Material 3 (the new default!).

  • Taha Tesser — Fix ExpansionTile properties cannot be updated with setState
    #134218 merged on September 7, 2023 — Small: 3 comments over 6 hours, 199 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Remember: objects that depend on stateful widget parameters and are created by initState need to be updated in didUpdateWidget and maybe in didChangeDependencies.

    Before

    before.mov

    After

    after.mov
  • xubaolin — fix a Scrollbar example crash
    #127925 merged on September 8, 2023 — Small: 17 comments over 3 months, 22 additions and 1 deletion in 3 files
    Reviewed by: Kate Lovett, Taha Tesser

    And there are still more examples that need tests! Developers, see dev/bots/check_code_samples.dart.

  • Tirth — Add CheckedPopupMenuItem.onTap callback
    #134000 merged on September 6, 2023 — Small: 17 comments over 1 day, 46 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    Just a little pass-through to PopupMenuItem.

  • LongCatIsLooong — Make CupertinoTextField at least as tall as its first line of placeholder
    #134198 merged on September 8, 2023 — Small: 13 comments over 1 day, 161 additions and 96 deletions in 5 files
    Reviewed by: Renzo Olivares, Mitchell Goodwin

    Fixed a widget height problem that occurred if CupertinoSearchTextField's placeholder contained a Chinese Character.

  • Matheus Kirchesch — Fixed [NavigationRailDestination]'s label opacity while disabled not being coherent with the icon
    #132345 merged on September 7, 2023 — Small: 9 comments over 3 weeks, 44 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Now the entire label looks disabled when it needs to.

  • Taha Tesser — Reland "Fix Chip.shape's side is not used when provided in Material 3"
    #133856 merged on September 7, 2023 — Small: 9 comments over 5 days, 148 additions and 3 deletions in 3 files
    Reviewed by: Hans Muller

    If you specify a shape and a side (a "side" specifies the shape's border color and width), we'll use the side, even if the shape also includes a side. If you don't specify a side, we'll use the one included with the shape.

  • Kostia Sokolovskyi — Cover some test/widgets tests with leak tracking
    #133803 merged on September 7, 2023 — Large: 6 comments over 6 days, 733 additions and 566 deletions in 60 files
    Reviewed by:

    Polina Cherkasova — _TabBarViewState should dispose created instances of PageController.
    #134091 merged on September 8, 2023 — Small: 10 comments over 1 day, 19 additions and 64 deletions in 4 files
    Reviewed by: chunhtai

    Polina Cherkasova — Remove non needed controllers in SegmentedButton.
    #134064 merged on September 8, 2023 — Small: 5 comments over 2 days, 71 additions and 5 deletions in 2 files
    Reviewed by: Navaron Bracke, Hans Muller

    Polina Cherkasova — Cover more tests with leak tracking.
    #133958 merged on September 5, 2023 — Extra large: 9 comments over 1 day, 1989 additions and 1649 deletions in 58 files
    Reviewed by: Renzo Olivares

    Polina Cherkasova — EditableTextState should dispose cursorVisibilityNotifier.
    #133858 merged on September 8, 2023 — Small: 4 comments over 6 days, 2 additions and 8 deletions in 1 file
    Reviewed by: chunhtai

    Polina Cherkasova — TestWidgetsFlutterBinding should dispose old RestorationManager on reset.
    #133999 merged on September 8, 2023 — Small: 3 comments over 3 days, 21 additions and 0 deletions in 2 files
    Reviewed by: Renzo Olivares, chunhtai

    Polina Cherkasova — CupertinoAlertDialog should not create ScrollController on every build, if null values are passed in constructor.
    #134075 merged on September 7, 2023 — Small: 2 comments over 2 days, 33 additions and 17 deletions in 2 files
    Reviewed by: yusuf-goog

    Polina Cherkasova — _MaterialAppState should dispose MaterialHeroController.
    #133951 merged on September 5, 2023 — Small: 5 comments over 1 day, 93 additions and 61 deletions in 5 files
    Reviewed by: chunhtai

    Polina Cherkasova — _SearchBarState should dispose FocusNode, if it created it.
    #133947 merged on September 5, 2023 — Small: 1 comment over 2 days, 5 additions and 1 deletion in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — CupertinoAlertDialog should not create ScrollController on every build, if null values are passed in constructor.
    #133918 merged on September 5, 2023 — Small: 1 comment over 3 days, 33 additions and 17 deletions in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — _DropdownMenuState should dispose TextEditingController.
    #133914 merged on September 6, 2023 — Small: 2 comments over 3 days, 4 additions and 1 deletion in 2 files
    Reviewed by: Renzo Olivares

    Polina Cherkasova — _SearchBarState should dispose FocusNode, if it created it.
    #134076 merged on September 7, 2023 — Small: 0 comments over 2 days, 5 additions and 1 deletion in 2 files
    Reviewed by: yusuf-goog

    Polina Cherkasova — DropdownRoutePage should dispose the created ScrollController.
    #133941 merged on September 7, 2023 — Small: 2 comments over 4 days, 44 additions and 21 deletions in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — SearchDelegate should dispose resources.
    #133948 merged on September 7, 2023 — Small: 2 comments over 3 days, 13 additions and 4 deletions in 3 files
    Reviewed by: chunhtai

    Tong Mu — Dispose AnimationSheetRecorder to avoid leaks
    #133365 merged on September 5, 2023 — Small: 4 comments over 1 week, 94 additions and 48 deletions in 4 files
    Reviewed by: Kate Lovett

    Polina Cherkasova — DraggableScrollableActuator should dispose notifier.
    #133917 merged on September 6, 2023 — Small: 1 comment over 4 days, 18 additions and 6 deletions in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — RenderParagraph should dispose instances of SelectableFragments.
    #133915 merged on September 5, 2023 — Small: 6 comments over 3 days, 2 additions and 4 deletions in 2 files
    Reviewed by: Renzo Olivares

    Polina Cherkasova — MinimumTextContrastGuideline should dispose image.
    #133861 merged on September 6, 2023 — Small: 3 comments over 5 days, 5 additions and 2 deletions in 2 files
    Reviewed by: Renzo Olivares

    Polina Cherkasova — SegmentedButton should not create new MaterialStatesController in every build.
    #133949 merged on September 5, 2023 — Small: 6 comments over 1 day, 40 additions and 24 deletions in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — Fix not disposed items in Cupertino app and route.
    #134085 merged on September 6, 2023 — Small: 5 comments over 15 hours, 21 additions and 3 deletions in 3 files
    Reviewed by: Navaron Bracke, Renzo Olivares

    This week features another tidal wave of leak detection and leak fixing. Huge thanks to the huge effort from developer Polina Cherkasova and reviewer Chun-Heng Tai.

Notable Commits: 2023 August 25th - September 1st

  • Renzo Olivares — Fix context menu button color on Android when textButtonTheme is set
    #133271 merged on August 28, 2023 — Small: 7 comments over 4 days, 74 additions and 0 deletions in 2 files
    Reviewed by: Justin McCandless

    "Enhances readability" would be an understatement.

    Before After
    Screenshot 2023-08-24 at 1 17 25 PM Screenshot 2023-08-24 at 1 15 35 PM
  • Taha Tesser — Fix cursorColor with an opacity is not respected
    #133548 merged on August 31, 2023 — Small: 2 comments over 2 days, 30 additions and 2 deletions in 2 files
    Reviewed by: Justin McCandless

    Translucent TextField cursors are now OK.

    Before

    Screenshot 2023-08-29 at 14 57 57

    After

    Screenshot 2023-08-29 at 14 58 20

  • chunhtai — Adds a parent scope TraversalEdgeBehavior and fixes modal route to not trap the focus
    #130841 merged on September 1, 2023 — Small: 22 comments over 1 month, 250 additions and 35 deletions in 8 files
    Reviewed by: Greg Spencer

    Previously, it was not possible to navigate using the tab key when using nested Navigators.

  • Andrea Cioni — Add an example for InputChip generated by user input
    #130645 merged on September 1, 2023 — Medium: 71 comments over 1 month, 441 additions and 0 deletions in 3 files
    Reviewed by: Taha Tesser, Justin McCandless, Hans Muller

    An important example that shows how to do text input with chips.

    Screenshot 2023-09-01 at 12 17 58 PM

  • Taha Tesser — Add cancelButtonStyle & confirmButtonStyle to the DatePickerThemeData
    #132847 merged on August 30, 2023 — Small: 3 comments over 1 week, 85 additions and 12 deletions in 4 files
    Reviewed by: Hans Muller

    You couldn't do this before. Now you can. Although think about it first.

    Screenshot 2023-08-18 at 16 42 00

  • Taha Tesser — Fix cancelButtonStyle & confirmButtonStyle properties from TimePickerTheme aren't working
    #132843 merged on August 30, 2023 — Small: 1 comment over 1 week, 114 additions and 44 deletions in 3 files
    Reviewed by: Hans Muller

    Now you can also apply your style to all of the time pickers' cancel and confirm buttons

    Before

    Screenshot 2023-08-18 at 14 57 37

    After

    Screenshot 2023-08-18 at 14 57 18

  • Bruno Leroux — Fix MaterialState.pressed is missing when pressing button with keyboard
    #133558 merged on September 1, 2023 — Small: 8 comments over 2 days, 62 additions and 2 deletions in 2 files
    Reviewed by: Greg Spencer

    Enables consistent feedback for mouse or keyboard presses.

  • Hans Muller — Added DropdownMenuEntry.labelWidget
    #133491 merged on August 29, 2023 — Small: 9 comments over 1 day, 259 additions and 2 deletions in 4 files
    Reviewed by: Michel Feinstein, Greg Spencer, Navaron Bracke, Taha Tesser

    If you need more control over menu label Text that might wrap, or you just want abitrary menu labels, now you're good.

  • Mark O'Sullivan — Fixed PaginatedDataTable not using dataRowMinHeight and dataRowMaxHeight from Theme
    #133634 merged on September 1, 2023 — Small: 18 comments over 2 days, 37 additions and 5 deletions in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    PaginatedDataTable will now make use of dataRowMinHeight and dataRowMaxHeight from the Theme

  • Salmanul Farisi.M. — added option to change color of heading row(Paginated datatable widget cannot give color to table header #132428)
    #132728 merged on August 28, 2023 — Small: 4 comments over 1 week, 35 additions and 0 deletions in 2 files
    Reviewed by: Chris Bracken, Hans Muller, chunhtai

    Because improved readability is improved usability.

    Before

    Screenshot (302)

    After

    Screenshot (300)

  • Bruno Leroux — Expose barrierDismissible in PageRoute constructor
    #133659 merged on August 30, 2023 — Small: 1 comment over 6 hours, 55 additions and 2 deletions in 4 files
    Reviewed by: Greg Spencer

    Now you can escape a route via the Esc key.

  • Jonah Williams — [framework] use ImageFilter for stretch overscroll.
    #133613 merged on August 31, 2023 — Small: 2 comments over 1 day, 26 additions and 1 deletion in 2 files
    Reviewed by: Kate Lovett

    Rather than changing the size of the child elements (relaying out text and potentially changing glyph shape and position due to pixel snapping), apply the stretch effect as a compositing effect - render the children to a texture and stretch the texture. Watch the videos with fullscreen to see the difference.

    Before

    no_patch.mp4

    After

    patch.mp4
  • Taha Tesser — Fix DatePickerDialog & DateRangePickerDialog overflow when resized from landscape to portrait
    #133327 merged on August 28, 2023 — Small: 1 comment over 3 days, 64 additions and 11 deletions in 3 files
    Reviewed by: Hans Muller

    Corrects an ugly date picker overflow.

    Before

    before.mov

    After

    after.mov
  • gmilou — Add an example showing how to use a MatrixTransition.
    #132874 merged on August 25, 2023 — Small: 16 comments over 6 days, 139 additions and 1 deletion in 3 files
    Reviewed by: Taha Tesser, Kate Lovett

    Opens up a world of possibilities. NICE.

    Screen.Recording.2023-09-01.at.11.49.17.AM.mov
  • Kate Lovett — Remove deprecated onPlatformMessage from TestWindow and TestPlatformDispatcher
    #133183 merged on August 25, 2023 — Small: 3 comments over 2 days, 0 additions and 30 deletions in 1 file
    Reviewed by: Michael Goderbauer

    Kate Lovett — Remove deprecated androidOverscrollIndicator from ScrollBehaviors
    #133181 merged on August 25, 2023 — Small: 10 comments over 2 days, 32 additions and 218 deletions in 7 files
    Reviewed by: Hans Muller

    Deprecated APIs are eventually removed. See Flutter Deprecations Removed after 3.13.

  • Polina Cherkasova — _FocusTraversalGroupNode should communicate creation in constructor.
    #133717 merged on August 31, 2023 — Small: 3 comments over 17 hours, 5 additions and 1 deletion in 1 file
    Reviewed by: chunhtai

    Polina Cherkasova — Fix one notDisposed leak and mark another.
    #133595 merged on August 29, 2023 — Small: 3 comments over 2 hours, 15 additions and 2 deletions in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — FocusNode and FocusManager should dispatch creation in constructor.
    #133490 merged on August 28, 2023 — Small: 2 comments over 3 hours, 76 additions and 17 deletions in 4 files
    Reviewed by: Victoria Ashworth

    Polina Cherkasova — _ResetNotifier should communicate creation in constructor.
    #133716 merged on August 31, 2023 — Small: 3 comments over 17 hours, 5 additions and 0 deletions in 1 file
    Reviewed by: chunhtai

    Polina Cherkasova — PlatformRouteInformationProvider should dispatch creation in constructor.
    #133492 merged on August 28, 2023 — Small: 2 comments over 2 hours, 21 additions and 1 deletion in 3 files
    Reviewed by: Victoria Ashworth

    Polina Cherkasova — _RawAutocompleteState should dispose _highlightedOptionIndex.
    #133700 merged on August 30, 2023 — Small: 2 comments over 1 hour, 4 additions and 1 deletion in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — ShortcutManager should dispatch creation in constructor.
    #133487 merged on August 29, 2023 — Small: 5 comments over 22 hours, 22 additions and 9 deletions in 3 files
    Reviewed by: chunhtai

    Polina Cherkasova — Cover more tests with leak tracking.
    #133596 merged on August 29, 2023 — Small: 1 comment over 45 minutes, 6 additions and 6 deletions in 1 file
    Reviewed by: chunhtai

    Polina Cherkasova — FocusNode and FocusManager should dispatch creation in constructor.
    #133352 merged on August 28, 2023 — Small: 2 comments over 2 days, 76 additions and 17 deletions in 4 files
    Reviewed by: chunhtai

    Polina Cherkasova — Mark leak in _DraggableScrollableSheetState.
    #133693 merged on August 31, 2023 — Small: 2 comments over 3 hours, 7 additions and 2 deletions in 1 file
    Reviewed by: chunhtai

    Polina Cherkasova — Test cover more tests with leak tracking.
    #133828 merged on September 1, 2023 — Small: 1 comment over 14 hours, 87 additions and 74 deletions in 7 files
    Reviewed by: chunhtai

    Polina Cherkasova — Test cover more tests with leak tracking.
    #133712 merged on August 31, 2023 — Small: 1 comment over 18 hours, 30 additions and 23 deletions in 4 files
    Reviewed by: chunhtai

    Polina Cherkasova — PlatformRouteInformationProvider should dispatch creation in constructor.
    #133353 merged on August 28, 2023 — Small: 1 comment over 2 days, 21 additions and 1 deletion in 3 files
    Reviewed by: chunhtai

    Polina Cherkasova — ShortcutManager should dispatch creation in constructor.
    #133356 merged on August 28, 2023 — Small: 1 comment over 2 days, 22 additions and 7 deletions in 2 files
    Reviewed by: chunhtai

    Polina Cherkasova — Make Route dispatching memory events.
    #133721 merged on August 31, 2023 — Small: 17 comments over 23 hours, 52 additions and 2 deletions in 3 files
    Reviewed by: Jacob Richman, chunhtai

    Kostia Sokolovskyi — Cover some test/widgets tests with leak tracking
    #133767 merged on August 31, 2023 — Small: 9 comments over 41 minutes, 143 additions and 118 deletions in 12 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — ScrollController creation dispatching for memory leaks tracking
    #133759 merged on August 31, 2023 — Small: 2 comments over 3 hours, 217 additions and 59 deletions in 9 files
    Reviewed by: Polina Cherkasova

    Renzo Olivares — Fixing memory leak in EditableTextState
    #131377 merged on August 30, 2023 — Small: 4 comments over 1 month, 5 additions and 13 deletions in 2 files
    Reviewed by: Polina Cherkasova

    This has been a huge week for potential leak tracking and actual leak fixing.

  • Matej Knopp — [macOS] Implement unobstructed platform views
    #42960 merged on August 31, 2023 — Large: 52 comments over 2 months, 872 additions and 13 deletions in 14 files
    Reviewed by: Loïc Sharma, Chris Bracken

    More efficient rendering for platform views.

    surface-debug.mov
  • Chris Bracken — [macOS] Link __availability_version_check
    #45333 merged on August 31, 2023 — Small: 8 comments over 1 hour, 27 additions and 1 deletion in 2 files
    Reviewed by: Ian Hickson, Zachary Anderson

    Fixed a recent problem that could cause "Mac App Store submission rejected due to references to __availability_version_check" errors.

  • yaakovschectman — Add callback to Embedder API to respond to new channel listeners, and use for Windows lifecycle
    #44827 merged on August 29, 2023 — Small: 36 comments over 1 week, 269 additions and 24 deletions in 31 files
    Reviewed by: Loïc Sharma, Chris Bracken

    The engine provides a callback that enables graceful exit per the app lifecycle when the platform and lifecycle channels are listened to.

  • Pierrick Bouvier — Introduce architecture subdirectory for Windows build
    #131843 merged on August 31, 2023 — Large: 73 comments over 4 weeks, 563 additions and 40 deletions in 23 files
    Reviewed by: Chris Bracken, Loïc Sharma, Christopher Fujino, yaakovschectman

    Paving the way for Windows ARM-64 support.

  • Greg Spencer — Add doxygen doc generation.
    #131356 merged on August 29, 2023 — Small: 10 comments over 1 month, 135 additions and 36 deletions in 9 files
    Reviewed by: Christopher Fujino

    Doxygen docs for iOS, macOS, Linux, Windows, and Impeller.

Notable Commits: 2023 August 11th - August 25th

  • Taha Tesser — Fix FlexibleSpaceBar.title doesn't respect the leading widget
    #132573 merged on August 22, 2023 — Small: 5 comments over 1 week, 105 additions and 2 deletions in 3 files
    Reviewed by: Hans Muller

    Centered AppBar titles now wrap where you'd expect them to when a leading widget is present.

    Before After
    Screenshot 2023-08-15 at 18 11 34 Screenshot 2023-08-15 at 18 11 45
  • Kate Lovett — Fix visual overflow for SliverMainAxisGroup
    #132989 merged on August 22, 2023 — Small: 1 comment over 5 hours, 5 additions and 0 deletions in 2 files
    Reviewed by: Taha Tesser

    Fixed a clipping problem with SliverMainAxisGroup.

  • Taha Tesser — Update default menu text styles for Material 3
    #131930 merged on August 22, 2023 — Small: 10 comments over 2 weeks, 159 additions and 28 deletions in 8 files
    Reviewed by: Hans Muller, Greg Spencer

    Sync up menu text styles with the Material 3 spec. Also: this week's winner for most attractive use of colored arrows in a PR description.

    dropdown_item

    ... etc

    Default DropdownMenu Input text style

    Screenshot 2023-08-04 at 16 48 28

    Default DropdownMenu menu item text style

    Screenshot 2023-08-04 at 16 50 19

    Default MenuAnchor menu item text style

    Screenshot 2023-08-04 at 14 34 28

  • fzyzcjy — When resized network image has error, all future unrelated images using the same url will fail, even if the network becomes OK
    #127456 merged on August 21, 2023 — Small: 45 comments over 2 months, 132 additions and 8 deletions in 4 files
    Reviewed by: Dan Field, Michael Goderbauer

    Networking failures can recover.

  • Taha Tesser — Fix Chip.shape's side is not used when provided in Material 3
    #132941 merged on August 25, 2023 — Small: 7 comments over 4 days, 127 additions and 8 deletions in 4 files
    Reviewed by: Hans Muller

    If you specify a side we'll use it, otherwise we'll use the shape's side.

    Before

    When RawChip.shape is provided with a BorderSide.

          body: Center(
            child: RawChip(
              shape: RoundedRectangleBorder(
                side: BorderSide(color: Colors.amber),
                borderRadius: BorderRadius.all(Radius.circular(12)),
              ),
              label: Text('Chip'),
            ),
          ),

    Screenshot 2023-08-24 at 17 54 54

    When RawChip.shape is provided with a BorderSide and also RawChip.side is provided. The RawChip.side overrides the shape's side.

          body: Center(
            child: RawChip(
              shape: RoundedRectangleBorder(
                side: BorderSide(color: Colors.amber),
                borderRadius: BorderRadius.all(Radius.circular(12)),
              ),
              side: BorderSide(color: Colors.red),
              label: Text('Chip'),
            ),
          ),

    Screenshot 2023-08-24 at 17 55 37


    After

    When RawChip.shape is provided with a BorderSide.

          body: Center(
            child: RawChip(
              shape: RoundedRectangleBorder(
                side: BorderSide(color: Colors.amber),
                borderRadius: BorderRadius.all(Radius.circular(12)),
              ),
              label: Text('Chip'),
            ),
          ),

    Screenshot 2023-08-24 at 17 51 29

    When RawChip.shape is provided with a BorderSide and also RawChip.side is provided. The RawChip.side overrides the shape's side.

          body: Center(
            child: RawChip(
              shape: RoundedRectangleBorder(
                side: BorderSide(color: Colors.amber),
                borderRadius: BorderRadius.all(Radius.circular(12)),
              ),
              side: BorderSide(color: Colors.red),
              label: Text('Chip'),
            ),
          ),

    Screenshot 2023-08-24 at 17 52 31


  • Taha Tesser — Fix PopupMenuItem with a ListTile doesn't use the correct style.
    #133141 merged on August 25, 2023 — Small: 1 comment over 2 days, 168 additions and 11 deletions in 2 files
    Reviewed by: Hans Muller

    Now the style of the ListTile's title match the menu item.

    Before After
    Screenshot 2023-08-23 at 14 08 48 Screenshot 2023-08-23 at 14 08 32
  • Henry Riehl — Add hover duration for Inkwell widget
    #132176 merged on August 24, 2023 — Small: 11 comments over 2 weeks, 35 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless, Hans Muller

    Now you can specify how long the InkWell waits before declaring "hover".

  • LongCatIsLooong — Remove ImageProvider.load, DecoderCallback and PaintingBinding.instantiateImageCodec
    #132679 merged on August 24, 2023 — Medium: 5 comments over 1 week, 75 additions and 345 deletions in 18 files
    Reviewed by: Kate Lovett

    Kate Lovett — Remove deprecated PlatformViewsService.synchronizeToNativeViewHierarchy
    #133175 merged on August 23, 2023 — Small: 1 comment over 4 hours, 0 additions and 7 deletions in 1 file
    Reviewed by: Michael Goderbauer

    Kate Lovett — Remove deprecated MaterialButtonWithIconMixin
    #133173 merged on August 23, 2023 — Small: 1 comment over 4 hours, 0 additions and 18 deletions in 2 files
    Reviewed by: Hans Muller

    Part of Remove Deprecated API that has reached EOL after Flutter 3.13 #133171.

  • Justin McCandless — Docs on iOS's directional quote characters
    #132869 merged on August 21, 2023 — Small: 2 comments over 2 days, 8 additions and 0 deletions in 1 file
    Reviewed by: Michael Goderbauer

    iOS is ever so clever about quote characters. We must be equally clever to stay in sync with them.

  • Justin McCandless — Fix memory leak in Form
    #132987 merged on August 22, 2023 — Small: 0 comments over 21 hours, 7 additions and 3 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Always happy to see a leak plugged, even a small one.

  • Tomasz Gucio — Dispose overlay entries
    #132826 merged on August 25, 2023 — Small: 8 comments over 1 week, 23 additions and 16 deletions in 8 files
    Reviewed by: Justin McCandless

    Another potential leak stopped.

  • Bernardo Ferrari — Improve and optimize non-uniform Borders.
    #124417 merged on August 17, 2023 — Small: 62 comments over 4 months, 153 additions and 58 deletions in 4 files
    Reviewed by: Ian Hickson, Greg Spencer

    1 image...image

    Borderline improvement for borders.

  • Andrey Suvorov — fixes l10n for CupertinoDatePicker in monthYear mode
    #130934 merged on August 18, 2023 — Small: 17 comments over 4 weeks, 96 additions and 7 deletions in 5 files
    Reviewed by: Chris Bracken, Justin McCandless, Mitchell Goodwin

    Gets the date right for all locales.

    Before image image After image image
  • Greg Spencer — Fixing a memory leak in About box/dialog overlays
    #130842 merged on August 15, 2023 — Small: 23 comments over 3 weeks, 27 additions and 34 deletions in 4 files
    Reviewed by: Polina Cherkasova

    Plugs a leak detected by our new general purpose leak detector.

  • Taha Tesser — Update menu examples for SafeArea
    #132390 merged on August 14, 2023 — Small: 1 comment over 3 days, 79 additions and 7 deletions in 10 files
    Reviewed by: Greg Spencer

    Keeps menus out of the notch.

    Group 2

  • Kate Lovett — Fix extent for null returning builder in GridView
    #132511 merged on August 15, 2023 — Small: 3 comments over 1 day, 48 additions and 7 deletions in 2 files
    Reviewed by: Taha Tesser

    When the delegate returns null, we've reached the end.

  • Chinmoy — Update Scrollable on ScrollBehaviour change.
    #131164 merged on August 17, 2023 — Small: 18 comments over 3 weeks, 113 additions and 0 deletions in 2 files
    Reviewed by: Dampfwalze, Kate Lovett, chunhtai, Justin McCandless

    It's now safe to change the ScrollBehavior at runtime.

  • pdblasi-google — Updates AutomatedTestWidgetsFlutterBinding.pump to support microsecond precision
    #132401 merged on August 14, 2023 — Small: 5 comments over 3 days, 21 additions and 4 deletions in 3 files
    Reviewed by: Kate Lovett

    That's right, now you can pump for _micro_seconds.

  • Tong Mu — Explain the keyboard manager protocol
    #132533 merged on August 15, 2023 — Small: 1 comment over 1 day, 34 additions and 6 deletions in 1 file
    Reviewed by: Kate Lovett

    Maybe you've wondered about the keyboard manager protocol? Now you can read the full story.

  • LouiseHsu — [Framework] Add Share to selection controls
    #132599 merged on August 17, 2023 — Large: 17 comments over 2 days, 1108 additions and 285 deletions in 175 files
    Reviewed by: Justin McCandless, hellohuanlin

    Now you can share like a native on iOS.

    Simulator.Screen.Recording.-.iPhone.14.Pro.Max.-.2023-08-09.at.18.47.02.mp4
  • gmilou — Add a new MatrixTransition and refactor ScaleTransition and RotationT…
    #131084 merged on August 18, 2023 — Medium: 18 comments over 3 weeks, 215 additions and 88 deletions in 2 files
    Reviewed by: Michael Goderbauer, Kate Lovett, chunhtai

    Looking forward to seeing some of examples of the MatrixTransition in action!

  • Ian Hickson — Allow date pickers to not have selected date
    #132343 merged on August 17, 2023 — Large: 6 comments over 1 week, 343 additions and 213 deletions in 5 files
    Reviewed by: Hans Muller

    If the initialDate is null then - initially - there will be no selected date.

  • Renzo Olivares — Selection area should move selection word by word on a long press drag
    #132518 merged on August 14, 2023 — Small: 1 comment over 2 hours, 5 additions and 4 deletions in 2 files
    Reviewed by: chunhtai

    If you know what long-press-drag does, now it will do what you expect.

  • Polina Cherkasova — Fix not-disposed _InputBorderGap.
    #132694 merged on August 16, 2023 — Small: 3 comments over 1 hour, 2 additions and 5 deletions in 2 files
    Reviewed by: Michael Goderbauer, Greg Spencer

    We continue to appreciate the loss of leaks.

  • Renzo Olivares — Triple tap selection should not move beyond text boundary at the tapped location
    #132357 merged on August 16, 2023 — Small: 1 comment over 5 days, 234 additions and 9 deletions in 3 files
    Reviewed by: Justin McCandless

    Corrects a triple-tap (paragraph) select corner case.

  • Renzo Olivares — SelectionArea on iOS should toggle the context menu when tapping on the previous selection
    #132851 merged on August 18, 2023 — Small: 6 comments over 7 hours, 86 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless, chunhtai

    Another tweak to ensure that Flutter always respects users' muscle memory.

    Screen.Recording.2023-08-18.at.2.34.33.AM.mov
  • Kate Lovett — Fix lower bound of children from TwoDimensionalChildBuilderDelegate
    #132713 merged on August 17, 2023 — Small: 1 comment over 2 hours, 17 additions and 13 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Fixes an empty viewport case.

  • Renzo Olivares — Add double click and double click + drag gestures to SelectionArea
    #124817 merged on August 11, 2023 — Large: 84 comments over 4 months, 685 additions and 50 deletions in 7 files
    Reviewed by: Justin McCandless, chunhtai

    Adds double click to select a word and double click + drag to select word by word.

    Screen.Recording.2023-04-25.at.11.03.35.AM.mov
  • Tong Mu — Move Rasterizer::Draw's discard_callback to Delegate
    #44813 merged on August 23, 2023 — Small: 6 comments over 5 days, 62 additions and 62 deletions in 5 files
    Reviewed by: Dan Field, Chinmay Garde, Loïc Sharma

    A simple refactor that unearthed a race condition in the engine.

  • Loïc Sharma — [Windows] Allow overwriting the cache's Dart SDK archive license file
    #132669 merged on August 17, 2023 — Small: 11 comments over 22 hours, 119 additions and 3 deletions in 2 files
    Reviewed by: Christopher Fujino, yaakovschectman

    Flutter tool update was broken. Was cherry-picked to 3.14 beta.

  • Loïc Sharma — [Embedder] Refactor how semantic updates are mapped
    #44553 merged on August 11, 2023 — Large: 3 comments over 1 day, 313 additions and 222 deletions in 6 files
    Reviewed by: yaakovschectman

    Progress towards allowing desktop embedders to properly announce localized strings.

  • Tong Mu — Basic view management for engine classes
    #42991 merged on August 17, 2023 — Large: 121 comments over 1 month, 872 additions and 336 deletions in 34 files
    Reviewed by: Loïc Sharma, Dan Field

    Adds view management to all engine classes that need it. View management basically means AddView and RemoveView methods, and most importantly, how to handle the implicit view.

    The following two graphs show the difference between initializing with/without the implicit view and creating regular views.

    image image

    image`

Notable Commits: 2023 August 4th - August 11th

  • LouiseHsu — [framework] Add Search Web to selection controls for iOS
    #131898 merged on August 8, 2023 — Large: 10 comments over 4 days, 1122 additions and 241 deletions in 176 files
    Reviewed by: Justin McCandless, hellohuanlin

    Launch a web search based on the selected text, just the way you can with a native iOS app.

    Simulator.Screen.Recording.-.iPhone.14.Pro.Max.-.2023-08-03.at.15.39.56.mp4
  • Justin McCandless — Predictive back support for root routes
    #120385 merged on August 4, 2023 — Extra large: 152 comments over 5 months, 3241 additions and 302 deletions in 36 files
    Reviewed by: chunhtai

    Lets you know when you're backing out of an Android app.

  • pdblasi-google — Adds SemanticsNode Finders for searching the semantics tree
    #127137 merged on August 10, 2023 — Extra large: 233 comments over 2 months, 2037 additions and 709 deletions in 14 files
    Reviewed by: Michael Goderbauer, Bartek Pacia

    Introduces find.semantics among many other improvements to testing framework.

  • Victoria Ashworth — New tooling for iOS 17 physical devices
    #131865 merged on August 9, 2023 — Extra large: 102 comments over 6 days, 7587 additions and 160 deletions in 39 files
    Reviewed by: Lau Ching Jun, Christopher Fujino

    Enables iOS 17 development. Check the PR for details.

  • Kate Lovett — Keep alive support for 2D scrolling
    #131641 merged on August 10, 2023 — Large: 25 comments over 1 week, 514 additions and 30 deletions in 4 files
    Reviewed by: chunhtai

    Now staying alive in 2D.

  • Kate Lovett — Move mock canvas to flutter_test
    #131631 merged on August 7, 2023 — Large: 16 comments over 1 week, 304 additions and 327 deletions in 139 files
    Reviewed by: pdblasi-google

    Many Flutter repo tests check rendering using the mock canvas. Now all apps can do this.

  • Taha Tesser — Fix DropdownButtonFormField input border clipping
    #131481 merged on August 10, 2023 — Small: 4 comments over 1 week, 128 additions and 2 deletions in 2 files
    Reviewed by: Navaron Bracke, Qun Cheng

    Another genuine corner case resolved.

    Before After
    Screenshot 2023-07-28 at 17 06 20 Screenshot 2023-07-28 at 17 06 38
  • Aakash Pamnani — Paginated Data Table : Fixed Row number at footer in last page
    #130389 merged on August 8, 2023 — Small: 17 comments over 3 weeks, 132 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless, Kate Lovett

    Ensures that the bottom line is correct.

    Before After
    image image
  • Tae Hyung Kim — Update material and cupertino localizations
    #131212 merged on August 9, 2023 — Extra large: 24 comments over 2 weeks, 2914 additions and 1576 deletions in 221 files
    Reviewed by: Hady Saleh, Hans Muller, Tomasz Gucio

    Adds Russian translations for "No replacements Found" and many other l10n updates.

  • Taha Tesser — Fix PopupMenuItem & CheckedPopupMenuItem has redundant ListTile padding and update default horizontal padding for Material 3
    #131609 merged on August 10, 2023 — Small: 4 comments over 1 week, 197 additions and 11 deletions in 3 files
    Reviewed by: Hans Muller

    Popup menu item layout is now more correct and objectively better looking.

    Before After
    Screenshot 2023-07-31 at 17 17 08 Screenshot 2023-07-31 at 17 17 25
  • Justin McCandless — Android context menu theming and visual update
    #131816 merged on August 7, 2023 — Small: 10 comments over 4 days, 204 additions and 9 deletions in 4 files
    Reviewed by: Qun Cheng

    Now you can see the Android context menu in the dark (mode).

    Before After
    Screenshot 2023-08-07 at 11 51 10 AM Screenshot 2023-08-07 at 11 45 37 AM
  • Taha Tesser — Add PopupMenuButton.iconColor, PopupMenuTheme.iconSize and fix button icon using unexpected color property
    #132054 merged on August 8, 2023 — Small: 2 comments over 1 day, 108 additions and 44 deletions in 4 files
    Reviewed by: Qun Cheng

    Added 'PopupMenuButton.iconColor' and PopupMenuTheme.iconSize.

  • xhzq233 — CupertinoContextMenu improvement
    #131030 merged on August 7, 2023 — Small: 21 comments over 2 weeks, 85 additions and 9 deletions in 2 files
    Reviewed by: Justin McCandless, Mitchell Goodwin

    Resolves a years-old issue with gesture recognizers in Cupertino menu items.

  • Ian Hickson — More PageStorage clarity in the documentation
    #131954 merged on August 8, 2023 — Small: 1 comment over 4 days, 55 additions and 18 deletions in 8 files
    Reviewed by: Michael Goderbauer

    Ian Hickson — setState documentation
    #132090 merged on August 10, 2023 — Small: 7 comments over 2 days, 68 additions and 2 deletions in 2 files
    Reviewed by: HBS, Kate Lovett

    Ian Hickson — An example of parentData usage.
    #131818 merged on August 10, 2023 — Medium: 2 comments over 1 week, 447 additions and 18 deletions in 4 files
    Reviewed by: Kate Lovett

    Ian Hickson — Sample code for ImageProvider
    #131952 merged on August 9, 2023 — Small: 12 comments over 5 days, 178 additions and 24 deletions in 7 files
    Reviewed by: Michael Goderbauer

    Ian Hickson — More documentation about warm-up frames
    #132085 merged on August 8, 2023 — Small: 6 comments over 20 hours, 24 additions and 0 deletions in 1 file
    Reviewed by: Loïc Sharma

    Ian Hickson — GridView sample code
    #131900 merged on August 10, 2023 — Small: 9 comments over 6 days, 278 additions and 16 deletions in 4 files
    Reviewed by: Taha Tesser

    Many improvements to the API docs from Flutter's TL.

  • Qun Cheng — Add textCapitalization property for SearchBar and SearchAnchor
    #131459 merged on August 8, 2023 — Small: 4 comments over 1 week, 148 additions and 1 deletion in 5 files
    Reviewed by: Hans Muller

    So you can configure the SearchBar's text field textCapitalization property.

  • LongCatIsLooong — Making TextPainter rounding hack disabled by default
    #132094 merged on August 10, 2023 — Large: 8 comments over 2 days, 486 additions and 471 deletions in 34 files
    Reviewed by: Justin McCandless, Hans Muller

    Progress: we're disabling something with "hack" in its name. Part of an important but difficult transition in the implementation.

  • Michael Goderbauer — Analyze code snippets in integration_test docs
    #132314 merged on August 10, 2023 — Small: 1 comment over 4 hours, 6 additions and 3 deletions in 3 files
    Reviewed by: pdblasi-google

    Michael Goderbauer — Analyze code snippets in flutter_test docs
    #132246 merged on August 10, 2023 — Small: 3 comments over 22 hours, 128 additions and 146 deletions in 15 files
    Reviewed by: Greg Spencer, pdblasi-google

    Makes syntax mistakes much less likely in API doc code fragments.

  • Renzo Olivares — TextField should correctly resolve provided style for material states
    #132330 merged on August 10, 2023 — Small: 2 comments over 1 hour, 37 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless

    Maybe you wanted to change a text field's padding depending on its enabled/focused/etc state? Now you can.

  • Renzo Olivares — Add an example for TapAndPanGestureRecognizer
    #131873 merged on August 9, 2023 — Small: 5 comments over 6 days, 233 additions and 0 deletions in 3 files
    Reviewed by: Justin McCandless

    Demonstrates the value of one of the new compound gesture recognizers.

  • Chris Bracken — [macOS] Fix engine/binaryMessenger retain cycle
    #44471 merged on August 8, 2023 — Small: 5 comments over 17 hours, 43 additions and 6 deletions in 3 files
    Reviewed by: Loïc Sharma, Greg Spencer, gaaclarke

    There can be leaks in Flutter's engine. This was a leak of the entire engine.

  • yaakovschectman — Reintroduce Windows lifecycle with guard for posthumous OnWindowStateEvent
    #44344 merged on August 10, 2023 — Large: 21 comments over 6 days, 673 additions and 18 deletions in 25 files
    Reviewed by: Chris Bracken, Loïc Sharma

    No app lifecycle events if the app is no longer alive.

Notable Commits: 2023 July 28th - August 4th

  • LouiseHsu — [framework] Add Look Up to selection controls for iOS
    #131798 merged on August 2, 2023 — Large: 3 comments over 1 hour, 1094 additions and 246 deletions in 175 files
    Reviewed by: hellohuanlin

    The text input toolbar now sports a "lookup" option on iOS. Just like the native one does.

    Simulator.Screen.Recording.-.iPhone.14.Pro.Max.-.2023-07-11.at.15.23.56.mp4
  • Qun Cheng — Add Expanded/Collapsed State for Semantics
    #131233 merged on July 31, 2023 — Small: 1 comment over 6 days, 201 additions and 17 deletions in 10 files
    Reviewed by: chunhtai

    Now cascading menus are fully accessible.

  • Taha Tesser — Fix Scrollable TabBar for Material 3
    #131409 merged on August 2, 2023 — Large: 5 comments over 5 days, 967 additions and 95 deletions in 6 files
    Reviewed by: Kate Lovett

    Now the Scrollable tabs divider spans its tab bar and we respect TabAlignment

    Before After
    Screenshot 2023-07-27 at 14 12 36 Screenshot 2023-07-27 at 14 13 12
  • Jonah Williams — [framework] lerp images in a save layer.
    #131703 merged on August 2, 2023 — Small: 5 comments over 1 day, 165 additions and 0 deletions in 2 files
    Reviewed by: Ian Hickson

    Stops the background from leaking into the blend.

    Before After
    flutter_02 flutter_03
  • Daniel Chevalier — Fix for endless recursion for getLayoutExplorerNode on a Tooltip
    #131486 merged on August 2, 2023 — Small: 4 comments over 4 days, 64 additions and 6 deletions in 2 files
    Reviewed by: Jacob Richman

    Fixes a stack overflow crash that could be caused by inspecting a Tooltip.

  • Alex Li — 🐛 Treat empty ARB content as empty map when decoding
    #131242 merged on August 1, 2023 — Small: 11 comments over 6 days, 57 additions and 16 deletions in 2 files
    Reviewed by: Kate Lovett, Tae Hyung Kim

    The gen-l10n tool now understands empty arb files.

  • Justin McCandless — Replace TextField.canRequestFocus with TextField.focusNode.canRequestFocus
    #130164 merged on August 2, 2023 — Small: 5 comments over 3 weeks, 44 additions and 11 deletions in 4 files
    Reviewed by: Qun Cheng

    A small breaking change to eliminate a little focus API redundancy.

  • Qun Cheng — Deprecate useMaterial3 parameter in ThemeData.copyWith()
    #131455 merged on July 28, 2023 — Small: 2 comments over 13 hours, 25 additions and 1 deletion in 4 files
    Reviewed by: Pierre-Louis

    A new assert to catch a common error.

Notable Commits: 2023 July 21st - July 28th

  • Daniel Chevalier — Shared state to support multi screen inspection
    #129452 merged on July 28, 2023 — Small: 40 comments over 1 month, 162 additions and 75 deletions in 3 files
    Reviewed by: Jacob Richman, Michael Goderbauer

    Some support for multi-view from the widget inspector. Here's a demo.

    Screen.Recording.2023-07-10.at.4.26.37.PM2.mov
  • Bruno Leroux — Fix floating SnackBar throws when FAB is on the top
    #129274 merged on July 24, 2023 — Small: 8 comments over 1 month, 87 additions and 7 deletions in 3 files
    Reviewed by: Kate Lovett

    Restores the peace between snackbars on the bottom and FABs on the top.

    image

  • Ian Hickson — ImageDecoration.lerp (ImageDecoration.lerp #130533)
    #131349 merged on July 26, 2023 — Large: 1 comment over 5 hours, 612 additions and 59 deletions in 11 files
    Reviewed by: Kate Lovett
    Ian Hickson — ImageDecoration.lerp
    #130533 merged on July 26, 2023 — Large: 4 comments over 1 week, 612 additions and 59 deletions in 11 files
    Reviewed by: Michael Goderbauer

    Resolves a 6 year old feature request. We wish there was a demo.

  • Taha Tesser — Fix M3 TimePicker dial background uses incorrect color
    #131045 merged on July 24, 2023 — Small: 2 comments over 3 days, 76 additions and 5 deletions in 5 files
    Reviewed by: Hans Muller

    Now you can see the time picker's dial.

    Default dial background color

    Before After

    Custom color scheme

    Before After
  • Taha Tesser — Fix RawChip doesn't use ChipTheme.showCheckmark value
    #131257 merged on July 25, 2023 — Small: 2 comments over 2 hours, 63 additions and 3 deletions in 2 files
    Reviewed by: Hans Muller

    If you want RawChip checkmarks you'll have to ask for them.

    Before After
    before after
  • Alex Li — 🚀 Expose scrollControlDisabledMaxHeightRatio to the modal bottom sheet
    #129688 merged on July 25, 2023 — Small: 14 comments over 3 weeks, 93 additions and 10 deletions in 2 files
    Reviewed by: Renzo Olivares

    The default ratio is 9/16. Same as it ever was.

  • Taha Tesser — Add CheckedPopupMenuItem‎.labelTextStyle and update default text style for Material 3
    #131060 merged on July 28, 2023 — Small: 1 comment over 1 week, 178 additions and 9 deletions in 3 files
    Reviewed by: Hans Muller

    Checked popup menu items now get the text style you want. And the style can depend on the item's state.

    Customized textTheme.labelLarge text theme.

    Before After

    New CheckedPopupMenuItem‎.labelTextStyle parameter with material states support

  • Taha Tesser — Fix TimePicker defaults for hourMinuteTextStyle and dayPeriodTextColor for Material 3
    #131253 merged on July 28, 2023 — Small: 4 comments over 3 days, 52 additions and 78 deletions in 4 files
    Reviewed by: Greg Spencer

    Animated GIF screenshots elided for your sanity.

  • Tae Hyung Kim — Optimize SliverMainAxisGroup/SliverCrossAxisGroup paint function
    #129310 merged on July 24, 2023 — Small: 7 comments over 1 month, 162 additions and 4 deletions in 4 files
    Reviewed by: Kate Lovett

    Now we only paint visible slivers.

  • Sabin Neupane — [DropdownMenu] Close menu after editing is complete
    #130710 merged on July 24, 2023 — Small: 4 comments over 1 week, 29 additions and 3 deletions in 2 files
    Reviewed by: Kate Lovett, Qun Cheng

    If you submit nothing the menu will go away.

    close_dropdown_menu.mp4
  • Seiya Kokushi — Proposal to add barrier configs for showDatePicker, showTimePicker and showAboutDialog.
    #131306 merged on July 27, 2023 — Large: 9 comments over 1 day, 564 additions and 14 deletions in 7 files
    Reviewed by: Justin McCandless, Hans Muller

    Dialog parameters have been plumbed through to the show-dialog convenience methods.

  • Ian Hickson — IgnoreBaseline widget
    #131220 merged on July 27, 2023 — Small: 10 comments over 2 days, 142 additions and 3 deletions in 5 files
    Reviewed by: Justin McCandless

    Author fulfills a request made by the author SEVEN years ago.

  • Ian Hickson — Document the Flow/Opacity/hit-test issues
    #131239 merged on July 26, 2023 — Small: 1 comment over 1 day, 124 additions and 11 deletions in 3 files
    Reviewed by: Michael Goderbauer

    More work in the issues attic.

  • Dan Field — Add example for locking screen orientation in a letterboxing environment
    #131266 merged on July 25, 2023 — Small: 13 comments over 7 hours, 74 additions and 1 deletion in 2 files
    Reviewed by: Michael Goderbauer, Zachary Anderson

    Take a look, particularly if you're targeting a foldable device.

  • Lexycon — Fix material date picker behavior when changing year
    #130486 merged on July 24, 2023 — Small: 5 comments over 1 week, 42 additions and 4 deletions in 3 files
    Reviewed by: Hans Muller, Taha Tesser

  • Caffeinix — Reorders menu item button shortcuts on Mac-like platforms
    #129309 merged on July 26, 2023 — Small: 5 comments over 1 month, 72 additions and 36 deletions in 2 files
    Reviewed by: Greg Spencer, chunhtai

    On macOS we now display the modifier keys in menu shortcuts per Apple's HIG. For example the menu item below now looks like this: Reticulate Splines       ⌃⎇⇧⌘S

    MenuItemButton(
      shortcut: SingleActivator(
        LogicalKeyboardKey.keyS,
        control: true,
        meta: true,
        shift: true,
        alt: true,
      ),
      child: Text('Reticulate Splines'),
    ),
  • Qun Cheng — Preliminary PR for engine changes for Expanded/Collapsed Submenu button
    #131359 merged on July 27, 2023 — Small: 3 comments over 22 hours, 2 additions and 2 deletions in 2 files
    Reviewed by: chunhtai

    Part of the work needed to make cascading menus fully accessible.

Notable Commits: 2023 July 7th - July 21st

  • Hans Muller — Change the default forThemeData.useMaterial3 to true
    #129724 merged on July 13, 2023 — Small: 3 comments over 2 weeks, 1 addition and 1 deletion in 1 file
    Reviewed by: Qun Cheng

    The latest colors and text styles are now the default.

    image

  • Michael Goderbauer — Stand-alone widget tree with multiple render trees to enable multi-view rendering
    #125003 merged on July 17, 2023 — Extra large: 132 comments over 3 months, 4595 additions and 534 deletions in 57 files
    Reviewed by: Loïc Sharma, Tong Mu, Greg Spencer

    Enables Flutter to generate multiple Scenes to be rendered into separate FlutterViews from a single widget tree. Each Scene is described by a separate render tree, which are all associated with the single widget tree. This is a big step towards supporting multi-view and then multiple top level windows.

  • Taha Tesser — Fix iconTheme in AppBar doesn't apply custom Colors.white in the dark mode for M3
    #130574 merged on July 18, 2023 — Small: 6 comments over 3 days, 179 additions and 39 deletions in 5 files
    Reviewed by: Qun Cheng

    Now you'll get the foreground color you asked for when it's dark.

    Before

    Screenshot 2023-07-14 at 18 40 58

    After

    Screenshot 2023-07-14 at 18 41 04

  • Tae Hyung Kim — Relax syntax for gen-l10n
    #130736 merged on July 18, 2023 — Small: 8 comments over 1 day, 143 additions and 6 deletions in 7 files
    Reviewed by: Hans Muller

    Optional backwards (bug) compatibility for long-time users of the gen_l10n tool.

  • LongCatIsLooong — Replaces textScaleFactor with TextScaler
    #128522 merged on July 17, 2023 — Extra large: 144 comments over 1 month, 1696 additions and 457 deletions in 85 files
    Reviewed by: Justin McCandless, chunhtai, Michael Goderbauer

    Deprecate textScaleFactor in favor of textScaler, in preparation for Android 14 Non-linear font scaling.

  • Taha Tesser — Fix DatePicker uses incorrect overlay color from DatePickerTheme and add missing tests
    #130584 merged on July 17, 2023 — Small: 3 comments over 2 days, 283 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Now you'll get the overlay color you asked for.

    Before After
    Screenshot 2023-07-14 at 18 39 51 Screenshot 2023-07-14 at 18 38 32 ]
  • Hans Muller — Updated the ThemeData API example
    #130954 merged on July 20, 2023 — Small: 3 comments over 20 hours, 159 additions and 61 deletions in 3 files
    Reviewed by: Qun Cheng

    A star is born.

    Light Dark
    Screenshot 2023-07-19 at 4 52 58 PM   Screenshot 2023-07-19 at 4 54 26 PM
  • Pierre-Louis — Add support for M3 motion
    #129942 merged on July 19, 2023 — Medium: 7 comments over 2 weeks, 407 additions and 1 deletion in 10 files
    Reviewed by: Qun Cheng

    A step towards getting the motion curves and durations just right for M3.

  • Hans Muller — Updated ThemeData.useMaterial3 API doc, default is true
    #130764 merged on July 18, 2023 — Small: 4 comments over 17 hours, 11 additions and 17 deletions in 1 file
    Reviewed by: Pierre-Louis, Qun Cheng

    We changed the default but forgot to say so in the API doc.

  • Greg Spencer — Add applyFocusChangeIfNeeded, have menus restore focus before activating
    #130536 merged on July 20, 2023 — Small: 10 comments over 6 days, 140 additions and 50 deletions in 9 files
    Reviewed by: Qun Cheng

    Enables creating menu items, like copy and paste, that operate on the focused widget.

  • Taha Tesser — Fix chip delete button tap target spilling into the label.
    #130896 merged on July 20, 2023 — Small: 1 comment over 18 hours, 55 additions and 8 deletions in 2 files
    Reviewed by: Greg Spencer

    Gets an edge case right.

    Before After
    Screen.Recording.2023-07-19.at.15.38.10.mov
    Screen.Recording.2023-07-19.at.15.37.30.mov
  • Greg Spencer — Add lint check to make sure samples are linked and have tests
    #130523 merged on July 18, 2023 — Large: 1 comment over 4 days, 689 additions and 42 deletions in 7 files
    Reviewed by: Pierre-Louis

    Ensures that new examples follow the rules.

  • LongCatIsLooong — Allow OverlayPortal to be added/removed from the tree in a layout callback
    #130670 merged on July 17, 2023 — Small: 1 comment over 1 day, 59 additions and 10 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Fixes a tooltip crash.

  • Bruno Leroux — Fix IconButton leaks its internal MaterialStatesController
    #130720 merged on July 20, 2023 — Small: 12 comments over 2 days, 37 additions and 11 deletions in 2 files
    Reviewed by: Qun Cheng

    Plugging a leak is always notable.

  • LongCatIsLooong — Prevent InputDecorator from supplying its descendants with non-normalized constraints
    #130460 merged on July 17, 2023 — Small: 4 comments over 4 days, 44 additions and 16 deletions in 2 files
    Reviewed by: Renzo Olivares

    Fixes a crash that could occur when the user hit the phone's power button.

  • Greg Price — Make AbstractNode-derived docs more specific on RenderObject et al.
    #130689 merged on July 17, 2023 — Small: 2 comments over 18 hours, 44 additions and 32 deletions in 3 files
    Reviewed by: Ian Hickson

    RenderObject is now just a little easier to understand.

  • Ian Hickson — Document that you can't change initialRoute usefully
    #130450 merged on July 20, 2023 — Small: 1 comment over 1 week, 8 additions and 0 deletions in 2 files
    Reviewed by: chunhtai

    Resolves a 6 year old issue.

  • lsaudon — Tap on button behind snack bar defined by margin
    #127959 merged on July 14, 2023 — Small: 16 comments over 1 month, 182 additions and 0 deletions in 2 files
    Reviewed by: Bruno Leroux, Justin McCandless

    Snackbars that specified a margin could obscure pointer/touch events that landed in the margin.

  • Qun ChengDropdownMenu can be expanded to its parent size
    #129753 merged on July 11, 2023 — Small: 12 comments over 1 week, 183 additions and 84 deletions in 2 files
    Reviewed by: Hans Muller

    More control over a Dropdown menu's overall size.

  • Taha Tesser — Add Badge widget to NavigationBar and NavigationRail examples
    #129834 merged on July 11, 2023 — Small: 4 comments over 1 week, 142 additions and 33 deletions in 4 files
    Reviewed by: Hans Muller

    With apologies to Humphrey Bogart, we did need badges.

    Preview Preview Preview
  • Robert Ancell — Add Linux implementation of the platform view example
    #123731 merged on July 11, 2023 — Medium: 10 comments over 3 months, 429 additions and 1 deletion in 6 files
    Reviewed by: Chris Bracken

    Platform views are appearing on all platforms.

    Screenshot from 2023-03-30 12-37-21

  • Tae Hyung Kim — Refactor refresh_indicator.1.dart to not use shrinkwrap
    #129377 merged on July 11, 2023 — Small: 5 comments over 2 weeks, 24 additions and 11 deletions in 1 file
    Reviewed by: Kate Lovett

    We discourage developers from using shrinkWrap. We shouldn't use it either.

  • Tae Hyung Kim — Use platform specific line separator in gen-l10n
    #130090 merged on July 12, 2023 — Small: 7 comments over 6 days, 64 additions and 15 deletions in 3 files
    Reviewed by: Christopher Fujino

    If you want CR LF line endings because Windows, you can have them.

  • Darshan Rander — fix: ExpansionTileTheme.shape assignment in ExpansionTile
    #127749 merged on July 11, 2023 — Small: 18 comments over 1 month, 2 additions and 2 deletions in 2 files
    Reviewed by: Hans Muller, Taha Tesser

    Now ExpansionTile's have the shape you asked for.

  • chunhtai — Unifies text field focus management in desktops
    #129652 merged on July 13, 2023 — Small: 7 comments over 2 weeks, 36 additions and 6 deletions in 3 files
    Reviewed by: Yegor

    Now unfocusing a text field works better on the web.

  • LongCatIsLooong — Exclude Tooltip's overlay child from SelectableRegion
    #130181 merged on July 13, 2023 — Small: 6 comments over 5 days, 115 additions and 24 deletions in 4 files
    Reviewed by: chunhtai

    The contents of tooltips within a SelectableRegion can't be selected (anymore).

  • Tong Mu — Make updating window metrics multi-view
    #43366 merged on July 8, 2023 — Medium: 26 comments over 1 week, 228 additions and 73 deletions in 28 files
    Reviewed by: Michael Goderbauer, Loïc Sharma

    More progress towards a multi-view future.

Notable Commits: 2023 June 30th - July 7th

Notable Commits: 2023 June 16th - June 30th

  • Bruno Leroux — Add InputDecorator.error to allow error message customization
    #129275 merged on June 28, 2023 — Small: 4 comments over 1 week, 77 additions and 10 deletions in 2 files
    Reviewed by: Justin McCandless

    Now you can go fully custom and provide your own error widget.

  • Taha Tesser — Fix NavigationDrawer selected item has wrong icon color
    #129625 merged on June 30, 2023 — Small: 1 comment over 2 days, 39 additions and 10 deletions in 4 files
    Reviewed by: hangyu

    Now they're matchy matchy.

    Before

    Screenshot 2023-06-27 at 13 24 38

    After

    Screenshot 2023-06-27 at 13 24 25
  • Taha Tesser — Fix AnimatedList & AnimatedGrid doesn't apply MediaQuery padding
    #129556 merged on June 26, 2023 — Small: 1 comment over 2 hours, 169 additions and 7 deletions in 3 files
    Reviewed by: Hans Muller

    Layout safety consistency for AnimatedList,Grid. And don't miss the superb widget diagrams in the PR.

    Before

    Before preview image

    After

    After preview image

  • Luccas Clezar — iOS TextSelectionToolbar fidelity
    #127757 merged on June 27, 2023 — Large: 69 comments over 1 month, 445 additions and 275 deletions in 6 files
    Reviewed by: Justin McCandless, Mitchell Goodwin, Tomasz Gucio

    Now we're even closer to iOS native. Some nice work from @luccasclezar.

    Version Video
    Flutter Old
    old.mov
    Flutter New
    new.mov
    Native
    native.mov
  • Tomasz Gucio — Remove Editable.onCaretChanged callback
    #109114 merged on June 27, 2023 — Small: 42 comments over 10 months, 80 additions and 57 deletions in 4 files
    Reviewed by: Justin McCandless, LongCatIsLooong, chunhtai

    Deconvolves some of EditableText's selection logic.

  • Justin McCandless — RTL InputDecoration fix
    #129661 merged on June 28, 2023 — Small: 0 comments over 1 day, 31 additions and 1 deletion in 2 files
    Reviewed by: LongCatIsLooong

    Fixes a 5 year old (!) issue.

    Before Screenshot from 2023-06-27 13-10-48
    After Screenshot from 2023-06-27 13-11-11
  • Taha Tesser — Add DatePickerTheme.inputDecorationTheme for the DatePicker with input mode.
    #128950 merged on June 28, 2023 — Small: 5 comments over 1 week, 142 additions and 14 deletions in 3 files
    Reviewed by: Hans Muller

    Apps now have full control over the appearance of the compact date picker's text field.

  • Tae Hyung Kim — Add locale-specific DateTime formatting syntax
    #129573 merged on June 29, 2023 — Small: 1 comment over 2 days, 228 additions and 47 deletions in 8 files
    Reviewed by: Hans Muller

    It's now possible to specify date format strings per locale.

  • pdblasi-google — Removes deprecated APIs from AnimationBuilder
    #129657 merged on June 28, 2023 — Small: 2 comments over 1 day, 1 addition and 235 deletions in 2 files
    Reviewed by: Michael Goderbauer

    The natural order of things, per https://docs.flutter.dev/resources/compatibility#deprecation-policy.

  • Qun Cheng — Make DropdownMenu be able to scroll to the highlighted item when searching.
    #129740 merged on June 30, 2023 — Small: 8 comments over 1 day, 49 additions and 3 deletions in 2 files
    Reviewed by: Hans Muller

    Automatically scroll to make the first matching item visible.

  • hangyu — Fix chinese text is not selected by long press
    #129320 merged on June 27, 2023 — Small: 1 comment over 5 days, 29 additions and 1 deletion in 2 files
    Reviewed by: chunhtai

    Fixed a common problem for chinese text input.

  • Jonah Williams — [framework] ensure flexible space bar fades when scrolling.
    #129527 merged on June 28, 2023 — Small: 5 comments over 2 days, 33 additions and 1 deletion in 2 files
    Reviewed by: Michael Goderbauer

  • Loïc Sharma — Automatically migrate ClipboardData.text to non-null
    #129567 merged on June 27, 2023 — Small: 1 comment over 1 day, 22 additions and 0 deletions in 3 files
    Reviewed by: Michael Goderbauer

    Automatic fixology for a small breaking change.

  • Taha Tesser — Fix Material 3 Scrollable TabBar
    #125974 merged on June 22, 2023 — Large: 49 comments over 1 month, 624 additions and 43 deletions in 6 files
    Reviewed by: Kate Lovett, Hans Muller

    Fixes the default alignment of tabs, and the tab bar divider's width.

    Before After
    Screenshot 2023-05-05 at 19 04 40 Screenshot 2023-05-05 at 19 04 15
  • Tae Hyung Kim — DecoratedSliver
    #127823 merged on June 20, 2023 — Large: 46 comments over 3 weeks, 781 additions and 0 deletions in 8 files
    Reviewed by: Navaron Bracke, Kate Lovett

    Now you can add borders and backgrounds to slivers.

  • Taha Tesser — Introduce MaterialState color property for chips
    #128584 merged on June 19, 2023 — Large: 17 comments over 1 week, 1271 additions and 138 deletions in 16 files
    Reviewed by: Hans Muller

    The new MaterialStateProperty<Color> color for chips makes it possible to customize the chip's background color for any state or combination of states.

  • Paurakh Sharma Humagain — fix: Inconsistency of SelectionArea when scrolling
    #128765 merged on June 23, 2023 — Small: 15 comments over 1 week, 77 additions and 2 deletions in 2 files
    Reviewed by: Renzo Olivares, chunhtai

    Scrolling a SelectionArea's selection now works as you'd expect when the selection moves in and out of view.

  • Justin McCandless — Fix: Magnifier appears and won't dismiss
    #128545 merged on June 20, 2023 — Small: 12 comments over 1 week, 98 additions and 8 deletions in 2 files
    Reviewed by: LongCatIsLooong, Renzo Olivares

    Fixes a case where the magnication would not stop.

  • Renzo Olivares — Selection area right click behavior should match native
    #128224 merged on June 21, 2023 — Large: 34 comments over 2 weeks, 503 additions and 12 deletions in 6 files
    Reviewed by: chunhtai

    Updates SelectableRegions right-click gesture to match native platform behavior. On all of the native platforms.

  • Taha Tesser — Fix InputDecoration.applyDefaults ignoring some properties
    #129010 merged on June 19, 2023 — Small: 7 comments over 2 days, 101 additions and 17 deletions in 2 files
    Reviewed by: Hans Muller

    Corrects a sin of omission.

  • Qun Cheng — Add onSubmitted property to SearchBar
    #129365 merged on June 22, 2023 — Small: 1 comment over 2 hours, 26 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Notifies the app when you'd expect.

  • Swaroop S — Adding ScrollController support for Stepper widget
    #128814 merged on June 20, 2023 — Small: 11 comments over 6 days, 41 additions and 0 deletions in 2 files
    Reviewed by: Taha Tesser

    So that you can initialize the scroll offset.

  • Md. Yeasin Sheikh — fixed PreferredSize constuctor invocations
    #128181 merged on June 20, 2023 — Small: 13 comments over 2 weeks, 1 addition and 1 deletion in 1 file
    Reviewed by: Taha Tesser, Michael Goderbauer

    A little tweak that will help with IDE autocomplete.

  • Loïc Sharma — Add CallbackShortcuts widget of the week video
    #129296 merged on June 23, 2023 — Small: 2 comments over 2 days, 2 additions and 0 deletions in 1 file
    Reviewed by: Michael Goderbauer

    Do not miss the new video.

  • Victor Ohashi — fix: SearchAnchor View not resizing when in nested navigator
    #128357 merged on June 22, 2023 — Small: 4 comments over 2 weeks, 46 additions and 1 deletion in 2 files
    Reviewed by: Qun Cheng, Renzo Olivares

  • Ahmed Elsayed — Remove unnecessary variable _hasPrimaryFocus
    #129066 merged on June 22, 2023 — Small: 12 comments over 4 days, 2 additions and 19 deletions in 1 file
    Reviewed by: Qun Cheng, Taha Tesser

  • Masatoshi Tsushima — Fix: Closing bottom sheet and removing FAB cause assertion failure
    #128566 merged on June 22, 2023 — Small: 13 comments over 1 week, 61 additions and 4 deletions in 2 files
    Reviewed by: Kate Lovett, Taha Tesser

  • LongCatIsLooong — Relax OverlayPortal asserts
    #129053 merged on June 21, 2023 — Medium: 3 comments over 3 days, 289 additions and 96 deletions in 5 files
    Reviewed by: Michael Goderbauer

  • Pierre-Louis — Remove incorrect non-nullable assumption from ShapeDecoration.lerp
    #129298 merged on June 21, 2023 — Small: 1 comment over 3 hours, 9 additions and 1 deletion in 2 files
    Reviewed by: Michael Goderbauer

  • Justin McCandless — Gracefully handle negative position in getWordAtOffset
    #128464 merged on June 21, 2023 — Small: 6 comments over 2 weeks, 55 additions and 5 deletions in 2 files
    Reviewed by: LongCatIsLooong

  • Renzo Olivares_TapStatusTrackerMixin should wait until the next PointerDownEvent before resetting its state when the tap timer has elapsed
    #129312 merged on June 23, 2023 — Small: 5 comments over 1 day, 95 additions and 1 deletion in 3 files
    Reviewed by: Justin McCandless

  • Taha Tesser — Fix Slider overlay remains when unfocused
    #129115 merged on June 22, 2023 — Small: 3 comments over 3 days, 29 additions and 20 deletions in 2 files
    Reviewed by: Kate Lovett

  • Taha Tesser — Add InputDecorationTheme.merge
    #129011 merged on June 22, 2023 — Small: 3 comments over 6 days, 145 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Like ButtonStyle.merge.

  • Leigha Jarett — Add to API docs to explain what Assist and Suggestion chips are
    #129034 merged on June 20, 2023 — Small: 3 comments over 3 days, 16 additions and 0 deletions in 1 file
    Reviewed by: Taha Tesser

    Just in case there was any confusion.

Notable Commits: 2023 June 9th - June 16th

  • Taha Tesser — Update ListTile text defaults to use ColorScheme
    #128581 merged on June 12, 2023 — Small: 4 comments over 3 days, 27 additions and 19 deletions in 4 files
    Reviewed by: Pierre-Louis

    Now the M3 ListTile text color defaults are based on the ColorScheme's onSurface and onSurfaceVariant colors.

    Before After
    Screenshot 2023-06-09 at 17 47 04 Screenshot 2023-06-09 at 17 46 17
  • Mouad Debbar — [web] Pass creation params to the platform view factory
    #128146 merged on June 15, 2023 — Small: 8 comments over 1 week, 57 additions and 6 deletions in 3 files
    Reviewed by: David Iglesias

    Now it's possible to pass creation parameters to platform view factories directly from HtmlElementView.

  • Ian Hickson — ContextAction.isEnabled needs a context
    #127721 merged on June 14, 2023 — Small: 11 comments over 2 weeks, 148 additions and 52 deletions in 5 files
    Reviewed by: Greg Spencer

    Various small cleanups and a little Dart3 in new method ActionDispatcher.invokeActionIfEnabled().

  • cruiser-baxter — Fixed slider value indicator not disappearing after a bit on desktop platform when slider is clicked not dragged
    #128137 merged on June 14, 2023 — Small: 23 comments over 1 week, 51 additions and 2 deletions in 2 files
    Reviewed by: Kate Lovett, Taha Tesser

    Slider clicks don't hide the value indicator (anymore).

  • Kate Lovett — Fix paint offset in reverse for 2D
    #128724 merged on June 12, 2023 — Small: 4 comments over 3 hours, 10 additions and 9 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Fixes a reversed 2D scrolling problem.

  • Michael Goderbauer — Remove AbstractNode from RenderObject and deprecate it
    #128973 merged on June 16, 2023 — Medium: 2 comments over 19 hours, 193 additions and 152 deletions in 25 files
    Reviewed by: Jonah Williams

    Michael Goderbauer — Inline AbstractNode into SemanticsNode and Layer
    #128467 merged on June 14, 2023 — Small: 4 comments over 6 days, 204 additions and 49 deletions in 3 files
    Reviewed by: Jonah Williams

    Farewell, AbstractNode! 🫡

  • Qun Cheng — Set Semantics.button to true for date widget
    #128824 merged on June 15, 2023 — Small: 3 comments over 1 day, 33 additions and 0 deletions in 3 files
    Reviewed by: chunhtai

    Improves DatePicker a11y.

  • nt4f04uNd — Fix RangeSlider notifies start and end twice when participates in gesture arena
    #128674 merged on June 12, 2023 — Small: 1 comment over 16 hours, 46 additions and 6 deletions in 3 files
    Reviewed by: Taha Tesser

    Fixed a problem that cropped up when RangeSlider was used in a modal bottom sheet.

  • Kate Lovett — Fix ensureVisible and default focus traversal for reversed scrollables
    #128756 merged on June 13, 2023 — Small: 2 comments over 15 hours, 279 additions and 2 deletions in 2 files
    Reviewed by: Greg Spencer

    Corrected automatic focus traversal for reversed scrollables.

    Before After
    Screen.Recording.2023-06-12.at.5.44.07.PM.mov
    Screen.Recording.2023-06-12.at.5.51.53.PM.mov
  • Jonah Williams — [flutter_tools] pass through enable impeller flag to macOS.
    #128720 merged on June 12, 2023 — Small: 7 comments over 1 hour, 81 additions and 2 deletions in 3 files
    Reviewed by: Christopher Fujino

    Now you can try the new Impeller graphics backend on macOS.

  • hangyu — Add Selected semantics to IconButton
    #128547 merged on June 9, 2023 — Small: 3 comments over 20 hours, 60 additions and 1 deletion in 2 files
    Reviewed by: Qun Cheng

    IconButton's isSelected value is now visible to screen readers.

  • chunhtai — Clarifies semantics long press and semantics on tap documentation
    #128599 merged on June 9, 2023 — Small: 1 comment over 2 hours, 17 additions and 2 deletions in 2 files
    Reviewed by: hangyu

    Updates the semantics onLongPress API doc per a request from about 5 years ago.

  • Taha Tesser — Replace MaterialButton from test classes
    #128466 merged on June 9, 2023 — Small: 1 comment over 1 day, 32 additions and 28 deletions in 6 files
    Reviewed by: Hans Muller

    Because MaterialButton (and RawMaterialButton) are on their way out.

  • Tong Mu — Use ShellTest::Config struct to create Shell
    #42332 merged on June 11, 2023 — Medium: 15 comments over 2 weeks, 232 additions and 155 deletions in 7 files
    Reviewed by: Dan Field

    A little extra flexibility as part of the overall MultiView effort.

Notable Commits: 2023 June 2nd - June 9th

  • Tae Hyung Kim — Sliver Main Axis Group
    #126596 merged on June 8, 2023 — Large: 28 comments over 4 weeks, 1006 additions and 0 deletions in 5 files
    Reviewed by: Kate Lovett

    Now the slivers in a list can contain sublists - "groups" - with headers that stick to the top of the group.

  • Kate Lovett — Fix update drag error that made NestedScrollView un-scrollable
    #127718 merged on June 5, 2023 — Medium: 17 comments over 1 week, 323 additions and 22 deletions in 2 files
    Reviewed by: nt4f04uNd, xubaolin, Michael Goderbauer

    Fixed NINE issues and partially addressed one more! The root of the problem was that - sometimes - a NestedScrollView would incorrectly calculate whether or not there was enough content to allow drag scrolling.

  • Greg Spencer — Add AppLifecycleListener, with support for application exit handling
    #123274 merged on June 8, 2023 — Large: 60 comments over 2 months, 900 additions and 58 deletions in 14 files
    Reviewed by: Michael Goderbauer

    Greg Spencer — Reland: "Adding app lifecycle notification for macOS and Linux, add hidden state." ([IOS13][flutter run] ios-display issue / module importing failed #40542)
    #42418 merged on May 30, 2023 — Large: 1 comment over 5 hours, 1113 additions and 134 deletions in 28 files
    Reviewed by: Chris Bracken

    Adds AppLifecycleListener for listening to lifcycle changes and responding to requests to exit the application.

    Application Lifecycle Diagram

  • Renzo Olivares — handleSelectWord in MultiSelectableSelectionContainerDelegate should handle rects inside of rects
    #127478 merged on June 6, 2023 — Small: 29 comments over 1 week, 76 additions and 4 deletions in 3 files
    Reviewed by: chunhtai, Justin McCandless

    Making a new selection within an existing selection could cause a crash.

  • Pierre-Louis — Improve defaults generation with logging, stats, and token validation
    #128244 merged on June 9, 2023 — Extra large: 9 comments over 3 days, 1422 additions and 389 deletions in 78 files
    Reviewed by: Qun Cheng

    Improves the tooling used to turn Material Design token data into code.

  • fzyzcjy — Show error message in release mode when box is not laid out without losing performance
    #126302 merged on June 7, 2023 — Small: 13 comments over 4 weeks, 1 addition and 1 deletion in 1 file
    Reviewed by: Ian Hickson, Michael Goderbauer, Kate Lovett

    Makes it a little easier to debug crashes that occur in release mode.

  • LongCatIsLooong — Remove textScaleFactor dependent logic from AppBar
    #128112 merged on June 6, 2023 — Medium: 11 comments over 4 days, 230 additions and 120 deletions in 4 files
    Reviewed by: Hans Muller, Pierre-Louis, Taha Tesser

    We're gradually removing textScaleFactor-dependent logic from the framework.

  • Tong Mu — Remove single view assumption from MouseTracker, and unify its hit testing code flow
    #127060 merged on June 9, 2023 — Small: 33 comments over 3 weeks, 76 additions and 47 deletions in 5 files
    Reviewed by: Ian Hickson, Michael Goderbauer

    Part of the project to ready Flutter for multiple windows.

  • Kate Lovett — Remove scrollbar deprecations isAlwaysShown and hoverThickness
    #127351 merged on June 5, 2023 — Medium: 5 comments over 2 weeks, 127 additions and 322 deletions in 9 files
    Reviewed by: Tae Hyung Kim

    Deprecated API must eventually go way, see Flutter's Deprecation Policy.

  • Devin — ExpansionPanel isExpanded callback parameter (Ticket 74114)
    #128082 merged on June 9, 2023 — Small: 29 comments over 1 week, 106 additions and 11 deletions in 3 files
    Reviewed by: Justin McCandless, Kate Lovett

    So that you can stay in sync with the opening and closing of an ExpansionPanel.

  • Mahdi Bagheri — Navigator.pop before PopupMenuItem onTap call
    #127446 merged on June 8, 2023 — Small: 13 comments over 2 weeks, 45 additions and 2 deletions in 2 files
    Reviewed by: Qun Cheng, chunhtai

    Fixes a problem that could prevent a PopupMenuButton from popping up its menu.

  • LongCatIsLooong — Disable blinking cursor when EditableText.showCursor is false
    #127562 merged on June 8, 2023 — Small: 12 comments over 2 weeks, 62 additions and 14 deletions in 2 files
    Reviewed by: Justin McCandless, chunhtai

    Improves the performance of read-only TextFields.

  • hellohuanlin — [floating_cursor_selection]add more comments on the tricky part
    #127227 merged on June 8, 2023 — Small: 6 comments over 2 weeks, 20 additions and 3 deletions in 2 files
    Reviewed by: Callum Moffat

    Makes the EditableText code a little more readable.

  • Michael Goderbauer — Add viewId to PointerEvents
    #128287 merged on June 7, 2023 — Small: 7 comments over 1 day, 213 additions and 54 deletions in 15 files
    Reviewed by: Tong Mu

    Michael Goderbauer — MultiView changes for dart:ui
    #42493 merged on June 2, 2023 — Small: 9 comments over 1 day, 229 additions and 29 deletions in 11 files
    Reviewed by: Loïc Sharma

    In a world with multiple views, we need to know which view events occurred in.

  • Leigha Jarett — Adding migration guide for Material 3 colors
    #128429 merged on June 8, 2023 — Small: 9 comments over 1 day, 85 additions and 4 deletions in 2 files
    Reviewed by: Hans Muller

    Leigha Jarett — Update menu API docs to help developers migrate to m3
    #128351 merged on June 7, 2023 — Small: 1 comment over 18 hours, 210 additions and 2 deletions in 4 files
    Reviewed by: Hans Muller

    Leigha Jarett — Advise developers to use OverflowBar instead of ButtonBar
    #128437 merged on June 8, 2023 — Small: 1 comment over 1 day, 31 additions and 0 deletions in 1 file
    Reviewed by: Hans Muller

    Leigha Jarett — Adding example for migrating to navigation drawer
    #128295 merged on June 6, 2023 — Small: 3 comments over 20 hours, 66 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Leigha Jarett — Migration guide for moving from BottomNavigationBar to NavigationBar
    #128263 merged on June 6, 2023 — Small: 1 comment over 10 hours, 50 additions and 20 deletions in 3 files
    Reviewed by: Hans Muller

    These changes will help developers migrate from Material 2 to Material 3 (soon to be the default!).

  • Bruno Leroux — Fix navigation rail with long labels misplaced highlights
    #128324 merged on June 8, 2023 — Small: 5 comments over 2 days, 85 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Fixed a problem with highlights that could occur when the destination labels were long.

    Before After
    flutter_128005_before.mp4
    flutter_128005_after.mp4
  • hangyu — Paint SelectableFragments before text
    #128375 merged on June 9, 2023 — Small: 1 comment over 2 days, 27 additions and 12 deletions in 3 files
    Reviewed by: chunhtai

    The highlight color for a text selection now stays the same, even if it's overridden with TextSelectionTheme.

  • Greg Spencer — Disable context menu
    #128365 merged on June 7, 2023 — Small: 5 comments over 23 hours, 56 additions and 11 deletions in 2 files
    Reviewed by: Hans Muller

    Update the MenuAchor example: disable the browser's context menu when Flutter provides one.

  • Taha Tesser — Fix showBottomSheet doesn't remove scrim when draggable sheet is dismissed
    #128455 merged on June 9, 2023 — Small: 1 comment over 1 day, 48 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Prevents the bottom sheet's scrim from getting stuck.

  • Michael Goderbauer — Migrate SemanticsBinding to onSemanticsActionEvent
    #128254 merged on June 5, 2023 — Small: 2 comments over 2 hours, 20 additions and 56 deletions in 4 files
    Reviewed by: Loïc Sharma

    Michael Goderbauer — MultiView changes for dart:ui
    #42493 merged on June 2, 2023 — Small: 9 comments over 1 day, 229 additions and 29 deletions in 11 files
    Reviewed by: Loïc Sharma

    More progress towards multiple windows.

  • fzyzcjy — Fix Null check operator used on a null value on TextField with contextMenuBuilder
    #128114 merged on June 6, 2023 — Small: 7 comments over 4 days, 46 additions and 2 deletions in 2 files
    Reviewed by: Justin McCandless, Renzo Olivares

    Fixed a TextField context menu problem that was discovered by monkeying around with Flutter.

  • ZhulanovAA — Add tooltips for SegmentedButton
    #128501 merged on June 9, 2023 — Small: 2 comments over 1 day, 68 additions and 1 deletion in 2 files
    Reviewed by: chunhtai, Hans Muller

    Now each segment can have its own tooltip.

  • Qun Cheng — Text should still be centered when search bar height is less than 48
    #128068 merged on June 2, 2023 — Small: 6 comments over 5 hours, 30 additions and 4 deletions in 2 files
    Reviewed by: Justin McCandless, Hans Muller, Taha Tesser

    Narrow down your search bar, the text will stay in the center.

  • Chris Bracken — [macOS] Add platformview creation parameter support
    #42607 merged on June 7, 2023 — Small: 9 comments over 17 hours, 70 additions and 13 deletions in 5 files
    Reviewed by: stuartmorgan, Chris Yang

    Now you can pass constructor arguments to the NSView subclass that implements the macOS platform view.

  • Chris Bracken — [macOS] Top-left origin for PlatformView container
    #42523 merged on June 2, 2023 — Small: 7 comments over 2 hours, 65 additions and 7 deletions in 2 files
    Reviewed by: Matej Knopp, Greg Spencer

    Now a macOS platform view's NSView origin is in the top left (y increases downwards) where we all expect it to be.

  • Matej Knopp — [macOS] Force clipping to path when platform view clip rect is rotated
    #42539 merged on June 6, 2023 — Small: 2 comments over 2 days, 75 additions and 10 deletions in 2 files
    Reviewed by: Chris Bracken

    MacOS platform views can be rotated. Now they're clipped correctly too.

    Before

    rect-clip-wrong.mov

    After

    clip-rect-right.mov

Notable Commits: 2023 May 26th - June 2nd

  • Kate Lovett — TwoDimensional scrolling foundation
    #125437 merged on May 26, 2023 — Extra large: 210 comments over 1 month, 5224 additions and 9 deletions in 11 files
    Reviewed by: Michael Goderbauer

    Introduces a new API that enables scrolling for two dimensional data like tables and trees. More at https://flutter.dev/go/2D-Foundation.

  • Taha Tesser — Add FilterChip.elevated, ChoiceChip.elevated, & ActionChip.elevated variants
    #128049 merged on June 1, 2023 — Large: 1 comment over 7 hours, 1096 additions and 87 deletions in 10 files
    Reviewed by: Hans Muller

    Adds missing elevated chip variants. (See ElevatedAssistChip for example).

    Enabled Disabled
    Screenshot 2023-06-01 at 18 33 00 Screenshot 2023-06-01 at 18 33 03
    Selected Enabled Selected Disabled
    Screenshot 2023-06-01 at 18 33 08 Screenshot 2023-06-01 at 18 33 06
  • Tae Hyung Kim — Fix gen-l10n format: true so that it applies to when it gets called via build target
    #127886 merged on May 31, 2023 — Small: 9 comments over 1 day, 110 additions and 34 deletions in 5 files
    Reviewed by: Christopher Fujino

    If you asked for dart format to be applied to the generated l10n code, we'll do so. No matter how the tool is started.

  • Tae Hyung Kim — Fix SliverPersistentHeader interactions with SliverCrossAxisGroup
    #127338 merged on May 31, 2023 — Medium: 12 comments over 1 week, 350 additions and 22 deletions in 2 files
    Reviewed by: Kate Lovett

    Fixed a case where a SliverPersistentHeader within a SliverCrossAxisGroup was misplaced. Now everything ends up where it belongs.

    Screen.Recording.2023-05-22.at.11.44.36.AM.mov
  • hangyu — Add a FocusSemanticEvent
    #126171 merged on May 31, 2023 — Small: 27 comments over 3 weeks, 77 additions and 0 deletions in 2 files
    Reviewed by: Todd Volkert, Michael Goderbauer, chunhtai

    hangyu — Handle a11y focus event on Ios and android
    #41777 merged on May 30, 2023 — Small: 35 comments over 3 weeks, 157 additions and 8 deletions in 7 files
    Reviewed by: Victoria Ashworth, Camille Simon, chunhtai

    It's not possible to set the accessibility focus directly.

  • Greg Spencer — Fix handling of AppLifecycleState.hidden
    #127987 merged on May 31, 2023 — Small: 0 comments over 2 hours, 22 additions and 0 deletions in 4 files
    Reviewed by: Casey Hillers

    Fixed a crash that could occur on macOS on an app lifecycle change.

  • fzyzcjy — Add retry flag to flutter_test
    #125851 merged on June 1, 2023 — Small: 14 comments over 1 month, 22 additions and 2 deletions in 3 files
    Reviewed by: Michael Goderbauer, pdblasi-google

    Now you can ask the test framework to try again.

  • Renzo Olivares — Fix bottom sheet rebuilding when tapping
    #127526 merged on May 31, 2023 — Small: 13 comments over 6 days, 215 additions and 45 deletions in 4 files
    Reviewed by: Justin McCandless

    Now you can (optionally) ensure that it's not a drag until the user moves a little.

  • chunhtai — Increases the eyeballed value of auto scroll velocity scalar
    #127410 merged on May 30, 2023 — Small: 3 comments over 1 week, 56 additions and 10 deletions in 4 files
    Reviewed by: Kate Lovett

    Faster auto-scrolling.

  • Qun Cheng — Text should still be centered when search bar height is less than 48
    #128068 merged on June 2, 2023 — Small: 6 comments over 5 hours, 30 additions and 4 deletions in 2 files
    Reviewed by: Justin McCandless, Hans Muller, Taha Tesser

    Although making the search bar's height less than 48 isn't advisible (a11y on mobile), if you do make it smaller, now the text will stay in the center.

    Screen.Recording.2023-06-01.at.10.32.01.AM.mov
  • Kate Lovett — Add error message when sliver overlap absorber is missing
    #128075 merged on June 1, 2023 — Small: 1 comment over 2 hours, 49 additions and 0 deletions in 2 files
    Reviewed by: Michael Goderbauer

    A nice error message if you're using SliverOverlapAbsorber incorrectly.

  • Hans Muller — Updated custom ListTile examples
    #128071 merged on June 1, 2023 — Small: 2 comments over 4 hours, 33 additions and 56 deletions in 3 files
    Reviewed by: Qun Cheng

    Hans Muller — Updated Menu examples
    #128080 merged on June 1, 2023 — Small: 1 comment over 1 hour, 13 additions and 10 deletions in 5 files
    Reviewed by: Qun Cheng

    Hans Muller — Updated InputDecoratorExamples for M3
    #128065 merged on June 1, 2023 — Small: 0 comments over 3 hours, 19 additions and 6 deletions in 15 files
    Reviewed by: Taha Tesser

    Hans Muller — Revised Floating Action Button examples
    #128058 merged on June 1, 2023 — Medium: 4 comments over 5 hours, 162 additions and 282 deletions in 9 files
    Reviewed by: Qun Cheng

    Hans Muller — Updated TabBar and ToggleButtons examples
    #128088 merged on June 2, 2023 — Small: 1 comment over 1 hour, 37 additions and 31 deletions in 3 files
    Reviewed by: Qun Cheng

    Updated examples that would be affected by the useMaterial3:true default transition.

  • Matheus Kirchesch — Added option to disable [NavigationRailDestination]s
    #127113 merged on May 30, 2023 — Small: 5 comments over 1 week, 58 additions and 3 deletions in 2 files
    Reviewed by: Hans Muller

    Sometimes a destination isn't always available.

  • Vasiliy Ditsyak — Add fallback font to IconData class
    #127269 merged on June 1, 2023 — Small: 8 comments over 1 week, 32 additions and 2 deletions in 3 files
    Reviewed by: Michael Goderbauer, chunhtai

    Adds fontFamilyFallback to IconData.

  • Taha Tesser — Add M3 date range picker tests and fix header background theme color
    #127662 merged on May 26, 2023 — Medium: 4 comments over 7 hours, 318 additions and 2 deletions in 3 files
    Reviewed by: Hans Muller

    Now setting rangePickerHeaderBackgroundColor does what you'd expect.

    Before After
    Screenshot 2023-05-19 at 14 07 17 Screenshot 2023-05-19 at 14 07 07
  • LongCatIsLooong — Remove rounding from TextPainter
    #127099 merged on May 26, 2023 — Medium: 3 comments over 1 week, 260 additions and 84 deletions in 16 files
    Reviewed by: Ian Hickson

    This is the beginning of a significant change. For now it's opt-in. Hixie recommends it:

    Screenshot 2023-06-02 at 11 31 33 AM

  • Jonathan Green — Interactive viewer doesn't appear to respect the trackpadScrollCausesScale parameter
    #127114 merged on May 26, 2023 — Small: 19 comments over 1 week, 52 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless, Callum Moffat

    Now a two-finger scroll up/down scales the view, as you'd expect.

  • Qun Cheng — Remove button announcement for MenuItemButton and SubmenuButton
    #127620 merged on May 26, 2023 — Small: 1 comment over 23 hours, 95 additions and 1 deletion in 4 files
    Reviewed by: Greg Spencer

    Improves accessibility for menu items. There's still more to do.

  • LongCatIsLooong — Remove a bad assert from tooltip implementation
    #127629 merged on May 26, 2023 — Small: 1 comment over 1 hour, 194 additions and 45 deletions in 2 files
    Reviewed by: Greg Spencer

    Fixed a crash that could occur when a tooltip was dismissed.

@Hixie Hixie added the permanently locked Prevent this issue from getting automatically unlocked label Jun 15, 2023
@flutter-triage-bot flutter-triage-bot bot added team-framework Owned by Framework team triaged-framework Triaged by Framework team labels Jul 8, 2023
@HansMuller
Copy link
Contributor Author

HansMuller commented Nov 1, 2023

Notable Commits: 2024 March 29th - April 5th 2024

  • Renzo Olivares — Implement SelectionArea triple click gestures
    #144563 merged on April 2, 2024 — Extra large: 62 comments over 4 weeks, 2406 additions and 195 deletions in 9 files
    Reviewed by:

    SelectionArea support for selecting a paragraph with triple-click and for using triple-click-drag to extend the selection paragraph-by-paragraph.

  • Ian Hickson — Enhance ColorScheme.fromSeed with a new variant parameter
    #144805 merged on April 3, 2024 — Medium: 38 comments over 3 weeks, 348 additions and 100 deletions in 4 files
    Reviewed by: Qun Cheng, Hans Muller

    Now you can choose among nine different color scheme variations based on a single seed color. One of the variants is called "fruit salad". I am not making this up. Here's an example of all nine, in both dark and light modes:

    Screenshot 2024-03-13 at 4 33 02 PM

    Screenshot 2024-03-13 at 4 33 07 PM

  • Furkan Acar — Add SegmentedButton expand feature
    #142804 merged on April 3, 2024 — Small: 27 comments over 2 months, 99 additions and 13 deletions in 2 files
    Reviewed by: Michael Goderbauer, Qun Cheng

    Now you can ask the SegmentedButton to become as wide as possible.

    With expandedInsets = null

    image

    With expandedInsets = EdgeInsets.zero

    image
  • Taha Tesser — Add DataColumn.headingRowAlignment for DataTable
    #144006 merged on April 1, 2024 — Small: 15 comments over 1 month, 147 additions and 1 deletion in 4 files
    Reviewed by: iaiao, Kate Lovett

    Centered column header labels are now supported.

    Center DataColumn.headingRowAlignment without sort arrow

    Screenshot 2024-03-25 at 17 13 05

    Center DataColumn.headingRowAlignment with sort arrow

    Screenshot 2024-03-25 at 17 11 54

  • Taha Tesser — Fix MenuItemButton overflow
    #143932 merged on April 2, 2024 — Small: 24 comments over 1 month, 181 additions and 21 deletions in 4 files
    Reviewed by: Greg Spencer, Qun Cheng

    If the text don't fit, uh.., we must omit. And add an ellipsis. This looks better.

    Before

    before

    After

    after

  • Bruno Leroux — Fix border color is wrong for a focused and hovered TextField
    #146127 merged on April 2, 2024 — Small: 1 comment over 6 hours, 88 additions and 12 deletions in 2 files Reviewed by: Justin McCandless

    Corrects the active indicator color for a filled text field and the border color for an outlined text field. For example:

    Before After
    Screenshot 2024-04-05 at 1 27 01 PM Screenshot 2024-04-05 at 1 27 31 PM
  • Taha Tesser — Fix InputDecorator suffix and prefix IconButtons ignore IconButtonTheme
    #145473 merged on April 4, 2024 — Small: 9 comments over 2 weeks, 169 additions and 14 deletions in 2 files
    Reviewed by: Kate Lovett, Justin McCandless

    The prefix and suffix IconButtons now respect IconButtonTheme.

    Before After
  • Ian Hickson — Magnifier cleanup
    #143558 merged on April 3, 2024 — Large: 49 comments over 1 month, 395 additions and 195 deletions in 12 files
    Reviewed by: Justin McCandless, Bruno Leroux

    A bevy of small improvements to the (text input) magnifier widgets.

  • Bruno Leroux — Fix cursor is not centered when cursorHeight is set (non-Apple platforms).
    #145829 merged on April 5, 2024 — Small: 11 comments over 1 week, 98 additions and 6 deletions in 2 files
    Reviewed by: Justin McCandless

    Fixes an embarrassing alignment problem when cursorHeight was specified on anything by iOS/macOS.

    Before After
    image image
  • Taha Tesser — Add DropdownMenu cursor behavior sample
    #146133 merged on April 3, 2024 — Small: 11 comments over 1 day, 226 additions and 0 deletions in 3 files
    Reviewed by: Hans Muller

    A new interactive example that demos the visual DropdownMenu differences due to the enabled and requestFocusOnTap properties.

  • Leo Farias — Fix TextStyle.lerp() to properly interpolate text shadows
    #145666 merged on April 3, 2024 — Small: 2 comments over 1 week, 24 additions and 2 deletions in 2 files
    Reviewed by: Chris Bracken, Renzo Olivares, Greg Spencer

    Fixes text shadow interpoloation. There's a beautiful before/after demo in the PR, check it out.

  • Victor Sanni — Update documentation to discourage using the TextEditingController.text setter
    #146151 merged on April 4, 2024 — Small: 18 comments over 1 day, 5 additions and 2 deletions in 1 file
    Reviewed by: Justin McCandless, Renzo Olivares,

    First PR landed by new Framework team engineer Victor Sanni!

  • LongCatIsLooong — Implements RenderBox.computeDryBaseline for material render boxes
    #146027 merged on April 2, 2024 — Large: 18 comments over 3 days, 384 additions and 263 deletions in 11 files
    Reviewed by: Michael Goderbauer

    LongCatIsLooongcomputeDryBaseline for rendering / widgets RenderBoxes
    #146143 merged on April 3, 2024 — Large: 4 comments over 1 day, 321 additions and 212 deletions in 9 files
    Reviewed by: Michael Goderbauer

    Improves intrinsic size calculations for many RenderBox subclasses.

  • philipfranchi — Adds semanticsLabel to MenuItemButton
    #145846 merged on April 4, 2024 — Small: 14 comments over 1 week, 48 additions and 2 deletions in 2 files
    Reviewed by: Francisco Magdaleno, Chris Bracken, Loïc Sharma, Greg Spencer

    Provides a little more control over how menu items are read by screen readers.

  • Kallen Tu — Add missing_code_block_language_in_doc_comment lint.
    #145354 merged on April 3, 2024 — Small: 1 comment over 2 weeks, 1 addition and 2 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Kallen Tu — Add info strings to code blocks.
    #146085 merged on April 1, 2024 — Small: 1 comment over 2 hours, 15 additions and 15 deletions in 8 files
    Reviewed by: Michael Goderbauer

    Kallen Tu — Add none language strings to code blocks.
    #146154 merged on April 2, 2024 — Small: 3 comments over 2 hours, 17 additions and 17 deletions in 13 files
    Reviewed by: Michael Goderbauer

    In the future an analyzer lint will require code blocks to specify a language, like dart, or none.

  • Kostia Sokolovskyi — Add tests for theme_extension.1.dart API example.
    #145819 merged on April 3, 2024 — Small: 13 comments over 1 week, 112 additions and 1 deletion in 2 files
    Reviewed by: Renzo Olivares, Greg Spencer

    Kostia Sokolovskyi — Add tests for material_state_mouse_cursor.0.dart API example.
    #145987 merged on April 3, 2024 — Small: 11 comments over 4 days, 92 additions and 7 deletions in 3 files
    Reviewed by: Renzo Olivares, Greg Spencer

    We always appreciate tests being added for examples that need them. See dev/bots/check_code_samples.dart for the complete list of examples that still need a test.

  • Taha Tesser — Deprecate ButtonBar, ButtonBarThemeData, and ThemeData.buttonBarTheme
    #145523 merged on April 1, 2024 — Small: 8 comments over 1 week, 136 additions and 15 deletions in 7 files
    Reviewed by: Faris Basha TM, Kate Lovett

    These classes are an old idea but not really a good one. See also: Flutter's deprecation policy.

Notable Commits: 2024 March 22nd - March 29th 2024

  • maRci002 — Predictive back support for routes
    #141373 merged on March 27, 2024 — Extra large: 173 comments over 2 months, 1490 additions and 107 deletions in 14 files
    Reviewed by: Justin McCandless,

    By adding the code below to your application's theme, you'll enable the "predictive back" gesture and transition for all routes.

    pageTransitionsTheme: const PageTransitionsTheme(
      builders: {
        TargetPlatform.android: PredictiveBackPageTransitionsBuilder(),
      },
    )
    predictive_back.mp4
  • Taha Tesser — Fix disabled DropdownMenu doesn't defer the mouse cursor
    #145686 merged on March 26, 2024 — Small: 1 comment over 1 day, 66 additions and 1 deletion in 2 files
    Reviewed by: Qun Cheng

    The DropdownMenu's text field cursor now behaves the way you'd expect when the DropdownMenu is disabled.

  • Taha Tesser — Add AnimationStyle to showBottomSheet and showModalBottomSheet
    #145536 merged on March 25, 2024 — Large: 1 comment over 3 days, 1007 additions and 6 deletions in 12 files
    Reviewed by: Hans Muller

    Gives developers a little bit of control over how bottom sheets make their debuts and exits.

    Default bottom sheet animation

    00-ezgif com-video-to-gif-converter

    Custom bottom sheet animation

    01-ezgif com-video-to-gif-converter

    No bottom sheet animation

    02-ezgif com-video-to-gif-converter

  • Taha Tesser — Fix vertical Stepper draws connector on the last step
    #145703 merged on March 25, 2024 — Small: 1 comment over 5 hours, 32 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    No more vertical line to nowhere.

    Before After
    Screenshot 2024-03-25 at 18 36 32 Screenshot 2024-03-25 at 18 36 24
  • LongCatIsLooongRenderFlex baseline intrinsics
    #145483 merged on March 28, 2024 — Large: 35 comments over 1 week, 695 additions and 283 deletions in 8 files
    Reviewed by: Michael Goderbauer

    Flex widgets will now compute their intrinsic size correctly when their children are aligned along each child's text baseline.

  • Renzo Olivares — Remove deprecated TextTheme members
    #139255 merged on March 28, 2024 — Medium: 2 comments over 3 months, 81 additions and 337 deletions in 9 files
    Reviewed by: Kate Lovett

    Flutter's deprecation policy in action.

  • Taha Tesser — Fix ExpansionTile Expanded/Collapsed announcement is interrupted by VoiceOver
    #143936 merged on March 26, 2024 — Small: 10 comments over 1 month, 55 additions and 2 deletions in 2 files
    Reviewed by: Qun Cheng

    An important fix for ExpansionTile accessibility. Turn on the audio to see what was fixed.

    Before

    before.mov

    After

    after.mov
  • Taha Tesser — Fix SearchAnchor triggers unnecessary suggestions builder calls
    #143443 merged on March 25, 2024 — Small: 12 comments over 1 month, 120 additions and 6 deletions in 2 files
    Reviewed by: Remi Rousselet, Qun Cheng

    Before

    before.mp4

    After

    after.mp4
  • Qun Cheng — Update tokens to v2.3.5
    #145356 merged on March 28, 2024 — Medium: 4 comments over 1 week, 272 additions and 113 deletions in 70 files
    Reviewed by: Hans Muller, Pierre-Louis

    Taha Tesser — Update TabBar and TabBar.secondary to use indicator height/color M3 tokens
    #145753 merged on March 28, 2024 — Small: 3 comments over 2 days, 90 additions and 27 deletions in 4 files

    Keeping the Material component defaults in sync with the latest spec.

  • Andrew Kolos — make hot reload reflect changes to asset transformer configurations
    #144660 merged on March 25, 2024 — Small: 8 comments over 2 weeks, 84 additions and 6 deletions in 2 files
    Reviewed by: Christopher Fujino

  • Kostia Sokolovskyi — Fix memory leak in Overlay.wrap.
    #145744 merged on March 26, 2024 — Small: 2 comments over 10 hours, 8 additions and 8 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Part of Clean up 'not disposed' memory leaks in FF, phase 3. #141198

  • Sahil Kachhap — [Fix]: Searchbar doesn't lose focus when tapped outside
    #145232 merged on March 25, 2024 — Small: 6 comments over 1 week, 47 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller, Greg Spencer

    SearchBar now drops the focus if it's tapped anywhere outside the search bar.

    WhatsApp.Video.2024-03-15.at.6.59.45.PM.mp4
  • Lipu — Correct typo: "Free" to "Three" in comments
    #145689 merged on March 26, 2024 — Small: 5 comments over 1 day, 1 addition and 1 deletion in 1 file
    Reviewed by: Chris Bracken, Michael Goderbauer, Greg Spencer

    You may find other occurrences of One Two Free Four in our examples. Don't change them.

Notable Commits: 2024 March 15th - March 22nd 2024

  • Mitchell Goodwin — Widget state properties
    #142151 merged on March 19, 2024 — Extra large: 70 comments over 1 month, 1435 additions and 545 deletions in 36 files
    Reviewed by: Matej Knopp, Michael Goderbauer, Hans Muller, Kate Lovett, Harry Sild, and 1 other

    This is a big one. The MaterialStateProperty<T> et al. classes have been renamed WidgetStateProperty<T> and moved to the widgets library. If you're building custom components or your own toolkit we hope you'll find this migration useful.

  • LongCatIsLooong — Introduce methods for computing the baseline location of a RenderBox without affecting the current layout
    #144655 merged on March 18, 2024 — Large: 38 comments over 1 week, 651 additions and 225 deletions in 12 files
    Reviewed by: Michael Goderbauer

    Introduces RenderBox.{compute,get}DryBaseline for computing the baseline location in RenderBox.computeDryLayout.

  • Nate — Intensive if chain refactoring
    #145194 merged on March 22, 2024 — Medium: 18 comments over 1 week, 98 additions and 352 deletions in 7 files
    Reviewed by: Justin McCandless, Bruno Leroux

    More quality reading for those who enjoy discovering the many advantages of Dart 3 switch expressions.

  • Kate Lovett — 2DScrollView - Fix drag when one axis does not have enough content
    #145566 merged on March 22, 2024 — Medium: 2 comments over 19 hours, 304 additions and 5 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Fixes a 2D scrolling problem that could occur if the Y axis' extent got smaller: scrolling in both axes might be disabled.

  • Vatsal Bhesaniya — Add helper widget parameter to InputDecoration
    #145157 merged on March 20, 2024 — Small: 13 comments over 6 days, 185 additions and 8 deletions in 4 files
    Reviewed by: Greg Price, Renzo Olivares

    Now you can provide a helper widget instead of helper text, for situations that need a little extra help.

  • Bruno Leroux — Activate shortcuts based on NumLock state
    #145146 merged on March 19, 2024 — Small: 6 comments over 4 days, 140 additions and 2 deletions in 2 files
    Reviewed by: Greg Spencer

    Bruno Leroux — Adds numpad navigation shortcuts for Linux
    #145464 merged on March 22, 2024 — Small: 4 comments over 1 day, 224 additions and 0 deletions in 2 files
    Reviewed by: Justin McCandless

    Now you can have shortcuts that depend on the state of the numlock keys. This enables some conventinal behavior on Linux and Windows:

    For example, consider numpad4 (left arrow navigation):
    Case 1 - When numLock is locked, pressing numpad4 alone is not a navigation shortcut (in a text field, it should print ‘4’).
    Case 2 - When numLock is locked, pressing shift and numpad4 is a navigation shortcut.
    Case 3 - When numLock is unlocked, pressing numpad4 alone is a navigation shortcut.
    Case 4 - When numLock is unlocked, pressing shift and numpad4 is not a navigation shortcut.

Notable Commits: 2024 March 7th - March 15th 2024

Notable Commits: 2024 February 16th - March 7th 2024

  • Bruno Leroux — Fix text color for default CupertinoContextMenuAction
    #144542 merged on March 4, 2024 — Small: 1 comment over 7 hours, 18 additions and 10 deletions in 2 files
    Reviewed by: Justin McCandless

    Now you can see the default action in the dark.

    Before After
    Capture d’écran 2024-03-04 à 14 58 45 Capture d’écran 2024-03-04 à 15 00 27
  • Nate — Add missing parameter to TableBorder.symmetric, and improve class constructors
    #144279 merged on March 4, 2024 — Large: 16 comments over 5 days, 196 additions and 357 deletions in 36 files
    Reviewed by: Michael Goderbauer, Christopher Fujino

    A bevy of small improvements, much more than the PR's title implies.

  • Hans Muller — Updated the TextButton image button example artwork
    #144583 merged on March 5, 2024 — Small: 1 comment over 1 hour, 54 additions and 13 deletions in 2 files
    Reviewed by: Qun Cheng

    Not really notable, but I'm writing this and I'm pleased with the new button animation example.

    Screen.Recording.2024-03-04.at.5.43.44.PM.mov
  • Tirth — Adds missing style to PopupMenuButton
    #143392 merged on March 5, 2024 — Small: 5 comments over 2 weeks, 39 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller, Qun Cheng

    Now you can specify the ButtonStyle for popup menu icon buttons.

  • Faisal Ansari — Fixed -> DropdownMenu throws exception when it is in any scrollable l…
    #140566 merged on March 7, 2024 — Small: 9 comments over 2 months, 31 additions and 0 deletions in 2 files
    Reviewed by: Michael Goderbauer, Qun Cheng, Mitchell Goodwin

    Fixes a crash that could be triggered by quickly scrolling a view that contained a DropdownMenu.

  • Taha Tesser — Fix CalendarDatePicker day selection shape and overlay
    #144317 merged on March 1, 2024 — Small: 3 comments over 1 day, 245 additions and 15 deletions in 7 files
    Reviewed by: Hans Muller

    Now you can control the appearance of dates.

    Before After

    Hover, pressed, highlight preview

    Before After
    before_recording.mov
    after_recording.mov

    Using DatePickerThemeData.dayShape to customize day selection background and overlay shape

    Before After
  • Taha Tesser — Fix chips use square delete button InkWell shape instead of circular
    #144319 merged on March 1, 2024 — Small: 5 comments over 1 day, 65 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller

    Now this selection highlight hews to the Material Design spec by default.

    Before After
  • Bruno Leroux — Horizontally expand text selection toolbar buttons in overflow menu
    #144391 merged on March 1, 2024 — Small: 6 comments over 16 hours, 97 additions and 0 deletions in 4 files
    Reviewed by: Justin McCandless

    Now they look like you'd expect.

    Before After
    Each item has its own width All items expand horizontally
    Capture d’écran 2024-02-29 à 14 43 57 Capture d’écran 2024-02-29 à 14 40 47
  • Taha Tesser — Fix Scrollbar.thickness property is ignored when the Scrollbar is hovered
    #144012 merged on February 26, 2024 — Small: 2 comments over 2 days, 11 additions and 9 deletions in 2 files
    Reviewed by: Kate Lovett

    A win for scrollbar width stability.

    Before After
  • Nate — Implementing switch expressions in rendering/
    #143812 merged on February 26, 2024 — Large: 10 comments over 5 days, 366 additions and 604 deletions in 17 files
    Reviewed by: Michael Goderbauer, Kate Lovett

    Nate — Implementing switch expressions: everything in flutter/lib/src/
    #143634 merged on February 20, 2024 — Large: 19 comments over 3 days, 503 additions and 925 deletions in 50 files
    Reviewed by: Bernardo Ferrari, Loïc Sharma, Michael Goderbauer

    Part of Proposal to implement switch expressions throughout the Flutter repo. #136139. Check out what the new Dart switch expressions can do.

  • Qun Cheng — Introduce tone-based surfaces and accent color add-ons - Part 2
    #138521 merged on February 20, 2024 — Extra large: 41 comments over 3 months, 2520 additions and 999 deletions in 181 files
    Reviewed by: Hans Muller, Pierre-Louis

    We now fully support the latest Material Design 3 color scheme. You color palette is bigger than ever.

    Screenshot 2024-01-08 at 4 56 51 PM

  • LongCatIsLooong — Changing TextPainter.getOffsetForCaret implementation to remove the logarithmic search
    #143281 merged on February 20, 2024 — Extra large: 27 comments over 1 week, 902 additions and 805 deletions in 7 files
    Reviewed by: Justin McCandless, Jason Simmons

    Moving the TextField's caret has never been cheaper.

  • xubaolin — Change ItemExtentBuilder's return value nullable
    #142428 merged on February 20, 2024 — Small: 5 comments over 3 weeks, 80 additions and 14 deletions in 7 files
    Reviewed by: Kate Lovett

    Officially restores the support for list item builders that signal EOL by returning null.

  • Taha Tesser — Add timeSelectorSeparatorColor and timeSelectorSeparatorTextStyle for Material 3 Time Picker
    #143739 merged on February 21, 2024 — Small: 1 comment over 22 hours, 170 additions and 38 deletions in 6 files
    Reviewed by: Greg Spencer

    Taha Tesser — Update hourMinuteTextStyle defaults for Material 3 Time Picker
    #143749 merged on February 21, 2024 — Small: 4 comments over 20 hours, 55 additions and 13 deletions in 4 files
    Reviewed by: Greg Spencer

    Flex time for time pickers.

    Before After
  • Simon Friis Vindum — Fix initialization of time in repeat on AnimationController
    #142887 merged on February 21, 2024 — Small: 15 comments over 2 weeks, 44 additions and 3 deletions in 2 files
    Reviewed by: Michael Goderbauer, Greg Spencer

    Corrects the behavior and the tests.

  • Greg Price — Explain when and why to use CrossAxisAlignment.baseline
    #143632 merged on February 20, 2024 — Small: 2 comments over 3 days, 38 additions and 2 deletions in 2 files
    Reviewed by: Justin McCandless

    A helpful explanation.

  • Taha TesserCalendarDatePicker doesn't announce selected date on desktop
    #143583 merged on February 21, 2024 — Large: 1 comment over 4 days, 467 additions and 78 deletions in 85 files
    Reviewed by: hangyu

    Now screen readers announce DatePicker's selected date.

    Before

    before.mov

    After

    after.mov
  • Tong Mu — Render the warm up frame in a proper rendering process
    #143290 merged on February 23, 2024 — Small: 7 comments over 1 week, 62 additions and 22 deletions in 2 files
    Reviewed by: Loïc Sharma, Michael Goderbauer

    For an explanation, see Properly render the warmup frames #142851.

  • Nate — Implement _suspendedNode fix
    #143556 merged on February 20, 2024 — Small: 1 comment over 4 days, 2 additions and 3 deletions in 1 file
    Reviewed by: Chris Bracken, Loïc Sharma, Greg Spencer

    Fixes a problem with text input that could occur after an app was suspend and then resumed.

  • Michael Goderbauer — Remove deprecated MediaQuery.boldTextOverride
    #143960 merged on February 23, 2024 — Small: 3 comments over 5 hours, 0 additions and 14 deletions in 1 file
    Reviewed by: Kate Lovett

    Michael Goderbauer — Remove deprecated AnimatedListItemBuilder, AnimatedListRemovedItemBuilder
    #143974 merged on February 23, 2024 — Small: 2 comments over 4 hours, 0 additions and 19 deletions in 1 file
    Reviewed by: Kate Lovett

    Kate Lovett — Remove deprecated FlutterDriver.enableAccessibility
    #143979 merged on February 22, 2024 — Small: 1 comment over 1 hour, 0 additions and 9 deletions in 1 file
    Reviewed by: Michael Goderbauer

    LongCatIsLooong — Remove deprecated KeepAliveHandle.release
    #143961 merged on February 23, 2024 — Small: 1 comment over 8 hours, 0 additions and 14 deletions in 1 file
    Reviewed by: Kate Lovett

    Kate Lovett — Remove deprecated TimelineSummary.writeSummaryToFile
    #143983 merged on February 23, 2024 — Small: 2 comments over 3 hours, 0 additions and 14 deletions in 1 file
    Reviewed by: Michael Goderbauer

    Kate Lovett — Deprecate redundant itemExtent in RenderSliverFixedExtentBoxAdaptor methods
    #143412 merged on February 21, 2024 — Medium: 10 comments over 1 week, 276 additions and 27 deletions in 2 files
    Reviewed by: xubaolin

    Qun Cheng — Remove deprecated errorColor from ThemeData
    #144078 merged on March 6, 2024 — Small: 2 comments over 1 week, 2 additions and 74 deletions in 3 files
    Reviewed by: Kate Lovett

    LongCatIsLooong — Remove deprecated CupertinoContextMenu.previewBuilder
    #143990 merged on February 27, 2024 — Small: 6 comments over 4 days, 22 additions and 111 deletions in 1 file
    Reviewed by: Nate, Kate Lovett, Mitchell Goodwin

    Qun Cheng — Remove deprecated backgroundColor from ThemeData
    #144079 merged on February 29, 2024 — Small: 2 comments over 5 days, 2 additions and 52 deletions in 3 files
    Reviewed by: Kate Lovett

    LongCatIsLooong — Remove deprecated InteractiveViewer.alignPanAxis
    #142500 merged on February 23, 2024 — Small: 10 comments over 3 weeks, 145 additions and 29 deletions in 4 files
    Reviewed by: Kate Lovett

    Qun Cheng — Remove bottomAppBarColor from ThemeData
    #144080 merged on February 28, 2024 — Small: 1 comment over 3 days, 10 additions and 66 deletions in 7 files
    Reviewed by: Kate Lovett

    Qun Cheng — Remove toggleableActiveColor from ThemeData
    #144178 merged on February 29, 2024 — Small: 3 comments over 2 days, 12 additions and 63 deletions in 8 files
    Reviewed by: Kate Lovett

Flutter's deprecation policy in action.

Notable Commits: 2024 February 9th - February 16th 2024

  • Tirth — Introduce iconAlignment for the buttons with icon
    #137348 merged on February 12, 2024 — Large: 129 comments over 3 months, 942 additions and 17 deletions in 11 files
    Reviewed by: Hans Muller, Taha Tesser

    Now you can specify which side of the button the icon appears on, over and above what the text direction (RTL or LTR) has to say about it.

    iconalignment.mov
  • Taha Tesser — Introduce avatarBoxConstraints & deleteIconBoxConstraints for the chips
    #143302 merged on February 13, 2024 — Large: 3 comments over 1 day, 1079 additions and 13 deletions in 16 files
    Reviewed by: Hans Muller

    Chips give their icons a wide berth for the sake of usability (and big fingers). You can now override the default constraints to get compact chips.

    Screenshot 2024-02-12 at 14 58 35

  • Nate — Have FocusManager respond to app lifecycle state changes
    #142930 merged on February 13, 2024 — Small: 13 comments over 1 week, 102 additions and 0 deletions in 2 files
    Reviewed by: Loïc Sharma, Greg Spencer

    When a desktop Flutter app is suspended the cursor will stop blinking and when the app is resumed the cursor will resume blinking. And you can resume typing.

    Flutter demo

  • Taha Tesser — Fix InputDecorators suffix and prefix widgets are tappable when hidden
    #143308 merged on February 13, 2024 — Small: 1 comment over 16 hours, 151 additions and 8 deletions in 3 files
    Reviewed by: Bruno Leroux,

    If you can't see it, you can't tap on it. Not anymore.

  • Nate — Implementing switch expressions in widgets/
    #143293 merged on February 13, 2024 — Medium: 13 comments over 1 day, 169 additions and 306 deletions in 19 files
    Reviewed by: Michael Goderbauer, Kate Lovett

    This is to thank Nate (nate-thegrate on GitHub) for all of the switch expression updates, of which this is just one from a continuing series.

  • Qun Cheng — The initial/selected item on popup menu should always be visible
    #143118 merged on February 14, 2024 — Small: 14 comments over 6 days, 73 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller, Todd Volkert

    When a menu pops up, the most recently selected item is always visible again. This regression was pointed out by our director!

  • Valentin Vignal — Add documentation for best practices for StreamBuilder like FutureBuilder
    #143295 merged on February 12, 2024 — Small: 2 comments over 13 hours, 14 additions and 0 deletions in 1 file
    Reviewed by: Michael Goderbauer, Kate Lovett

    These builder classes can be tricky to use. If you do use them, check out this new update on best practices.

  • Tirth — Pass-Through inputFormatters in DropdownMenu
    #143250 merged on February 13, 2024 — Small: 5 comments over 3 days, 64 additions and 0 deletions in 2 files
    Reviewed by: Justin McCandless, Qun Cheng

    Optional input validation and formatting overrides for the DropdownMenu text field.

  • Nitesh Sharma — Fix dual focus issue in CheckboxListTile, RadioListTile and SwitchListTile
    #143213 merged on February 12, 2024 — Medium: 2 comments over 3 days, 251 additions and 108 deletions in 6 files
    Reviewed by: Justin McCandless, Greg Spencer

    Now, if your list tile has a control, like a switch, you can focus just the ListTile, without focusing the control too.

    287686456-24ed24b4-cc21-4eac-825f-05cc39e72b3d.mp4
  • hangyu — [a11y] Fix date picker cannot focus on the edit field
    #143117 merged on February 14, 2024 — Small: 6 comments over 6 days, 101 additions and 63 deletions in 4 files
    Reviewed by: Qun Cheng

    Corrects an accessibility problem. Now yo can select the DatePicker year/month dropdown using voice assist.

Notable Commits: 2024 February 2nd - February 9th 2024

  • David Martos — Material 3 - Tab indicator stretch animation
    #141954 merged on February 6, 2024 — Small: 28 comments over 2 weeks, 133 additions and 2 deletions in 2 files
    Reviewed by: Kate Lovett, Taha Tesser

    Updates the selected tab indicator's animation to match the latest Material 3 spec. Looks great! In the videos below the Material 3 spec showcase is on the left and Flutter is on the right.

    Original animation

    orig_changed_duration.mp4

    New animation

    stretch_changed_duration.mp4
  • Renzo Olivares — TextField context menu should fade on scroll on mobile devices
    #138313 merged on February 6, 2024 — Large: 83 comments over 2 months, 688 additions and 110 deletions in 8 files
    Reviewed by:

    The TextField context menu will now fade out when its text is scrolled and fade back in when the scroll ends.

    Screen.Recording.2023-11-13.at.1.36.49.PM.mov
  • Shaun Byrne — Grey out non-selectable days in CupertinoDatePicker
    #136181 merged on February 5, 2024 — Small: 3 comments over 3 months, 164 additions and 1 deletion in 2 files
    Reviewed by: Kate Lovett, Mitchell Goodwin

    This is a small tweak - not-selectable days and months now rendered with the same shade of grey - that makes the iOS date chooser look much nicer if you look closely.

    Before After
    Screenshot_1696829290 Screenshot_1696830232
  • Bruno Leroux — Fix M3 text field height + initial step for input decorator M3 test migration
    #142981 merged on February 7, 2024 — Large: 6 comments over 23 hours, 402 additions and 441 deletions in 6 files
    Reviewed by: Justin McCandless

    Makes TextFields a little more compact vertically and a little more compliant with the Material 3 spec.

    Before this PR After this PR
    image image
  • Michael Goderbauer — Layout animated GIFs only once
    #143188 merged on February 9, 2024 — Small: 1 comment over 3 hours, 57 additions and 1 deletion in 2 files
    Reviewed by: Jonah Williams,

    Now animated GIFs just repainted as needed. Layout only happens once.

  • yim — Fixed cursor blinking during selection.
    #141380 merged on February 7, 2024 — Small: 15 comments over 3 weeks, 58 additions and 3 deletions in 3 files
    Reviewed by: Justin McCandless, Renzo Olivares

    You will no longer have to put up with the text selection cursor blinking while you are dragging it around.

    Screen.Recording.2024-01-11.at.23.32.07.mov
  • David Martos — barrierColor property in DialogTheme
    #142490 merged on February 9, 2024 — Small: 3 comments over 1 week, 28 additions and 3 deletions in 3 files
    Reviewed by: Qun Cheng,

    Now you can change the barrier color for all dailogs via the DialogTheme.

  • Qun Cheng — Correct menu position when menu is constrained
    #143121 merged on February 8, 2024 — Small: 4 comments over 22 hours, 77 additions and 14 deletions in 2 files
    Reviewed by: Hans Muller

    Fixes a problem that could occur when the currently selected item was near the end of a long popup menu. Previously the menu would popup far from where it belonged. Now menus always pop up aligned with their menu button.

  • Bruno Leroux — Activate InkSparkle on CanvasKit
    #138545 merged on February 7, 2024 — Small: 5 comments over 2 months, 16 additions and 15 deletions in 7 files
    Reviewed by: Kate Lovett

    Now you get the Android-y sparkle even if you're running on a browser on Android.

  • maRci002 — Handle transitions to AppLifecycleState.detached in lifecycle state generation
    #142523 merged on February 7, 2024 — Small: 7 comments over 1 week, 20 additions and 12 deletions in 3 files
    Reviewed by: Justin McCandless, Greg Spencer

    Resolves two issues with AppLifecycle transitioning to it's detached state.

  • Luccas Clezar — Fix CupertinoTextSelectionToolbar clipping
    #138195 merged on February 2, 2024 — Small: 23 comments over 2 months, 58 additions and 6 deletions in 2 files
    Reviewed by: Justin McCandless,

    Extra wide text selection toolbars now fit much better.

    Before After
    Simulator Screenshot - iPhone Xʀ - 2023-11-09 at 19 45 29 Simulator Screenshot - iPhone Xʀ - 2023-11-09 at 19 44 30
  • Justin McCandless — Support navigation during a Cupertino back gesture
    #142248 merged on February 2, 2024 — Medium: 6 comments over 1 week, 298 additions and 8 deletions in 3 files
    Reviewed by: Michael Goderbauer

    Now we can gracefully handle the app interrupting a back gesture.

    pop push
    Screen.Recording.2024-02-01.at.1.50.46.PM.mov
    Screen.Recording.2024-02-01.at.1.55.08.PM.mov

Notable Commits: 2024 January 26th - 2024 February 2nd

  • Hans Muller — Added ButtonStyle.foregroundBuilder and ButtonStyle.backgroundBuilder
    #141818 merged on February 1, 2024 — Extra large: 53 comments over 1 week, 1567 additions and 189 deletions in 16 files
    Reviewed by: Michael Goderbauer, Taha Tesser

    Perhaps you've wanted to create buttons with gradient or image backgrounds or shader masked foregrounds, or maybe you've wanted to create a button exclusively from images. Maybe you wanted to configure a button theme to apply these effects to all buttons or just share a ButtonStyle for this kind of thing among a collection of buttons. Now you can.

    Screenshot 2024-02-02 at 10 25 16 AM

  • Amir Panahandeh — Fix assertion failure when reordering two dimensional children
    #141504 merged on January 26, 2024 — Small: 19 comments over 1 week, 53 additions and 2 deletions in 3 files
    Reviewed by: Chris Bracken, Kate Lovett

    Fixes a crash that could occur when resorting a 2D table.

  • LongCatIsLooong — Remove textScaleFactor references from flutter/flutter
    #142271 merged on January 26, 2024 — Small: 2 comments over 20 hours, 73 additions and 67 deletions in 16 files
    Reviewed by: Qun Cheng

    Say farewell to MediaQueryData.textScaleFactor and please welcome MediaQuery.textScalerOf(context).

  • Renzo Olivares — Fix: selection handles do not inherit color from local Theme widget
    #142476 merged on January 30, 2024 — Small: 0 comments over 21 hours, 105 additions and 5 deletions in 4 files
    Reviewed by: Weiyu Huang

    Selection handles are now rendered in the color your Theme asked for. See TextSelectionThemeData.selectionHandleColor.

  • David Martos — M3 - Fix Chip icon and label colors
    #140573 merged on January 31, 2024 — Medium: 75 comments over 1 month, 244 additions and 66 deletions in 9 files
    Reviewed by: Qun Cheng, Taha Tesser

    Corrects a few disconnects between Filter, Input and Choice chips and the Material 3 design spec.

    Example with contrasting colors

    Primary: Dark green
    SecondaryContainer: Light green
    OnSecondaryContainer: Blue
    OnSurfaceVariant: Red

    Before:

    Screenshot from 2023-12-23 15-16-20

    After:

    Screenshot from 2023-12-23 15-16-01

  • David Martos — Fix token usages on Regular Chip and Action Chip
    #141701 merged on February 1, 2024 — Small: 15 comments over 2 weeks, 40 additions and 18 deletions in 7 files
    Reviewed by: Qun Cheng, Taha Tesser

    Corrects a few disconnects between the Regular and Action chips and the Material 3 design spec. Yes, you're unlikely to notice the very small differences.

    Before

    image

    After

    image

  • Mohammad Bagher Fakouri — Add SingleChildScrollView for NavigationRail
    #137415 merged on January 29, 2024 — Small: 18 comments over 3 months, 117 additions and 56 deletions in 2 files
    Reviewed by: Michael Goderbauer, Qun Cheng

    If a NavigationRail gets too small, now we'll scroll automatically.

  • Kate Lovett — Fix SliverMainAxisGroup geometry cacheExtent
    #142482 merged on January 30, 2024 — Small: 1 comment over 18 hours, 49 additions and 1 deletion in 2 files
    Reviewed by: Qun Cheng

    From the PR: Fixes a SliverMainAxisGroup bug. The cacheExtent represents how many pixels the sliver has consumed in the SliverConstraints.remainingCacheExtent. Since it was not set, slivers that came after a SliverMainAxisGroup that filled the whole screen did not properly lay out their own children, in some cases making lazy sliver more eager than they should be.

  • Simone Stasi — fix CupertinoTabView's Android back button handling with PopScope
    #141604 merged on February 1, 2024 — Small: 4 comments over 2 weeks, 35 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless, Mitchell Goodwin

    From the PR: Fixes CupertinoTabView's handling of Android back button with PopScope and nested navigators by calling NavigatorState.maybePop instead of NavigatorState.pop, so that the Navigator pops only when it should.

  • Bryan Olivares — Feat: TextField can scroll when disabled
    #140922 merged on January 29, 2024 — Small: 18 comments over 3 weeks, 59 additions and 2 deletions in 3 files
    Reviewed by: Justin McCandless, Renzo Olivares

    Maybe you've wanted a TextField that can scroll even when it's disabled. Now you can have one. See TextField.ignorePointers.

    Before After
    localhost_52348.-.Google.Chrome.2024-01-03.14-10-29.mp4
    localhost_52348.-.Google.Chrome.2024-01-03.14-03-39.mp4
  • Qun Cheng — Introduce tone-based surfaces and accent color add-ons - Part 1
    #142654 merged on February 1, 2024 — Large: 4 comments over 6 hours, 532 additions and 38 deletions in 2 files
    Reviewed by: Hans Muller

    The first step in introducing a new version of ColorScheme that sports nearly 20 new colors and deprecates the whole surfaceTint idea.

  • LongCatIsLooong — Fix unresponsive mouse tooltip
    #142282 merged on January 31, 2024 — Small: 0 comments over 5 days, 85 additions and 1 deletion in 2 files
    Reviewed by: Greg Spencer

    Fixes the alternating tooltip "fails to show" problem seen int the video below.

    CleanShot.2024-01-23.at.14.43.21.mp4
  • Greg Spencer — Convert button .icon and .tonalIcon constructors to take nullable icons.
    #142644 merged on February 1, 2024 — Medium: 5 comments over 3 hours, 345 additions and 12 deletions in 8 files
    Reviewed by: Hans Muller

    Making these parameters nullable simplifies a common use case where a button's icon is effectively optional.

  • Ian Hickson — Add DropdownMenu.focusNode
    #142516 merged on January 31, 2024 — Small: 20 comments over 20 hours, 100 additions and 8 deletions in 2 files
    Reviewed by: Taha Tesser, Qun Cheng

    Now you can drive the focus to a DropdownMenu.

  • Justin McCandless — "System back gesture" explanation
    #142254 merged on January 31, 2024 — Small: 6 comments over 5 days, 17 additions and 8 deletions in 1 file
    Reviewed by:

    If wondering exactly what "system back gesture" referred to kept you awake at night you can rest easy. After reading this.

  • Michael Goderbauer — Fix InputDecorationTheme copyWith fallback for iconColor
    #142462 merged on January 29, 2024 — Small: 1 comment over 37 minutes, 13 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless

    Before this fix the copyWith method might not preserve the InputDecorationTheme's iconColor.

  • Michael Goderbauer — Fix ParentDataWidget crash for multi view scenarios
    #142486 merged on January 31, 2024 — Small: 2 comments over 1 day, 48 additions and 4 deletions in 2 files
    Reviewed by: Greg Spencer

  • Ian Hickson — Style correctness improvements for toStrings and related fixes
    #142485 merged on January 30, 2024 — Small: 1 comment over 1 day, 14 additions and 38 deletions in 10 files
    Reviewed by: Michael Goderbauer

    Lessons in good Flutter style from Ian:

    • Children should be omitted from debugFillProperties (if they really need to be included they should be in debugDescribeChildren, but in general for widgets we don't bother including them since they are eventually included anyway).
    • toString methods should not contain newlines (or, ideally, should use Diagnosticable).
  • Nate — Implementing switch expressions in foundation/ and material/
    #142279 merged on January 29, 2024 — Medium: 5 comments over 3 days, 115 additions and 196 deletions in 12 files
    Reviewed by: Michael Goderbauer, Greg Spencer

    Nate — Implement switch expressions in lib/src/material/
    #142634 merged on February 1, 2024 — Medium: 6 comments over 1 day, 146 additions and 256 deletions in 12 files
    Reviewed by: Loïc Sharma, Michael Goderbauer

    The continuing migration to the mighty new Dart 3 switch expression. More to come!

Notable Commits: 2024 January 19th - 2024 January 26th

  • Callum Moffat — Refactor macOS trackpad gesture tracking
    #49424 merged on January 25, 2024 — Small: 1 comment over 3 weeks, 47 additions and 22 deletions in 2 files
    Reviewed by: Chris Bracken

    This PR fixes some trackpad gesture handling problems, including one that could crop up with InteractiveViewer, and makes some difficult code much easier to read. NICE.

  • LouiseHsu — Fix incorrect zh-cn translation for Look Up Label in selection controls
    #142158 merged on January 25, 2024 — Small: 8 comments over 23 hours, 21 additions and 4 deletions in 6 files
    Reviewed by: , Justin McCandless, Hans Muller

    "Look up" had been translated to "往上看", which means "Lifting your head and looking upwards", like "Look up to the sky". Which is a nice suggestion, but not what's called for here.

    截屏 2024-01-18 18 01 59

  • Taha Tesser — Fix shape and collapsedShape isn't applied to ExpansionTile's splash ink
    #141777 merged on January 22, 2024 — Medium: 10 comments over 3 days, 270 additions and 104 deletions in 3 files
    Reviewed by: Lucas Matheus, Hans Muller

    ExpansionTiles with shapes have never looked nicer.

    Before

    Screenshot 2024-01-18 at 18 16 15 Screenshot 2024-01-18 at 18 16 44

    After

    Screenshot 2024-01-18 at 18 20 27 Screenshot 2024-01-18 at 18 20 53
  • Taha Tesser — Fix "Delete" tooltip is shown disabled on chips with onDeleted callback
    #141770 merged on January 19, 2024 — Small: 3 comments over 1 day, 114 additions and 4 deletions in 4 files
    Reviewed by: Qun Cheng

    No more tooltips for disabled "Delete" chip buttons.

    Before After
  • Qun ChengSearchAnchor search view clear button only shows up when text input is not empty
    #141755 merged on January 19, 2024 — Small: 1 comment over 1 day, 33 additions and 6 deletions in 2 files
    Reviewed by: Hans Muller

    Similarly, no more clear button for empty search bar text fields.

  • Qun Cheng — Add showDragHandle to showBottomSheet
    #141754 merged on January 19, 2024 — Small: 2 comments over 1 day, 78 additions and 43 deletions in 3 files
    Reviewed by: hangyu

    Now, you can ask for a drag handle (#2 in the handy diagram below) with a showBottomSheet parameter.

    image

  • Hassan Toor — [web] - Fix broken TextField in semantics mode when it's a sibling of Navigator
    #138446 merged on January 22, 2024 — Extra large: 33 comments over 2 months, 1613 additions and 1242 deletions in 34 files
    Reviewed by: Renzo Olivares

    Fixes an a11y crash that could occur created a TextFiueld outside of a Navigator.

  • Qun Cheng — Fix SegmentedButton default size and default tappable size
    #142243 merged on January 26, 2024 — Small: 4 comments over 5 hours, 80 additions and 4 deletions in 2 files
    Reviewed by: Hans Muller

    Although SegmentedButtons have a default hit-test area that's 48 pixels high, they're now only 40 pixels high per the Material Design spec.

    SegmentedButtonDemo.mov
  • derdilla — fix Ink not updating on TextField newline
    #140700 merged on January 25, 2024 — Small: 23 comments over 4 weeks, 73 additions and 42 deletions in 2 files
    Reviewed by: Justin McCandless, Bruno Leroux

    Now the splashes go where they are supposed to if you just enter a newline.

    Old behavior:

    material text_form_field update_decorations

    New behavior:

    material text_form_field update_decorations

  • Qun Cheng — Add tooltip for the clear button on SearchAnchor's search view
    #141804 merged on January 23, 2024 — Medium: 1 comment over 4 days, 408 additions and 78 deletions in 83 files
    Reviewed by: Hans Muller

    Improves the accessibility of search bars.

  • Justin McCandless — Floating cursor docs
    #133002 merged on January 22, 2024 — Small: 19 comments over 5 months, 62 additions and 3 deletions in 3 files
    Reviewed by:

    Ever wondered what a "floating cursor" is? Now you can read all about them.

  • LongCatIsLooong — Fixes #138773, port autocomplete to OverlayPortal
    #140285 merged on January 24, 2024 — Medium: 9 comments over 1 month, 143 additions and 211 deletions in 3 files
    Reviewed by: Justin McCandless

    Ensures that autocomplete overlays are visible.

  • Renzo Olivares — Fix text selection edge scrolling when inside a horizontal scrollable
    #140250 merged on January 25, 2024 — Medium: 7 comments over 1 month, 289 additions and 55 deletions in 3 files
    Reviewed by: Justin McCandless

    Fixes the problem shown below. It used to be that when selection caused a horizontal you could lose the selection's start position.

    broken-selectable-text

  • Nate — Implementing switch expressions in the cupertino/ directory
    #141591 merged on January 25, 2024 — Small: 13 comments over 1 week, 78 additions and 144 deletions in 7 files
    Reviewed by: Justin McCandless,

    In Dart 3, switch expressions have a value and now many idiomatic uses of switch can be simpler. Rejoice.

  • Bruno Leroux — Add Share button to the SelectableRegion toolbar on Android
    #141447 merged on January 23, 2024 — Small: 9 comments over 1 week, 199 additions and 55 deletions in 4 files
    Reviewed by: Renzo Olivares

    Now you can share your selections on Android. Be careful.

  • Justin McCandless — PopScope example improvements
    #142163 merged on January 25, 2024 — Small: 5 comments over 22 hours, 43 additions and 27 deletions in 3 files
    Reviewed by:

    If you've wondered about using PopScope with dialogs, check out the new examples.

  • yim — Don't change the height of the Textfield's labelStyle when it focused.
    #141943 merged on January 24, 2024 — Small: 3 comments over 2 days, 27 additions and 2 deletions in 2 files
    Reviewed by: Justin McCandless,

    Puts a stop to the nervous label shaking you can see in the video below.

    2024-01-12.16-39-08.mp4

Notable Commits: 2023 January 5th - 2024 January 19th

  • David Martos — Update margin between label and icon in Tab to better reflect Material specs
    #140698 merged on January 18, 2024 — Small: 50 comments over 3 weeks, 61 additions and 3 deletions in 3 files
    Reviewed by: Kate Lovett, Taha Tesser

    Tab bars that take a little less vertical space makes sense where space is tight and now we match the spec by default.

    tab height = 72, Flutter default for 8 years

    new_72

    Now: tab height = 64, M3 spec

    new_64

  • Callum Moffat — ScaleGestureRecognizer pointerCount=2 for trackpad gestures
    #140745 merged on January 18, 2024 — Small: 8 comments over 2 weeks, 105 additions and 5 deletions in 2 files
    Reviewed by: Kate Lovett

    We now count fingers correctly on trackpads.

  • Bruno Leroux — [Android] Add custom system-wide text selection toolbar buttons for SelectableRegion
    #141103 merged on January 9, 2024 — Small: 4 comments over 20 hours, 142 additions and 1 deletion in 3 files
    Reviewed by: Justin McCandless

    This is the final PR in support of [Android] Respect custom system-wide text selection toolbar buttons #139361, which adds support for Android's system-wide custom text selection menu items.

  • Sulav Parajuli — Fix Request to Add color Property to Buttons Extending _ActionButton #141061: Add 'color' property to DrawerButton and EndDrawerButton
    #141159 merged on January 16, 2024 — Small: 3 comments over 1 week, 38 additions and 0 deletions in 2 files
    Reviewed by: Bartek Pacia, Taha Tesser

    If you want to override the default color of these buttons, now it's easy.

  • Renzo Olivares — Fix: TextField can inherit errorStyle from InputDecorationTheme.
    #141227 merged on January 18, 2024 — Small: 3 comments over 1 week, 26 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless

    TextField's cursor color now inherits from the InputDecorationTheme.

  • Qun Cheng — Add headerHeight for SearchAnchor
    #141223 merged on January 17, 2024 — Small: 3 comments over 1 week, 89 additions and 4 deletions in 4 files
    Reviewed by: Hans Muller

    Now your search bars can get as high as you want.

  • Michael Goderbauer — Make pumpWidget's arguments named
    #141728 merged on January 19, 2024 — Small: 2 comments over 1 day, 80 additions and 97 deletions in 20 files
    Reviewed by: Greg Spencer, Bartek Pacia

    If you write tests (you should write tests) and specify durations or build phase for pumpWidget, now they're named parameters.

  • LongCatIsLooong — Fix Tooltip show delay when mouse moves to one Tooltip from another
    #141656 merged on January 17, 2024 — Small: 2 comments over 16 hours, 64 additions and 11 deletions in 2 files
    Reviewed by: Greg Spencer

    Removes the tooltip presentation delay that used to occur when sliding from one tooltip to another.

  • Taha Tesser — Fix FlexibleSpaceBar centered title position and title color
    #140883 merged on January 12, 2024 — Small: 9 comments over 1 week, 66 additions and 55 deletions in 2 files
    Reviewed by: Kate Lovett

    Now the centered title's position takes the leading widget's width into account.

    Before

    Screenshot 2024-01-03 at 18 02 25

    After

    Screenshot 2024-01-03 at 18 02 16

  • Mairramer — Adds support for StepStyle visual property bundle to the Step widget
    #140825 merged on January 12, 2024 — Large: 25 comments over 1 week, 534 additions and 23 deletions in 4 files
    Reviewed by: Chris Bracken, Hans Muller, Greg Spencer

    A new style parameter just for Stepper Steps.

  • Igor HnízdoNestedScrollView's outer scrollable jumping with BouncingScrollPhysics due to double precision errors
    #138319 merged on January 10, 2024 — Small: 38 comments over 1 month, 115 additions and 3 deletions in 2 files
    Reviewed by: Michael Goderbauer, Kate Lovett

    If you have nested bouncing scrollables you're in for an improvement.

  • SharbelOkzan — Introduce new Form validation method
    #135578 merged on January 9, 2024 — Small: 49 comments over 3 months, 144 additions and 2 deletions in 2 files
    Reviewed by: Renzo Olivares,

    From the PR: Introduced validateGranually which, apart from announcing the errors to the UI, returns a Map<Key, bool> providing more granular validation details: The results of calling validate on each FormField and their corresponding widget keys.

  • Nishant Kumar — resolved the issue of indeterminate CircularProgressIndicator.adaptive on Darwin
    #140947 merged on January 9, 2024 — Small: 47 comments over 5 days, 40 additions and 1 deletion in 2 files
    Reviewed by: Justin McCandless, Qun Cheng, Mitchell Goodwin

    Now, you'll only see an indeterminate Cupertino progress indicator when you should see one.

  • Gianluca Bettega — Expose 'enable' property to allow the user to disable the SearchBar
    #137388 merged on January 11, 2024 — Small: 22 comments over 2 months, 134 additions and 54 deletions in 2 files
    Reviewed by: Qun Cheng, Justin McCandless

    Now you can programatically disable a SearchBar.

  • Bruno Leroux — Fix spell check throws when text contains regex reserved characters
    #140384 merged on January 9, 2024 — Small: 2 comments over 2 weeks, 33 additions and 1 deletion in 2 files
    Reviewed by: Camille Simon

    Now it's safe to spell-check line noise.

  • yaakovschectman — Add check for Bank of Brazil security module to Windows Flutter Doctor validators
    #141135 merged on January 18, 2024 — Small: 59 comments over 1 week, 135 additions and 6 deletions in 3 files
    Reviewed by: Zachary Anderson, Loïc Sharma, Christopher Fujino, Greg Spencer, Elias Yishak

    Unblocks Brazilian users unable to build with cmake.

  • Bartek Pacia — Expose versionCode and versionName from local.properties in FlutterExtension
    #141417 merged on January 12, 2024 — Small: 1 comment over 19 hours, 54 additions and 33 deletions in 3 files
    Reviewed by: Reid Baker

    This Android Gradle buildscript PR isn't necessarily a "notable" commit. It's just the PR's description that's unusual: "This PR has no issue. I got this cool idea and decided to quickly try it out, and it works".

Notable Commits: 2023 December 15th - 2024 January 5th

  • Furkan Acar — Add SegmentedButton.styleFrom
    #137542 merged on January 3, 2024 — Medium: 76 comments over 2 months, 417 additions and 0 deletions in 5 files
    Reviewed by: Hans Muller, Taha Tesser

    Adds a styleFrom static utility method, just like the ones provided by the other button types. Enables quickly putting together a SegmentedButton's ButtonStyle.

    image
  • yim — Changes the regular cursor to a floating cursor when a long press occurs.
    #138479 merged on January 3, 2024 — Medium: 60 comments over 1 month, 311 additions and 63 deletions in 7 files
    Reviewed by: Renzo Olivares,

    Another victory for muscle memory. Upon long press you can now drag the text input cursor around with impunity.

  • Taha Tesser — Fix scrollable TabBar expands to full width when the divider is removed
    #140963 merged on January 5, 2024 — Small: 1 comment over 19 hours, 110 additions and 10 deletions in 2 files
    Reviewed by: Hans Muller

    Corrects an unfortunate corner case. Now: TabBar has no divider? No problem.

    Before

    Simulator Screenshot - iPhone 15 Pro - 2024-01-04 at 15 16 15

    After

    Simulator Screenshot - iPhone 15 Pro - 2024-01-04 at 15 16 23

  • Qun Cheng — Add scrollbar for menus
    #140941 merged on January 4, 2024 — Small: 1 comment over 17 hours, 52 additions and 12 deletions in 3 files
    Reviewed by: Greg Spencer

    On all platforms MenuAnchor and DropdownMenus now include a scrollbar when the menu's height is limited. And there's no more overscroll effect.

  • ᠵᠠᠭᠠᠨᠵᠠᠪ ᠪᠤᠷᠵᠢᠭᠤᠳ ᠰᠠᠴᠤᠷᠠᠭ — fix: cannot input new line using custom input control
    #140356 merged on January 3, 2024 — Small: 12 comments over 2 weeks, 82 additions and 13 deletions in 2 files
    Reviewed by: Renzo Olivares,

    And now you can insert a newline into an empty text field.

  • Jack Gibbons — Add key to BottomNavigationBarItem
    #139617 merged on January 3, 2024 — Small: 12 comments over 4 weeks, 39 additions and 0 deletions in 3 files
    Reviewed by: Greg Spencer, Qun Cheng

    Resolves two issues, including an old one. Adding this key can ensure that splashes appear where they're supposed to.

  • LongCatIsLooong — Fix 139196 selection OOB
    #140300 merged on January 3, 2024 — Small: 1 comment over 2 weeks, 18 additions and 1 deletion in 2 files
    Reviewed by: Renzo Olivares

    Fixeds a TextField crash that could happen when mashing on the arrow keys.

  • Bruno Leroux — Add custom system-wide text selection toolbar buttons on Android
    #139738 merged on December 27, 2023 — Medium: 17 comments over 2 weeks, 365 additions and 7 deletions in 3 files
    Reviewed by: Renzo Olivares

    On Android, it's possible to write an app that adds a custom button to the system-wide text selection toolbar. Now, if you do that, TextField's text selection menu will include it.

  • hhh — expose didExceedMaxLines from RenderParagraph
    #139962 merged on December 28, 2023 — Small: 15 comments over 2 weeks, 45 additions and 0 deletions in 2 files
    Reviewed by: Alex Li

    So that you'll know if you overflow.

  • LongCatIsLooong — Make TextSpan hit testing precise.
    #139717 merged on December 20, 2023 — Large: 53 comments over 1 week, 747 additions and 40 deletions in 13 files
    Reviewed by: , Michael Goderbauer

    Previously, text span hit testing (`TextPainter.getPositionForOffset) always returned the closest TextPosition, even when the given offset was far away from the text. Now it's only a hit if the offset is within a character's bounds.

  • Fedor Blagodyr — Added onEnd callback into AnimatedSize
    #139859 merged on December 19, 2023 — Small: 10 comments over 1 week, 96 additions and 1 deletion in 3 files
    Reviewed by: Michael Goderbauer, Greg Spencer

    So that you can do something once the size animation has completed.

  • Simon Friis Vindum — Document difference between softWrap and maxLine
    #139363 merged on December 18, 2023 — Small: 9 comments over 2 weeks, 39 additions and 7 deletions in 1 file
    Reviewed by: Greg Spencer,

    Explains the difference with examples. Niklaus Wirth (RIP) said: "Programming is usually taught by examples.". This PR is a good example that.

Notable Commits: 2023 December 1st - December 15th

  • Akito Nishiyama — 🎨: fix cupertionActionSheet design
    #134345 merged on December 14, 2023 — Small: 18 comments over 3 months, 57 additions and 60 deletions in 3 files
    Reviewed by: Greg Spencer, Mitchell Goodwin

    Now much closer to native.

    Before After
  • Renzo Olivares — Fix SelectionArea select-word edge cases
    #136920 merged on December 11, 2023 — Medium: 33 comments over 1 month, 369 additions and 58 deletions in 8 files
    Reviewed by:

    Corrects some issues that could occur when trying to select text that includes inline WidgetSpans inside of a SelectionArea.

  • Mitchell Goodwin — Swap iOS back button icon in Material app bar
    #134754 merged on December 13, 2023 — Small: 2 comments over 3 months, 2 additions and 2 deletions in 2 files
    Reviewed by: Renzo Olivares

    Better default icon selection yields a slightly better layout.

    Before After
    Screenshot 2023-09-14 at 11 24 10 AM Screenshot 2023-09-14 at 11 23 50 AM
  • Mitchell Goodwin — Cupertino text clear label
    #129727 merged on December 15, 2023 — Large: 13 comments over 5 months, 481 additions and 73 deletions in 92 files
    Reviewed by: Tae Hyung Kim, , Michael Goderbauer

    Adds a customizable semantic label so that the clear button on the Cupertino text field will be picked up by screen readers.

    RPReplay_Final1687901827.mov
  • Michael Goderbauer — Overlay supports unconstrained environments
    #139513 merged on December 14, 2023 — Small: 27 comments over 1 week, 271 additions and 24 deletions in 4 files
    Reviewed by: Yegor,

    Adds a OverlayEntry.canSizeOverlay flag. If true, the Overlay's size will match it's content.

  • yim — fix reorderable_list drop animation
    #139362 merged on December 14, 2023 — Small: 12 comments over 1 week, 101 additions and 32 deletions in 2 files
    Reviewed by: Hans Muller, Kate Lovett

    Corrects the animation glitch shown below.

    Screen.Recording.2023-11-25.at.12.06.43.AM.mov
  • Shashi — Fix BottomNavigationBarItem label overflow
    #120206 merged on December 14, 2023 — Small: 23 comments over 10 months, 61 additions and 1 deletion in 2 files
    Reviewed by: Hans Muller, Mitchell Goodwin

    Long labels now ... overlfow the way you'd expect.

    Before After
    Screenshot 2022-09-30 at 15 55 31
  • Greg Spencer — Fix dayPeriodColor handling of non-MaterialStateColors
    #139845 merged on December 12, 2023 — Small: 4 comments over 3 days, 56 additions and 6 deletions in 2 files
    Reviewed by: Qun Cheng

    Fixes TimePicker's dayPeriodColo: if it's a non-MaterialStateColor, it only applies the color to the selected state, otherwise it uses the given MaterialStateColor to get custom behavior.

  • hangyu — Handle the case when _CupertinoBackGestureDetector is disposed during the drag.
    #139585 merged on December 11, 2023 — Small: 4 comments over 5 days, 106 additions and 0 deletions in 2 files
    Reviewed by:

    Fixed a problem that could occur when go_router updates the navigator pages during a user gesture.

  • Mateus Felipe C. C. Pinto — Add enabled property to ExpansionTile
    #139519 merged on December 11, 2023 — Small: 2 comments over 6 days, 43 additions and 0 deletions in 2 files
    Reviewed by: Greg Spencer, Qun Cheng

    So that you can disable expansion.

  • Andrew Kolos — Support conditional bundling of assets based on --flavor
    #132985 merged on December 7, 2023 — Large: 75 comments over 3 months, 874 additions and 215 deletions in 30 files
    Reviewed by: Greg Price, Christopher Fujino, Jonah Williams

    Provides support for conditional bundling of assets through the existing --flavor option for flutter build and flutter run.

  • Taha Tesser — Fix DatePicker Dialog content not visible on lower text scale
    #139236 merged on December 6, 2023 — Small: 4 comments over 6 days, 54 additions and 13 deletions in 2 files
    Reviewed by: Mitchell Goodwin

    Fixed the disappearing dates problem illustrated in the video below.

    RPReplay_Final1701153736.MP4
  • hgraceb — Optimize the display of the Overlay on the Slider
    #139021 merged on December 4, 2023 — Small: 9 comments over 1 week, 95 additions and 3 deletions in 2 files
    Reviewed by: Kate Lovett, Taha Tesser

    2 images...slider3slider4

    Hover events are now correctly handled as the focus moves around.

    Before

    slider3

    After

    slider4

  • Taha Tesser — Add AnimationStyle to ExpansionTile
    #139664 merged on December 6, 2023 — Medium: 1 comment over 43 minutes, 418 additions and 15 deletions in 6 files
    Reviewed by: Hans Muller

    So that you can override the curve and duration of the default expand and close animations.

  • Anindya Chatterjee — Enable TapRegion to detect all mouse button click
    #136799 merged on December 4, 2023 — Large: 20 comments over 1 month, 575 additions and 1 deletion in 2 files
    Reviewed by: Tong Mu

    Previously, TapRegion would only detect left mouse button events.

  • Ian Hickson — Animate TextStyle.fontVariations
    #138881 merged on December 8, 2023 — Medium: 15 comments over 2 weeks, 201 additions and 117 deletions in 57 files
    Reviewed by:

    Now you can animate TextStyle font variations like Weight (wght) or Width (wdth) or Slant (slnt).

  • Jasper van Riet — Introduce exitDuration to Tooltip for mouse pointer devices
    #138321 merged on December 7, 2023 — Small: 14 comments over 3 weeks, 225 additions and 18 deletions in 5 files
    Reviewed by: Chris Bracken

    So that you can modify the time it takes for a tooltip to disappear after you've moved the mouse.

  • Shanmugam — Support for dismissDirection property in SnackBarTheme
    #139068 merged on December 5, 2023 — Small: 7 comments over 1 week, 123 additions and 9 deletions in 4 files
    Reviewed by: Qun Cheng, Mitchell Goodwin

    So that you can override the default dismissDirection for all SnackBars.

  • Greg Spencer — Fix DropdownMenu throwing TextEditingController disposed error on select
    #139385 merged on December 5, 2023 — Small: 5 comments over 3 days, 175 additions and 53 deletions in 2 files
    Reviewed by: Navaron Bracke, Qun Cheng

    Corrects a use-after-disposed but that can occur when a menu item is selected from a DropdownMenu that's within another menu.

  • Michael Goderbauer — Add Overlay.wrap for convenience
    #139823 merged on December 8, 2023 — Small: 4 comments over 3 hours, 79 additions and 0 deletions in 2 files
    Reviewed by:

    The convenient Overlay.wrap function makes it easy to wrap a child with an Overlay so other visual elements can float on top of the child.

  • Kate Lovett — Removed deprecated NavigatorState.focusScopeNode
    #139260 merged on December 5, 2023 — Small: 4 comments over 5 days, 19 additions and 7 deletions in 4 files
    Reviewed by: Greg Spencer

    Qun Cheng — Remove deprecated parameters from ElevatedButton.styleFrom(), OutlinedButton.styleFrom(), and TextButton.styleFrom()
    #139267 merged on December 6, 2023 — Small: 4 comments over 1 week, 10 additions and 45 deletions in 4 files
    Reviewed by: Kate Lovett

    Renzo Olivares — Remove deprecated ThemeData.selectedRowColor
    #139080 merged on December 14, 2023 — Small: 1 comment over 2 weeks, 0 additions and 36 deletions in 2 files
    Reviewed by: Kate Lovett

    Greg Spencer — Deprecate RawKeyEvent, RawKeyboard, et al.
    #136677 merged on December 11, 2023 — Large: 20 comments over 1 month, 785 additions and 196 deletions in 33 files
    Reviewed by: Kate Lovett, Michael Goderbauer

    Greg Spencer — Convert some usage of RawKeyEvent, et al to KeyEvent
    #139329 merged on December 4, 2023 — Medium: 1 comment over 3 days, 173 additions and 169 deletions in 5 files
    Reviewed by: Tong Mu

    Eventually deprecated API gets removed per the repo's official policy.

  • Kostia Sokolovskyi — SnapshotPainter should dispatch creation and disposal events.
    #138810 merged on December 7, 2023 — Small: 2 comments over 2 weeks, 19 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — ScrollDragController should dispatch creation and disposal events.
    #138800 merged on December 7, 2023 — Small: 2 comments over 2 weeks, 29 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — SelectionOverlay and TextSelectionOverlay should dispatch creation and disposal events.
    #138804 merged on December 7, 2023 — Small: 2 comments over 2 weeks, 108 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — MultiDragPointerState should dispatch creation and disposal events.
    #138807 merged on December 7, 2023 — Small: 2 comments over 2 weeks, 47 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    A little more work on leak tracking and plugging. Thanks to Kostia and Polina!

Notable Commits: 2023 November 17th - December 1st

  • Mitchell Goodwin — Refactor to use Apple system fonts
    #137275 merged on November 29, 2023 — Small: 16 comments over 1 month, 99 additions and 82 deletions in 13 files
    Reviewed by: Michael Goderbauer

    Flutter text now looks a little more compact and a little more native on iOS.

    Before After
    Screenshot 2023-11-02 at 11 45 12 AM Screenshot 2023-11-02 at 11 46 25 AM
  • xubaolin — Introduce multi-touch drag strategies for DragGestureRecognizer
    #136708 merged on November 30, 2023 — Small: 28 comments over 1 month, 258 additions and 6 deletions in 6 files
    Reviewed by: Kate Lovett

    Flutter used to scroll twice as fast if you dragged two fingers. You can now configure the default ScrollBehavior with MultiTouchDragStrategy.latestPointer to get number-of-fingers-agnostic scrolling behavior. And there are other options.

  • Gabriel Tavares — feature(table-widget): Added intrinsicHeight to TableCellVerticalAlignment enum.
    #130264 merged on November 28, 2023 — Small: 27 comments over 4 months, 78 additions and 1 deletion in 3 files
    Reviewed by: Chris Bracken, Kate Lovett

    Added new enumeration in TableCellVerticalAlignment, which sets the cell size to the same as the topmost cell.

  • Veli Bacik — implemented leadingWidth and automaticallyImplyLeading options
    #136165 merged on November 29, 2023 — Small: 55 comments over 1 month, 53 additions and 8 deletions in 3 files
    Reviewed by: , Renzo Olivares,

    Enables tighter horizontal AppBar layouts where space is always tight.

    Before:
    Screenshot 2023-10-09 at 01 32 33

    After:

    Screenshot 2023-10-09 at 01 33 01

    Screenshot 2023-10-09 at 01 32 49

  • Taha Tesser — Fix chips onDeleted callback don't show the delete button when disabled
    #137685 merged on November 29, 2023 — Small: 17 comments over 4 weeks, 83 additions and 9 deletions in 4 files
    Reviewed by: Hans Muller, Kate Lovett

    Now you can see the disabled delete button and the chip's width is stable.

    Before After
  • Taha Tesser — Add ability to customize NavigationBar indicator overlay and fix indicator shape for the overlay
    #138901 merged on November 27, 2023 — Small: 5 comments over 5 days, 229 additions and 28 deletions in 4 files
    Reviewed by: Hans Muller

    More flexibility for the NavigationBar's visuals.

    Before

    Cannot override NavigationBar Indicator ink well overlay

    Screenshot 2023-11-22 at 18 22 48

    Indicator shape is ignored for the indicator overlay

    Screenshot 2023-11-22 at 15 29 52

    After

    Can use NavigationBar.overlayColor or NavigationBarThemeData.NavigationBar to override default indicator overlay

    overlayColor: MaterialStatePropertyAll<Color>(Colors.red.withOpacity(0.33)),

    Screenshot 2023-11-22 at 18 22 08

    overlayColor: MaterialStatePropertyAll<Color>(Colors.transparent),

    Screenshot 2023-11-22 at 18 22 25

    Indicator shape is respected for the indicator overlay

    Screenshot 2023-11-22 at 15 30 36

  • Tirth — Added keyboardType & textInputAction props to SearchBar, SearchAnchor & SearchAnchor.bar
    #138553 merged on November 28, 2023 — Small: 16 comments over 1 week, 230 additions and 2 deletions in 3 files
    Reviewed by: Qun Cheng, Hans Muller

    Added pass-through keyboardType and textInputAction TextField properties to SearchBar, SearchAnchor and SearchAnchor.bar.

  • Renzo Olivares — TextField and TextFormField can use a MaterialStatesController
    #133977 merged on November 29, 2023 — Small: 32 comments over 2 months, 222 additions and 14 deletions in 3 files
    Reviewed by: Hans Muller,

    Adds support for a MaterialStatesController in TextField and TextFormField so that you can listen to MaterialState changes.

  • Mateus Felipe C. C. Pinto — Provide parameter to Icon and IconThemeData for they to consider the context's text scaler
    #135708 merged on November 29, 2023 — Small: 27 comments over 2 months, 178 additions and 19 deletions in 9 files
    Reviewed by: , Mitchell Goodwin

    Adds an applyTextScaling parameter to Icon and IconDataTheme. When true, the context's TextScaler will apply it's scale method to the icon size.

  • neko-andrew — Fix intrinsic width of input decorator
    #138074 merged on November 28, 2023 — Small: 12 comments over 2 weeks, 63 additions and 14 deletions in 2 files
    Reviewed by: Renzo Olivares,

    Corrects the layout of text fields when their InputDecorator has a prefix or suffix icon.

  • Kate Lovett — Analyze against using Stopwatches in the framework
    #138507 merged on November 29, 2023 — Small: 6 comments over 1 week, 124 additions and 6 deletions in 10 files
    Reviewed by: Michael Goderbauer

    Stopwatches can fall out of sync with the clock during testing, making tests flaky. Don't use them! You've been warned.

  • LongCatIsLooong — Ensure Icon vertically centers its icon glyph.
    #138937 merged on November 28, 2023 — Small: 5 comments over 5 days, 38 additions and 17 deletions in 2 files
    Reviewed by: Pierre-Louis

    In an Icon widget if the icon font's body (ascender + descender) is larger than the font's units per em, the icon height reported by the text layout library will be larger than the specified font size. When that happens the icon glyph gets pushed towards the bottom because the Icon widget is wrapped in a fontSize x fontSize SizedBox and thus has a fixed height of fontSize px. This wasn't a problem for material icons because its UPEM == body.

  • hangyu — Record focus in route entry to move a11y focus to the last focused item
    #135771 merged on November 27, 2023 — Small: 13 comments over 1 month, 141 additions and 0 deletions in 3 files
    Reviewed by:

    Makes the accessibility focus a easier to predict when routes are pushed or popped.

  • Renzo Olivares — Add undoStackModifier to UndoHistory
    #138674 merged on November 30, 2023 — Small: 12 comments over 1 week, 44 additions and 20 deletions in 3 files
    Reviewed by:

    Now you can modify the UndoHistory stack. This PR also fixes a problem where the undo/redo history could disappear on Japanese keyboards.

  • Michael Goderbauer — Prepare for dynamically sized views - pt. 2
    #139079 merged on November 27, 2023 — Small: 3 comments over 1 hour, 2 additions and 2 deletions in 2 files
    Reviewed by: Loïc Sharma, Greg Spencer

    Michael Goderbauer — Dynamic view sizing
    #138648 merged on November 29, 2023 — Medium: 9 comments over 1 week, 291 additions and 43 deletions in 16 files
    Reviewed by: Jacob Richman, Kenzie Davisson, David Iglesias, Greg Spencer

    Michael Goderbauer — Prepare for dynamically sized views
    #138565 merged on November 27, 2023 — Small: 3 comments over 1 week, 6 additions and 4 deletions in 3 files
    Reviewed by: Loïc Sharma, Greg Spencer

    Progress towards enabling an embedded Flutter Web view to size itself (Allow an embedded Flutter Web view to size itself #134501).

  • chunhtai — Fix SliverGrid garbage collection issue
    #138915 merged on November 23, 2023 — Small: 8 comments over 22 hours, 138 additions and 7 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Fixes a high priority SliverGrid.findChildIndexCallback crash for sparse grids.

  • Tirth — Write Tests for API Examples of cupertino_text_field.0, data_table.0, icon_button.2 & ink_well.0
    #139258 merged on November 30, 2023 — Small: 10 comments over 23 hours, 92 additions and 4 deletions in 5 files
    Reviewed by: Renzo Olivares, Mitchell Goodwin

    Tirth — Write Tests for API Examples of snack_bar.0, elevated_button.0, stepper.0, radio.0, filled_button.0, outlined_button.0 & card.0
    #138987 merged on November 28, 2023 — Small: 3 comments over 4 days, 215 additions and 7 deletions in 8 files
    Reviewed by: Kate Lovett, Qun Cheng

    Jasper van Riet — Write tests for API examples of BottomNavigationBar and IconButton
    #138188 merged on November 27, 2023 — Small: 6 comments over 2 weeks, 135 additions and 4 deletions in 5 files
    Reviewed by: Greg Spencer, Qun Cheng

    Thanks to Tirth and Jasper van Riet for contributing tests for API doc examples!

Notable Commits: 2023 November 10th - November 17th

  • Bernardo Ferrari — Make UnderlineInputBorder consistent
    #124153 merged on November 15, 2023 — Small: 18 comments over 7 months, 59 additions and 9 deletions in 2 files
    Reviewed by: Justin McCandless, Ian Hickson

    Now underlines taper into their rounded rectangle shape's left and right corners. Just like they do in web browsers.

    ttt
  • Taha Tesser — Introduce AnimationStyle
    #137945 merged on November 16, 2023 — Large: 40 comments over 1 week, 652 additions and 34 deletions in 12 files
    Reviewed by: Hans Muller

    An object that can be used to override the default duration and curves for built-in component animations.

  • Chinmoy — Deprecates onWillAccept and onAccept callbacks in DragTarget.
    #133691 merged on November 10, 2023 — Small: 13 comments over 2 months, 174 additions and 6 deletions in 10 files
    Reviewed by: Kate Lovett

    Instead of DragTarget onWillAccept and onAccept please use onWillAcceptWithDetails and onAcceptWithDetails.

  • Kate Lovett — Fix 2D tap to stop scrolling
    #138442 merged on November 15, 2023 — Large: 1 comment over 19 hours, 367 additions and 137 deletions in 2 files
    Reviewed by: Michael Goderbauer

    Now if you start dragging while a scroll is underway we'll DTRT.

  • huycozy — Update DraggableScrollableSheet docs to reflect API change
    #136471 merged on November 13, 2023 — Small: 18 comments over 1 month, 217 additions and 30 deletions in 3 files
    Reviewed by: Kate Lovett

    Drag scrolling is for mobiles. Desktop and web are different.

  • Victor Eronmosele — Enable flutter screenshot outside Flutter project directory
    #138160 merged on November 17, 2023 — Small: 12 comments over 1 week, 120 additions and 1 deletion in 2 files
    Reviewed by: Christopher Fujino, Andrew Kolos

    Now you can grab a flutter screenshot no matter what your pwd is.

  • Greg Spencer — Prepare ShortcutActivator and ShortcutManager to migrate to KeyEvent from RawKeyEvent.
    #136854 merged on November 15, 2023 — Medium: 20 comments over 3 weeks, 215 additions and 113 deletions in 3 files
    Reviewed by: Tong Mu, Michael Goderbauer

    Side effect of the migration from RawKeyEvent to KeyEvent.

  • Bruno Leroux — [flutter_tools] - Add queries section to Android manifest file
    #137207 merged on November 16, 2023 — Medium: 5 comments over 3 weeks, 300 additions and 1 deletion in 26 files
    Reviewed by: Reid Baker

    Progress towards supporting text processing actions on Android.

  • Fedor Blagodyr — Fix sliver persistent header expand animation
    #137913 merged on November 16, 2023 — Small: 11 comments over 1 week, 41 additions and 1 deletion in 2 files
    Reviewed by: Christopher Fujino, Kate Lovett

    Fixed a SliverAppBar crash for cases where the app bar was configured to "snap" into view.

  • Jason Simmons — Enable the silent flag for invalid string exceptions when building a TextSpan
    #138564 merged on November 16, 2023 — Small: 0 comments over 1 hour, 5 additions and 3 deletions in 2 files
    Reviewed by:

    If you try and construct a TextSpan with text comes from user input that is not valid UTF-16, we'll replace the bad characters with placeholders.

  • Greg Spencer — Clean up synonyms, key code generation.
    #138192 merged on November 13, 2023 — Small: 8 comments over 3 days, 106 additions and 71 deletions in 7 files
    Reviewed by: Tong Mu

    Cleans up how synonyms are calculated, and adds a reverse mapping from pseudo keys to the real keys they are synonyms of.

  • Binni Goel — SemanticOwner should dispatch creation and disposal events
    #138388 merged on November 15, 2023 — Small: 0 comments over 1 day, 25 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — Upgrade leak tracker.
    #138283 merged on November 13, 2023 — Small: 0 comments over 2 days, 95 additions and 136 deletions in 48 files
    Reviewed by: Ben Konyi

    Polina Cherkasova — Turn off leak tracker in master to make found leaks not blocking.
    #138567 merged on November 16, 2023 — Small: 5 comments over 1 hour, 1 addition and 1 deletion in 1 file
    Reviewed by: Jacob Richman

    林洵锋 — Fix NoSplash not being disposed
    #138542 merged on November 17, 2023 — Small: 2 comments over 1 day, 77 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller, Polina Cherkasova

    Kostia Sokolovskyi — GestureRecognizer should dispatch creation and disposal events.
    #138223 merged on November 10, 2023 — Medium: 3 comments over 7 hours, 245 additions and 56 deletions in 17 files
    Reviewed by: Polina Cherkasova

    A little more leak detection and leak fixing. Big thanks to the effort from Binni Goel, Polina Cherkasova, 林洵锋, Kostia Sokolovskyi, Ben Konyi, Jacob Richman.

Notable Commits: 2023 November 3rd - November 10th

  • Chris Bracken — [macOS] Suppress Xcode 15 createItemModels warning
    #138243 opened on on November 10, 2023 — Small: 3 comments 28 additions and 1 deletion in 2 files
    Reviewed by: Loïc Sharma

    As of Xcode 15 on macOS Sonoma, the following message is (repeatedly) output to stderr during builds (even on non-Flutter apps). It is suppressed in Xcode itself, but not when run from the command-line. Now we supress it, so that you don't have to see it.

    2023-11-10 10:44:58.031 xcodebuild[61115:1017566] [MT] DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot11/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-22267/IDEFoundation/Provisioning/Capabilities Infrastructure/IDECapabilityQuerySelection.swift:103
    Details:  createItemModels creation requirements should not create capability item model for a capability item model that already exists.
    Function: createItemModels(for:itemModelSource:)
    Thread:   <_NSMainThread: 0x6000027c0280>{number = 1, name = main}
    Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
    
  • Qun Cheng — Adaptive Switch
    #130425 merged on November 7, 2023 — Extra large: 42 comments over 3 months, 1462 additions and 265 deletions in 9 files
    Reviewed by: Taha Tesser, Hans Muller

    The implementation of Switch.adaptive no longer depends on the Cupertino library. Everything is handled by the Material component and there are no longer any switch properties that are not supported by the .adaptive version. This PR also includes support for customizing the appearance of adaptive components (just Switch for now).

    Adaptive_switch_example.mov
  • Qun Cheng — Add onSubmitted and onChanged for SearchAnchor and SearchAnchor.bar
    #136840 merged on November 9, 2023 — Small: 16 comments over 3 weeks, 155 additions and 2 deletions in 2 files
    Reviewed by: Spencer Riddering, Hans Muller

    Adds viewOnChanged and viewOnSubmitted to search bars so the app can track what's happening a little more closely.

  • hangyu — Make it possible to disable tapping to dismiss a tooltip.
    #137375 merged on November 9, 2023 — Small: 4 comments over 1 week, 44 additions and 0 deletions in 2 files
    Reviewed by:

    Sometimes you want a tooltip that just keeps on giving.

    image

  • Renzo Olivares — Fix text selection in SearchAnchor/SearchBar
    #137636 merged on November 9, 2023 — Large: 6 comments over 1 week, 531 additions and 233 deletions in 4 files
    Reviewed by: Qun Cheng

    Now text selection gestures within a search bar's textfield DTRT.

  • sanni prasad — Add support for color and color blendmode in FadeInImage
    #137681 merged on November 8, 2023 — Small: 19 comments over 1 week, 85 additions and 0 deletions in 2 files
    Reviewed by: Michael Goderbauer, Kate Lovett

    Now: fast and colorful image fade-ins.

  • Greg Price — Document where Curves curves correspond to CSS easing functions
    #137318 merged on November 7, 2023 — Small: 1 comment over 1 week, 8 additions and 0 deletions in 1 file
    Reviewed by: Michael Goderbauer

    This information can be very helpful when translating a design from an existing web application.

  • Tirth — Adds useRootNavigator property to PopupMenuButton widget.
    #137453 merged on November 10, 2023 — Small: 7 comments over 1 week, 95 additions and 0 deletions in 2 files
    Reviewed by: Greg Spencer,

    Now you can ensure that your popup menu will appear above sibling nested navigators.

  • John McCutchan — Fix 128925 by properly setting the Android Event Source
    #138241 merged on November 10, 2023 — Small: 4 comments over 1 hour, 35 additions and 1 deletion in 1 file
    Reviewed by: Tong Mu

    Fixed a problem that could cause touch events to be ignored in a Google Maps platform view. Now you can tap to zoom with confidence.

  • Hans Muller — Added an AnimationController API doc example
    #137975 merged on November 7, 2023 — Small: 4 comments over 19 hours, 262 additions and 0 deletions in 3 files
    Reviewed by: Greg Spencer

    Yes, I am trying to draw attention to an example that I created. It posseses as much visual drama as one digit from your car's odometer. Try the demo and click quickly. Yes, that's it. That's all there is.

  • Kostia Sokolovskyi — Ticker should dispatch creation and disposal events.
    #137844 merged on November 8, 2023 — Small: 2 comments over 4 days, 26 additions and 0 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — SemanticsHandle should dispatch creation and disposal events.
    #137960 merged on November 6, 2023 — Small: 2 comments over 1 hour, 43 additions and 1 deletion in 3 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — ScrollActivity should dispatch creation and disposal events.
    #137961 merged on November 6, 2023 — Small: 2 comments over 1 hour, 57 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover text_selection tests with leak tracking.
    #137009 merged on November 6, 2023 — Small: 8 comments over 2 weeks, 141 additions and 58 deletions in 3 files
    Reviewed by: Polina Cherkasova

    Leak detection and fixing continues. Thanks to Polina and Kostia.

Notable Commits: 2023 October 27th - November 3th

  • Taha Tesser — Update ColorScheme.light, ColorScheme.dark, ColorScheme.highContrastLight, & ColorScheme.highContrastDark constructors docs for Material 3
    #137149 merged on October 31, 2023 — Small: 4 comments over 1 week, 102 additions and 8 deletions in 1 file
    Reviewed by: Hans Muller

    We'd like developers to use ColorScheme.fromSeed instead of ColorScheme.fromSwatch going forward.

    ColorScheme.light (left) to ColorScheme.fromSeed (right)
    light
    ColorScheme.dark (left) to ColorScheme.fromSeed (right)
    dark
    ColorScheme.highContrastLight (left) to ColorScheme.fromSeed (right)
    highContrastLight
    ColorScheme.highContrastDark (left) to ColorScheme.fromSeed (right)
    highContrastDark
  • Chris Bracken — Send caret rect to embedder on selection update
    #137863 merged on November 3, 2023 — Small: 12 comments over 2 hours, 56 additions and 10 deletions in 2 files
    Reviewed by: Loïc Sharma, ,

    We now update the cursor position during selection changes such that the cursor position sent to the embedder is always the position at which next text input would occur.

  • Qun Cheng — Add Card.filled and Card.outlined factory methods
    #136229 merged on November 1, 2023 — Medium: 2 comments over 3 weeks, 358 additions and 106 deletions in 11 files
    Reviewed by: Hans Muller

    Factory methods for standard Material Card types.

  • Matej Knopp — [web] dispatch corresponding keyup events in text editing integrations
    #136874 merged on November 3, 2023 — Small: 1 comment over 2 weeks, 22 additions and 1 deletion in 1 file
    Reviewed by: Tong Mu

    Ensures that every synthesized keydown event dispatched to the IME has a corresponding keyup.

  • Valentin Vignal — Fixes DragTarget crash if Draggable.data is null
    #133136 merged on November 2, 2023 — Small: 38 comments over 2 months, 113 additions and 4 deletions in 2 files
    Reviewed by: Kate Lovett, Mitchell Goodwin

    Fixes a years-old DragTarget crash that occurred if Draggable data field was not set when data was not required.

  • Taha Tesser — Update framework_test.dart to remove ButtonBar usage and remove references from other clases
    #137550 merged on November 1, 2023 — Small: 1 comment over 2 days, 27 additions and 27 deletions in 3 files
    Reviewed by: Kate Lovett

    ButtonBar is finally on its way out the door.

  • Kostia Sokolovskyi — InkFeature should dispatch creation and disposal events.
    #137793 merged on November 3, 2023 — Small: 3 comments over 22 hours, 53 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — AppLifecycleListener should dispatch creation and disposal events.
    #137840 merged on November 3, 2023 — Small: 2 comments over 4 hours, 27 additions and 2 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Binni Goel — Instrument ImageStreamCompleterHandle for LeakTracking
    #137482 merged on November 2, 2023 — Small: 2 comments over 4 days, 33 additions and 0 deletions in 2 files
    Reviewed by: Polina Cherkasova

    Binni Goel — Instrumented PipelineOwner for leak tracking
    #137494 merged on November 2, 2023 — Small: 2 comments over 4 days, 22 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — Upgrade leak_tracker and remove some deps in allow list.
    #137806 merged on November 3, 2023 — Small: 2 comments over 14 hours, 102 additions and 169 deletions in 48 files
    Reviewed by: Devon Carew, Christopher Fujino

    derdilla — Cupertino date picker should dispose scroll controllers it created.
    #135355 merged on November 2, 2023 — Small: 24 comments over 1 month, 83 additions and 64 deletions in 3 files
    Reviewed by: Polina Cherkasova

    Binni Goel — [leak-tracking] Add more leak tracking in test/painting
    #136170 merged on November 3, 2023 — Small: 13 comments over 3 weeks, 28 additions and 24 deletions in 4 files
    Reviewed by: Polina Cherkasova

    Polina Cherkasova — Add dependency on leak_tracker and leak_tracker_testing to flutter_test.
    #137646 merged on November 1, 2023 — Medium: 2 comments over 4 hours, 273 additions and 69 deletions in 49 files
    Reviewed by: Dan Field

    Kostia Sokolovskyi — PerformanceModeRequestHandle should dispatch creation and disposal events.
    #137642 merged on October 31, 2023 — Small: 2 comments over 2 hours, 27 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    This week's progress on leak detection and leak fixing. Huge thanks to the huge effort from Polina Cherkasova, Kostia Sokolovskyi, Navaron Bracke, Devon Carew, Dan Field, and Binni Goel.

Notable Commits: 2023 October 20th - October 27th

  • Chris Bracken — [macOS] Reuse NSWindow instance across unit tests
    #47350 merged on October 26, 2023 — Small: 2 comments over 1 hour, 104 additions and 15 deletions in 4 files
    Reviewed by: Loïc Sharma

    Resolves several issues related to macOS test flakiness due to www.openradar.me/FB13291861.

  • Taha Tesser — Add delete button support to FilterChip
    #136645 merged on October 23, 2023 — Small: 1 comment over 1 week, 221 additions and 0 deletions in 2 files
    Reviewed by: Hans Muller

    Now users can delete FilterChips.

    Screenshot 2023-10-16 at 17 56 51

  • LongCatIsLooongOverlayPortal.overlayChild contributes semantics to OverlayPortal instead of Overlay
    #134921 merged on October 23, 2023 — Large: 20 comments over 1 month, 544 additions and 141 deletions in 6 files
    Reviewed by:

    Fixed an important accessibility issue related to OverlayPortal.

  • Taha Tesser — Update ColorScheme.fromSwatch docs for Material 3
    #136816 merged on October 23, 2023 — Small: 1 comment over 5 days, 9 additions and 4 deletions in 1 file
    Reviewed by: Hans Muller

    We're recommending that you use ColorScheme.fromSeed for all you color scheme creation needs.

  • LongCatIsLooong — RenderEditable WidgetSpan intrinsics
    #136979 merged on October 20, 2023 — Small: 13 comments over 1 hour, 35 additions and 3 deletions in 2 files
    Reviewed by:

    Fixed a crash that could occur when a WidgetSpan was used in a TextField's TextEditingController within an AlertDialog.

  • fzyzcjy — Let OverflowBox be shrink-wrappable
    #129095 merged on October 25, 2023 — Small: 41 comments over 4 months, 142 additions and 4 deletions in 4 files
    Reviewed by: Ian Hickson, Chris Bracken, Michael Goderbauer

    Now, if your OverflowBox specifies fit: OverflowBoxFit.max, its size will match its child's size.

  • Michael Goderbauer — Provide exception for listing an issue.
    #137092 merged on October 27, 2023 — Small: 1 comment over 3 days, 1 addition and 1 deletion in 1 file
    Reviewed by: Kate Lovett

    The rules for creating PRs have been amended: an issue is not required if the PR fixes something trivial like a typo.

  • lirantzairi — TextField - allow to customize cursor color in error state
    #136121 merged on October 24, 2023 — Small: 7 comments over 2 weeks, 67 additions and 19 deletions in 3 files
    Reviewed by: Bruno Leroux, Renzo Olivares

    If there's an error, now even the color of the TextField's cursor can be used to remind you that there's been an error.

  • yim — fix SliverReorderableLists item wrong offset
    #136828 merged on October 25, 2023 — Small: 5 comments over 6 days, 52 additions and 0 deletions in 2 files
    Reviewed by: Kate Lovett,

    Fixes a problem that was triggered by an autoscroll due to dragging a SliverReorderableLists item.

  • Mairramer — fix:: trigger onTapOutside only if has focus
    #136291 merged on October 26, 2023 — Small: 12 comments over 2 weeks, 33 additions and 1 deletion in 2 files
    Reviewed by: Renzo Olivares,

    TextField's onTapOutside will only be triggered if the textfield has the focus.

  • Greg Spencer — Add isLogicalKeyPressed to KeyEvent
    #136856 merged on October 27, 2023 — Small: 7 comments over 1 week, 82 additions and 2 deletions in 3 files
    Reviewed by: Tong Mu

    Simplify migrating from RawKeyEvent to KeyEvent by adding similar methods like isLogicalKeyPressed.

  • LongCatIsLooong — Make SemanticsNode.isMergedIntoParent Readonly
    #137304 merged on October 27, 2023 — Medium: 6 comments over 1 day, 270 additions and 71 deletions in 5 files
    Reviewed by: Michael Goderbauer

    Fixed a crash that could occur when a TextSpan with recognizer appeared in a ListTile.

  • Bruno Leroux — Add ProcessTextService
    #137145 merged on October 26, 2023 — Small: 3 comments over 1 day, 247 additions and 0 deletions in 4 files
    Reviewed by: Camille Simon

    ProcessTextService communicates with the engine to query and run text processing actions. Currently Android-only.

  • Tirth — Add InputDatePickerFormField.focusNode prop
    #136673 merged on October 23, 2023 — Small: 6 comments over 6 days, 22 additions and 0 deletions in 2 files
    Reviewed by: Greg Spencer,

    Makes it a little easier to operate the date picker from the keyboard.

  • Kostia Sokolovskyi — Instrument RestorationBucket, _RouteEntry and DisposableBuildContext for leak tracking.
    #137477 merged on October 28, 2023 — Small: 3 comments over 5 hours, 166 additions and 4 deletions in 10 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — Cover last test/material tests with leak tracking.
    #137004 merged on October 23, 2023 — Small: 2 comments over 2 days, 84 additions and 48 deletions in 5 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — BannerPainter should dispatch creation and disposal events.
    #137472 merged on October 28, 2023 — Small: 2 comments over 9 hours, 33 additions and 1 deletion in 2 files
    Reviewed by: Polina Cherkasova

    Kostia Sokolovskyi — TextPainter should dispatch creation and disposal events.
    #137416 merged on October 28, 2023 — Small: 7 comments over 14 hours, 80 additions and 25 deletions in 7 files
    Reviewed by: Navaron Bracke, Polina Cherkasova

    Polina Cherkasova — Instrument more disposables.
    #137309 merged on October 28, 2023 — Small: 6 comments over 2 days, 44 additions and 3 deletions in 4 files
    Reviewed by: Binni Goel,

    Polina Cherkasova — Add dependency on leak_tracker to flutter_test.
    #137069 merged on October 25, 2023 — Medium: 10 comments over 1 day, 353 additions and 98 deletions in 63 files
    Reviewed by: Dan Field, Jonah Williams

    Kostia Sokolovskyi — AnimationController should dispatch creation in constructor.
    #134839 merged on October 26, 2023 — Small: 16 comments over 1 month, 120 additions and 19 deletions in 18 files
    Reviewed by: Polina Cherkasova

    This week's progress on leak detection and leak fixing. Huge thanks to the huge effort from Polina Cherkasova, Kostia Sokolovskyi, Navaron Bracke, Binni Goel, and Dan Field.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
c: proposal A detailed proposal for a change to Flutter framework flutter/packages/flutter repository. See also f: labels. P1 High-priority issues at the top of the work list permanently locked Prevent this issue from getting automatically unlocked team-framework Owned by Framework team triaged-framework Triaged by Framework team
Projects
None yet
Development

No branches or pull requests

4 participants