Flutter 3.24.0 release notes
This page has release notes for 3.24.0. For information about subsequent bug-fix releases, check out the Flutter CHANGELOG.
Flutter framework
#Framework
#RenderFlex
baseline intrinsics by @LongCatIsLooong in 145483- Upgrade leak_tracker. by @polina-c in 145940
- Upgrade leak_tracker. by @polina-c in 145997
- Remove state shared across tests by @Hixie in 145281
- Add flutter_goldens README by @Hixie in 145278
- Implement
computeDryBaseline
for cupertinoRenderBox
es by @LongCatIsLooong in 145951 - Fixes some gesture recognizers are not disposed. by @Dimilkalathiya in 146072
- Fix SliverMainAxisGroup layout in reverse by @Piinks in 145572
- Add test for animated_container.0.dart API example. by @ksokolovskyi in 145995
- Implement SelectionArea triple click gestures by @Renzo-Olivares in 144563
- Dispose FocusNode in tests. by @polina-c in 146161
- Update material_color_utilities package version to latest 0.11.1 by @QuncCccccc in 145959
- Avoid calling
TextPainter.plainText
for simple static text by @LongCatIsLooong in 146084 - Renderflex cross intrinsic size with baseline alignment by @LongCatIsLooong in 146185
- Fix TextStyle.lerp() to properly interpolate text shadows by @leoafarias in 145666
computeDryBaseline
for rendering / widgets RenderBoxes by @LongCatIsLooong in 146143- Add tests for theme_extension.1.dart API example. by @ksokolovskyi in 145819
- Update documentation to discourage using the TextEditingController.text setter by @victorsanni in 146151
- Bump to AGP 8.1/Gradle 8.3 (almost) everywhere by @gmackall in 146181
- Reverts "Bump to AGP 8.1/Gradle 8.3 (almost) everywhere (#146181)" by @auto-submit in 146305
- Fix cursor is not centered when cursorHeight is set (non-Apple platforms). by @bleroux in 145829
- Reland "Bump to AGP 8.1/Gradle 8.3 (almost) everywhere" by @gmackall in 146307
- Make FileSystem dependency explicit througout. by @Hixie in 146008
- Remove double heading by @goderbauer in 146441
- Roll pub packages by @flutter-pub-roller-bot in 146444
- Correct doc for AnimationMin by @goderbauer in 146531
- Remove additional references to engine v1 android embedding by @gmackall in 146523
- [Windows] Drop support for Windows 7/8 apps in template by @cbracken in 146668
- Fix curved animation memory leak for scrollbar by @ValentinVignal in 146670
- Support
flutter run --wasm
andflutter drive --wasm
. by @eyebrowsoffire in 146231 - Update gen_keycodes templates by @jmagman in 146481
- Fix
getOffsetForCaret
crash by @LongCatIsLooong in 146669 - Light sliver clean up before SliverTree by @Piinks in 146696
- [flutter_tools] Fix conductor for package args roll by @christopherfujino in 146646
- test: Fix memory leak in transitions test by @ValentinVignal in 146747
- Update leak related TODOs. by @polina-c in 146743
- Add hitTestBehavior and rootOverlay to LongPressDraggable constructor… by @Amir-P in 146386
- Roll pub packages by @flutter-pub-roller-bot in 146797
- Fix doc reference to RendererBinding.renderViews by @goderbauer in 146837
- Roll pub packages by @flutter-pub-roller-bot in 146842
- Remove checked mode references by @goderbauer in 146845
- Added missing tests for OverflowBar example. by @matthew-carroll in 146780
- [iOS] Migrate @UIApplicationMain attribute to @main by @loic-sharma in 146707
- fix test-case for RenderView by @Dimilkalathiya in 146825
- Rewrap some lines that are about to get much longer. by @Hixie in 146803
- Unpin frontend_server_client and roll packages by @derekxu16 in 146650
- Try to be more consistent about deleting test apps in devicelab logic. by @Hixie in 146856
- Reverts "Try to be more consistent about deleting test apps in devicelab logic. (#146856)" by @auto-submit in 146927
- Get rid of _NullElement. by @polina-c in 146741
- Remove now-redundant tests for isForEnvironment by @Hixie in 146804
- Try to be more consistent about deleting test apps in devicelab logic by @Hixie in 146931
- Reverts "Try to be more consistent about deleting test apps in devicelab logic (#146931)" by @auto-submit in 146947
- Assert that the goldenFileComparator is a LocalFileComparator by @Hixie in 146802
- Make goldenFileComparator a field instead of a trivial property by @Hixie in 146800
- Bump meta to 1.14.0 by @goderbauer in 146925
- [macOS] Migrate @NSApplicationMain attribute to @main by @loic-sharma in 146848
- Dispose the curved animation in transition test by @ValentinVignal in 146961
- Add Swift Package Manager as new opt-in feature for iOS and macOS by @vashworth in 146256
- Update link branches to
main
(continued) by @guidezpl in 146985 - Add test for preferred_size.0.dart API example. by @ksokolovskyi in 146725
- Add test for dismissible.0.dart API example. by @ksokolovskyi in 146723
- Add test for animated_padding.0.dart API example. by @ksokolovskyi in 146718
- Add tests for gesture_detector.0.dart and gesture_detector.1.dart API examples. by @ksokolovskyi in 146724
- fixes some gesture not getting disposed by @Dimilkalathiya in 147112
- Update
examples/api
for android platform by @lamnhan066 in 147102 - fixes cupertino page transition leak by @Dimilkalathiya in 147133
- Add test for animated_positioned.0.dart API example. by @ksokolovskyi in 146720
- Fix typos related to Navigator by @choi88andys in 147221
- Add test for animated_align.0.dart API example. by @ksokolovskyi in 146719
- Fix frozen
StretchingOverscrollIndicator
animation by @gilnobrega in 147195 - Add test for focus_node.0.dart API example. by @ksokolovskyi in 146943
- Adds AutovalidateMode.onFocusChange to Form and FormField by @Mairramer in 140962
- Add test for sliver_animated_opacity.0.dart API example. by @ksokolovskyi in 146722
- Remove unneeded local variables and comments in Editable and RenderParagraph by @tgucio in 146843
- Remove hidden dependencies on the default goldenFileComparator. by @Hixie in 146956
- Allow the SceneBuilder, PictureRecord, and Canvas constructor calls from the rendering layer to be hooked by @Hixie in 147271
- Fix memory leaks in
Hero
widget by @ValentinVignal in 147303 - zero-sized RenderConstraintsTransformBox respects clipBehavior by @LongCatIsLooong in 147349
- Clean up leaks in a test. by @polina-c in 147312
- Refactor route focus node creation by @gspencergoog in 147390
- fixes
CupertinoFullscreenDialogTransition
leaks by @Dimilkalathiya in 147168 - Added missing tests for Table api example
table.0.dart
. by @kishan-dhankecha in 147318 - Add tests for character_activator.0.dart API example. by @ksokolovskyi in 147384
- Add configurable hitTestBehavior to Scrollable by @Amir-P in 146403
- Added missing code block language in docs by @kishan-dhankecha in 147481
- Add tests for single_activator.0.dart API example. by @ksokolovskyi in 147426
- Update reorderable_list.dart to use Dart 3 return switch statement for consistency by @EchoEllet in 147505
- Add test for animated_fractionally_sized_box.0.dart API example. by @ksokolovskyi in 146721
- Draggable feedback positioning by @timcreatedit in 145647
- Reverts "Draggable feedback positioning (#145647)" by @auto-submit in 147658
- Implement computeDryBaseline for
RenderWrap
by @LongCatIsLooong in 146260 - Update selectable_text_test.dart by @polina-c in 147677
- Implement getDryBaseline for Stack and Overlay by @LongCatIsLooong in 146253
- Allow explicit exclusion of packages from pinned packages in
flutter update-packages --force-update
by @gspencergoog in 147679 - Reverts "Implement computeDryBaseline for
RenderWrap
(#146260)" by @auto-submit in 147692 - Improved documentation for SpringSimulation by @drown0315 in 146674
- Fix memory leaks in
CupertinoSwitch
by @ValentinVignal in 147821 - Fix leak in a test. by @polina-c in 147846
- Fix janks and memory leaks in
CupertinoPageTransition
andCupertinoFullscreenDialogTransition
by @ValentinVignal in 146999 - Roll pub packages by @flutter-pub-roller-bot in 147891
- MultiSelectableSelectionContainerDelegate documentation fixes. by @davidhicks980 in 147843
- Roll pub packages by @flutter-pub-roller-bot in 147896
- test focus example 0 by @NobodyForNothing in 147564
- Added missing tests for ButtonStyle example by @osama383 in 147457
- Add tests for shortcuts.dart API examples. by @ksokolovskyi in 147433
- Add tests for callback_shortcuts.0.dart API example. by @ksokolovskyi in 147536
- Change dialog font family by @MitchellGoodwin in 141295
- improve focus example by @NobodyForNothing in 147464
- Implement
RenderEditable.computeDryBaseline
by @LongCatIsLooong in 147911 - [web] Use platform detection from Flutter web engine. by @ditman in 147346
- fixes
RawDialogRoute
memory leak by @Dimilkalathiya in 147817 - Fix more memory leaks in cupertino page transition by @ValentinVignal in 147907
- Unpin DDS and roll pub packages by @DanTup in 147925
- Fix memory leaks in context menu by @ValentinVignal in 147822
- Fix semantic debugger by @goderbauer in 147953
- Exclude abi key in local golden file testing by @Piinks in 148023
- Remove hidden dependencies on the default LocalPlatform by @Hixie in 147342
- Don't pin package:macros by @christopherfujino in 148087
- Reland "Implement computeDryBaseline for
RenderWrap
(#146260)" by @LongCatIsLooong in 148086 - Add tests for stream_builder.0.dart API example. by @ksokolovskyi in 147832
- Add test for draggable.0.dart API example. by @ksokolovskyi in 147941
- Add test for animated_size.0.dart API example. by @ksokolovskyi in 147828
- Add test for scaffold.1.dart by @ValentinVignal in 147966
- test sliver fill remaining examples by @NobodyForNothing in 148041
- Native ios context menu by @justinmc in 143002
- Reverts "Native ios context menu (#143002)" by @auto-submit in 148237
- Reland Native ios context menu (#143002) by @justinmc in 148238
- Reverts "Reland Native ios context menu (#143002) (#148238)" by @auto-submit in 148254
- Use super.key instead of manually passing the Key parameter to the parent class by @EchoEllet in 147621
- test material text field example by @NobodyForNothing in 147864
- Maintain the same layout constraints for item in the ReorderableList during dragging as before dragging. by @yiiim in 147863
- Fix abi key for local golden file testing by @Piinks in 148072
- Reland Native ios context menu (#143002) (#148238) by @justinmc in 148265
- Update _handlePushRouteInformation to Future
to indicate whether any of the observer has handled the route or not by @hangyujin in 147901 - Fix leaky tests. by @polina-c in 148434
- Enhanced enum features for
AnimationStatus
by @nate-thegrate in 147801 - Add tests for scaffold.of.#.dart API examples. by @ksokolovskyi in 147637
- Add test for fade_transition.0.dart API example. by @ksokolovskyi in 148178
- Add test for tab_controller.1.dart API example. by @ksokolovskyi in 148189
- Add test for image.error_builder.0.dart API example. by @ksokolovskyi in 148497
- fixes
CupertinoModalPopupRoute
by @Dimilkalathiya in 147823 - Fix painting API examples tests directories structure. by @ksokolovskyi in 148177
- Add tests for logical_key_set.0.dart API example. by @ksokolovskyi in 147735
- Add tests for shared_app_data.#.dart API examples. by @ksokolovskyi in 147830
- SelectionArea's selection should not be cleared on loss of window focus by @Renzo-Olivares in 148067
- Make FileSystem dependency explicit througout (more). by @Hixie in 148095
- Adds tests to NestedScrollView examples by @NobodyForNothing in 148170
- Remove hidden dependencies on LocalProcessManager by @Hixie in 148096
- [wiki migration] Infra team pages by @Piinks in 148718
- Add test for focus example 2 by @NobodyForNothing in 147624
- Fix test that leaks images. by @polina-c in 148494
- Add test for undo_history_controller.0.dart by @ValentinVignal in 148205
- Fix two dimensional viewport unexpected null exception when no child is laid out by @Amir-P in 148256
- Add tests for actions.0.dart API example. by @ksokolovskyi in 148678
CupertinoDialogRoute
leak fix by @Dimilkalathiya in 148774- Try removing robolectric from
integration_test
tests by @gmackall in 148803 - Remove an assert with false positives by @LongCatIsLooong in 148795
- Add frame number and widget location map service extension by @helin24 in 148702
- Allow
RenderObject.getTransformTo
to take an arbitrary RenderObject in the same tree by @LongCatIsLooong in 148897 - Add tests for restorable_value.0.dart API example. by @ksokolovskyi in 148676
- Add test for scaffold.0.dart and scaffold.2.dart by @ValentinVignal in 148166
- Test raw autocomplete api examples by @NobodyForNothing in 148234
- Fix DecoratedSliver sample code to reflect the description by @huycozy in 148621
- Update
FocusManager
platform check to include iOS by @nate-thegrate in 148612 - Remove hidden dependencies on HttpClient by @Hixie in 148773
- Test snack bar examples by @NobodyForNothing in 147774
- Test remaining transitions api examples by @NobodyForNothing in 148302
- [wiki migration] Remaining pages under docs/contributing/ by @Piinks in 148790
- Reland "Update
FocusManager
platform check to include iOS" by @nate-thegrate in 148984 - Fix TwoDimensionalViewport's keep alive child not always removed (when no longer should be kept alive) by @gawi151 in 148298
- Add test for text_editing_controller.0.dart API example. by @ksokolovskyi in 148872
- Add tests for editable_text.on_changed.0.dart API example. by @ksokolovskyi in 148874
- Fix Linux numpad shortcuts on web by @bleroux in 148988
- Add test for future_builder.0.dart by @ValentinVignal in 148453
- Remove
TextEditingController
private member access by @LongCatIsLooong in 149042 - Add selectionOverlayBuilder in CupertinoDatePicker and CupertinoTimer… by @varunkamanibosc in 143079
- Fix the RenderFlex.computeDryBaseline implementation to match computeDistanceToActualBaseline by @LongCatIsLooong in 149062
- Add link to golden file test docs in the framework gardener guide by @loic-sharma in 149207
- sliverGridDelegate mainAxisExtent add assert by @hello-coder-xu in 148470
- Reverts "sliverGridDelegate mainAxisExtent add assert (#148470)" by @auto-submit in 149224
- Add tests for animated_switcher.0.dart API example. by @ksokolovskyi in 149180
- Clean leak in editable_text_test.dart. by @polina-c in 149223
- Add a sentinel value for
TextStyle.height
by @LongCatIsLooong in 149049 - Add test for radio.toggleable.0.dart by @ValentinVignal in 149153
- Add test for inherited_theme.0.dart by @ValentinVignal in 149120
- Prevent LayoutBuilder from rebuilding more than once by @LongCatIsLooong in 147856
- temporarily disable SemanticsAction tests to unblock engine change by @yjbanov in 149274
- Reverts "Prevent LayoutBuilder from rebuilding more than once (#147856)" by @auto-submit in 149279
- disable Impeller on external texture test. by @jonahwilliams in 149292
- [GAR] [a11y] Update text button page in a11y assessment app by @hangyujin in 148905
- Remove hidden dependency on ABI. by @Hixie in 148987
- Add tests for tween_animation_builder.0.dart API example. by @ksokolovskyi in 148902
- Adding a default case to unblock engine roll. by @chingjun in 149353
- Add feedback for long press on iOS by @victorsanni in 148922
- Manual pub roll w/ gradle lockfile regeneration by @gmackall in 149342
- Wire up SemanticsAction.focus to the framework by @yjbanov in 149374
- DRY up FakeCodec by @kevmoo in 149381
- Fix incorrect behavior of ScrollViewKeyboardDismissBehavior.onDrag for ScrollViewers with Drawer by @dawidope in 148948
- Rewrite CupertinoActionSheet by @dkwingsmt in 149334
- _NoOpCodec review feedback by @kevmoo in 149442
- Reland "Prevent LayoutBuilder from rebuilding more than once (#147856)" by @LongCatIsLooong in 149303
- [CupertinoActionSheet] Fix overflow of the overscroll section when the user scrolls far by @dkwingsmt in 149542
- Roll pub packages by @flutter-pub-roller-bot in 149617
- Fix the scrolling layout deviation of
CupertinoActionSheet
by @dkwingsmt in 149439 - Allow
find.byTooltip
to use a RegEx by @gspencergoog in 149348 - Scrollbar thumb drag gestures now produce one start and one end scroll notification by @HansMuller in 146654
- Prepares semantics_update_test for upcoming heading level changes by @chunhtai in 149671
- TreeSliver & associated classes by @Piinks in 147171
- Feature: Add AnimatedList with separators by @Peetee06 in 144899
- Reverts "TreeSliver & associated classes (#147171)" by @auto-submit in 149754
- Remove temporary LayoutBuilder migration flag, defer
markNeedsLayout
by @LongCatIsLooong in 149637 - Fixes Router transaction to respect operation order by @chunhtai in 149763
- Remove abi key from local golden file testing by @Piinks in 149696
- Fix some links in the "Handling breaking change" section by @mdebbar in 149821
- Fix leaky test. by @polina-c in 149822
- Add support for setting the heading level for web semantics (#97894) by @victorgalo in 125771
- SliverResizingHeader by @HansMuller in 143325
- Roll pub packages by @flutter-pub-roller-bot in 149852
- [CupertinoActionSheet] Add sliding tap gesture by @dkwingsmt in 149471
- Remove abi key permanently from golden file testing by @Piinks in 149858
- Remove some vestigial /!/ comments by @Hixie in 149361
- Add test for standard_fab_location.0.dart by @ValentinVignal in 149225
- Add test for dropdown_menu.1.dart by @ValentinVignal in 149547
- Refactor
widget_inspector_test.dart
by @elliette in 149850 - Prepare images for tests individually to enable clean up of cache. by @polina-c in 149693
- Fix test case in "getRootWidgetSummaryTree" test by @elliette in 149923
- PinnedHeaderSliver by @HansMuller in 143196
- Refactor
getRootWidgetSummaryTree
tests inwidget_inspector_test.dart
by @elliette in 149930 - [CupertinoActionSheet] Match colors to native by @dkwingsmt in 149568
- Revert "[CupertinoActionSheet] Match colors to native (#149568)" by @vashworth in 149998
- Retain the toString method for subclasses of Key in profile/release mode by @jason-simmons in 149926
- Update hasTrailingSpaces by @ttorii20 in 149698
- Cut no-longer-accurate microtask reference in finalizeTree doc by @gnprice in 149941
- [web] Notify engine of handled PointerScrollEvents. by @ditman in 145500
- Use const bool.fromEnvironment("dart.tool.dart2wasm") to detect dart2wasm by @mkustermann in 149996
- Fixes TextField hinttext in a11y_assessment by @chunhtai in 150007
- Reland: [CupertinoActionSheet] Match colors to native (#149568) by @dkwingsmt in 150015
- Reverts "Reland: [CupertinoActionSheet] Match colors to native (#149568) (#150015)" by @auto-submit in 150021
- Fixes a bug where NavigatorState.pop does not consider any possible s… by @chunhtai in 150014
- Fix copy-paste-o in MethodChannel.invokeListMethod doc by @gnprice in 149976
- Add tests for scaffold drawer and end drawer by @ValentinVignal in 149383
- Fix
ColorScheme
example and tests by @gspencergoog in 150018 - Add new
WidgetInspector
service extension:getRootWidgetTree
by @elliette in 150010 - Remove double MaterialApp wrap from api samples by @goderbauer in 150055
- Roll pub packages by @flutter-pub-roller-bot in 150070
- Reland "Add tests for scaffold drawer and end drawer" (#150045) by @ValentinVignal in 150047
- Fix markdown hyperlinks in the style guide by @nate-thegrate in 150071
- Update WidgetStatesController docs by @FMorschel in 150081
- Reland 2: [CupertinoActionSheet] Match colors to native by @dkwingsmt in 150129
- RawScrollbar: don't listen for drag gestures when scrolling is not possible by @HansMuller in 149925
- Revert "[CupertinoActionSheet] Add sliding tap gesture" by @dkwingsmt in 150147
- Fix leaky test. by @polina-c in 150235
- Include transform in static Gradient lerp methods by @Zabadam in 149624
- Switch to
Iterable.cast
instance method by @parlough in 150185 - Add tests for navigator.0.dart by @ValentinVignal in 150034
- Roll pub packages by @flutter-pub-roller-bot in 150267
- Add transparent color to Cupertino colors by @victorsanni in 150149
- Make
CupertinoTextField
respect decoration color when disabled by @victorsanni in 149774 - Fix flaky complex_layout_scroll_perf__memory test by @jtmcdole in 150287
- Reverts "Fix flaky complex_layout_scroll_perf__memory test (#150287)" by @auto-submit in 150293
- Reland: [CupertinoActionSheet] Add sliding tap gesture by @dkwingsmt in 150219
- Reland TreeSliver by @Piinks in 149839
- Reland "sliverGridDelegate mainAxisExtent add assert (#148470)" by @hello-coder-xu in 149720
- Reland 3: [CupertinoActionSheet] Match colors to native by @dkwingsmt in 150386
- Update matchesGoldenFile documentation reference to goldenFileComparator by @alestiago in 150343
- Fix doc comment references to 'this' by @srawlins in 150379
- Fix typo in
SliverLayoutDimensions.hashCode
where not all properties are used in the hash code. by @PurplePolyhedron in 150306 - Reverts "Reland 3: [CupertinoActionSheet] Match colors to native (#150386)" by @auto-submit in 150413
- Add test for icon_button.3.dart by @ValentinVignal in 149988
- Remove duplicate testOutputsDirectory definition from integration_test package by @jakemac53 in 150224
- Add tests for about_list_tile.0.dart by @ValentinVignal in 150181
- Add test for inherited_notifier.0.dart by @ValentinVignal in 150344
- Update Material token to the latest 4.1.0 by @QuncCccccc in 150382
- made SelectionArea alignment consistent between web and other platform by @LimaneGaya in 150037
- Enable SelectionArea double tap/triple tap gesture support for mobile platforms by @Renzo-Olivares in 149295
- Reland 4: [CupertinoActionSheet] Match colors to native by @dkwingsmt in 150442
- Remove discontinued
device_info
andconnectivity
plugins fromflutter_gallery
, roll pub packages by @gmackall in 150585 - [CupertinoActionSheet] Fix the layout (part 1) by @dkwingsmt in 149636
- Fix: Memory leak in UndoHistory widget because it never de-registered itself as global UndoManager client (Resolves #148291) by @matthew-carroll in 150661
- Add tests for form_text_field.1.dart by @ValentinVignal in 150481
- Reverts "Add tests for form_text_field.1.dart (#150481)" by @auto-submit in 150696
- Fix flaky sliver tree test by @Piinks in 150707
- Manual engine roll to be7db94196fe by @jason-simmons in 150714
- Manual engine roll to 6884e83 by @gmackall in 150733
- Reverts "Manual engine roll to 6884e83 (#150733)" by @auto-submit in 150746
- Add an example for CupertinoPopupSurface by @huycozy in 150357
- Reland Add tests for form_text_field.1.dart (#150481) (#150696) by @ValentinVignal in 150750
- Fix link in RenderObjectWidget doc comment by @swrenn in 150600
- fix a typo by @foxmind1 in 150682
- Document RenderObject._relayoutBoundary and its invariant; small refactors by @gnprice in 150527
- Add
focusNode
,focusColor
,onFocusChange
,autofocus
toCupertinoButton
by @victorsanni in 150721 - Remove reference to
MaterialApp
andshowCupertinoModalPopup
fromCupertinoAlertDialog
by @dkwingsmt in 150725 - Fix leaky tests. by @polina-c in 150817
- Fixes for Style Guide for Flutter Repo by @swrenn in 150167
- Remove
dual_screen
fromnew_gallery
integration test by @gmackall in 150808 - Reverts "Remove
dual_screen
fromnew_gallery
integration test (#150808)" by @auto-submit in 150871 - Adding
@docImport
s to theanimation
library by @goderbauer in 150798 - Reland "Remove dual_screen from new_gallery integration test" by @gmackall in 150873
- Improve the behavior of scrollbar drag-scrolls triggered by the trackpad by @HansMuller in 150275
- Copy any previous
IconThemeData
instead of overwriting it in CupertinoButton by @ricardoboss in 149777 - Manual engine roll to ddd4814 by @gmackall in 150952
- Draggable feedback positioning by @timcreatedit in 149040
- Add test for segmented_button.0.dart by @ValentinVignal in 150676
- Reduce the depth used in a test that applies finders to deep widget trees by @jason-simmons in 151049
- More docimports for animation library by @goderbauer in 151011
- Fix:
CupertinoActionSheet
should take up max height when actions section is short by @dkwingsmt in 150708 - [flutter_driver] add allocator mtl to memory event allowlist. by @jonahwilliams in 151153
- docimports for semantics by @goderbauer in 151132
- Docimports for foundation by @goderbauer in 151119
- docimports for gestures by @goderbauer in 151123
- docimports for cupertino by @goderbauer in 151149
- docimports for services by @goderbauer in 151134
- docimports for physics by @goderbauer in 151125
dismissible.dart
code cleanup by @nate-thegrate in 150276- docimports for scheduler by @goderbauer in 151126
- docimports for painting by @goderbauer in 151143
- ScrollEndNotification example: auto-scroll based on RenderSliver constraints and geometry by @HansMuller in 143538
- Fix typo by @QuncCccccc in 151192
- Interactable ScrollView content when settling a scroll activity by @Michal-MK in 145848
- docImports for flutter_test by @goderbauer in 151189
- Fix result propagation in RenderSliverEdgeInsetsPadding.hitTestChildren by @knopp in 149825
- Fix scheduler event loop being stuck due to task with Priority.idle by @lauweijie in 151168
Material
#- Update tokens to v2.3.5 by @QuncCccccc in 145356
- InputDecorator M3 tests migration - Step7 - container by @bleroux in 145583
- Add
DataColumn.headingRowAlignment
forDataTable
by @TahaTesser in 144006 - Deprecate
ButtonBar
,ButtonBarThemeData
, andThemeData.buttonBarTheme
by @TahaTesser in 145523 - Fix
MenuItemButton
overflow by @TahaTesser in 143932 - Implements
RenderBox.computeDryBaseline
for material render boxes by @LongCatIsLooong in 146027 - Fix border color is wrong for a focused and hovered TextField by @bleroux in 146127
- Add tests for material_state_mouse_cursor.0.dart API example. by @ksokolovskyi in 145987
- Fix chip baseline implementation by @LongCatIsLooong in 146162
- Fix typos in bottom_sheet.dart by @bleroux in 146188
- Enhance ColorScheme.fromSeed with a new
variant
parameter by @Hixie in 144805 - Add SegmentedButton expand feature by @AcarFurkan in 142804
- Add
DropdownMenu
cursor behavior sample by @TahaTesser in 146133 - Magnifier cleanup by @Hixie in 143558
- Fix InputDecorator suffix and prefix IconButtons ignore
IconButtonTheme
by @TahaTesser in 145473 - Adds semanticsLabel to MenuItemButton by @philipfranchi in 145846
ExpansionTile
Unable to remove right padding from title by @Michal-MK in 145271- Prepare for RenderDecorator.computeBaseline changes. by @LongCatIsLooong in 146363
- Add a custom shape example for
AppBar.shape
by @TahaTesser in 146421 - Fix DropdownButtonFormField throws when onChange is null by @bleroux in 146342
- Text editing inside of Transformed.scale by @justinmc in 146019
- Fix skwasm tests by @eyebrowsoffire in 145570
- Fix InputDecorator label position ignore visual density by @bleroux in 146488
- Fix
IconButton
theming in theInputDecorator
by @TahaTesser in 146567 - Fix out of sync templates files and add a check by @TahaTesser in 145747
- Fix leaking curved animation. by @polina-c in 146644
- Fix label text color is wrong for a focused and hovered TextField by @bleroux in 146572
- Fix memory leaks in
FloatingActionButton
by @ValentinVignal in 146711 - Fixes _DropdownMenuState leaking text controller by @Dimilkalathiya in 146571
- Fix filled text field active indicator overflows container bounds by @bleroux in 146637
- Implementing control flow collections by @nate-thegrate in 146601
- Fix memory leak in
BottomNavigationBar
by @ValentinVignal in 146748 - Fix leak memory in
Tooltip
and account detail by @ValentinVignal in 146833 - Update link branches to
main
by @guidezpl in 146558 - Fix
Tab
indicator image configuration doesn't inherit device pixel ratio by @TahaTesser in 146812 - Revert "Update link branches to
main
" by @guidezpl in 146880 - Reland: Update link branches to
main
by @guidezpl in 146882 - Fix memory leak in paginated tables by @ValentinVignal in 146755
- Fix memory leak in data table by @ValentinVignal in 146892
- Fix memory leaks in
MaterialBanner
by @ValentinVignal in 146963 - Fix memory leaks in navigation rail by @ValentinVignal in 146988
- Add generic type for result in PopScope by @chunhtai in 139164
- Reverts "Add generic type for result in PopScope (#139164)" by @auto-submit in 147015
- [material] Fix info text by @jagomf in 147040
- Fixed few typos by @anisalibegic in 147087
- Re-land fix for not disposed TabController by @polina-c in 146745
- Fix memory leaks in
PopupMenu
by @ValentinVignal in 147174 - Fix memory leaks in
CupertinoTextMagnifier
by @ValentinVignal in 147208 - Mention visualDensity impact on ButtonStyle.padding documentation by @bleroux in 147048
flutter/lib/src/
: refactoring if-chains into switch expressions by @nate-thegrate in 146293- Fix memory leak in switch painter by @ValentinVignal in 147228
- Fix chips delete icon override the default icon size and ignores
IconTheme
from the chip property andChipThemeData
by @TahaTesser in 146509 - Add missing
overlayColor
property instyleFrom
methods by @TahaTesser in 146685 - Disable leak tracking for selection text area by @ValentinVignal in 147273
- Fix memory leaks in
BottomNavigationBar
by @ValentinVignal in 147213 - Add support for overriding
reverseCurve
withExpansionTile.expansionAnimationStyle
by @chika3742 in 147103 - Fix filled color is wrong for a focused and hovered TextField by @bleroux in 146976
- Makes badge to auto size with content by @chunhtai in 146853
- add a new PopScope.onPopWithResultInvoke widget to replace PopScope.onPopInvoke by @chunhtai in 147016
- Fix
DateRangePickerDialog
does not userangePickerHeaderBackgroundColor
fromDatePickerTheme
in M2 by @TahaTesser in 147370 - Fix
FloatingActionButton
docs forbackground
andforeground
properties by @TahaTesser in 147372 - Fix helperMaxLines and errorMaxLines documentation by @bleroux in 147409
- Fix
_RenderValueIndicator
leak by @Dimilkalathiya in 147451 - Add ability to disable
FloatingActionButton
scale and rotation animations usingFloatingActionButtonAnimator.noAnimation
by @TahaTesser in 146126 - [Fix]: showDateRangePicker with "large" helpText cutoffs the save button by @zeqinjie in 146049
- Fix wide
DatePicker
input mode button padding for Material 3 by @TahaTesser in 147236 - Fix memory leak in
TabPageSelector
by @ValentinVignal in 147403 - Revert "add a new PopScope.onPopWithResultInvoke widget to replace Po… by @chunhtai in 147597
- Reverts "Fix memory leak in
TabPageSelector
(#147403)" by @auto-submit in 147622 flutter/lib/src/
: refactoring if-chains into switch expressions by @nate-thegrate in 147472- Fix
TextField
horizontal drag conflicts by @Renzo-Olivares in 147341 - fix DropdownMenu overflow by @PurplePolyhedron in 147233
- Remove obsolete performance analysis tools. by @Hixie in 147663
_RenderDecorator.computeDryBaseline
by @LongCatIsLooong in 146365- Add default arguments to
AnimatedPhysicalModel
by @nate-thegrate in 147424 - Always relies on floatingLabelStyle when FloatingLabelBehavior.always by @bleroux in 147374
- fixes
SearchAnchor
leak by @Dimilkalathiya in 147652 - Fix memory leak in ExpansionTile. by @ksokolovskyi in 147596
- Reland fix memory leaks for tab selector by @ValentinVignal in 147689
- Fix test. by @polina-c in 147813
- Fix Tooltip.decoration comment by @karelklic in 147858
- fix MenuItemButton if child is null by @zeqinjie in 147485
- DropdownMenu cleanup by @bleroux in 147860
- Reapply new PopScope API by @chunhtai in 147607
- Properly guard context access in then clauses by @goderbauer in 147935
- Introduce
TabBar.textScaler
for tab label upper text scale limit by @TahaTesser in 147232 - Implement computeDryBaseline for RenderChip by @LongCatIsLooong in 146224
- Fix floating SnackBar is not centered when RTL and Material 2 by @bleroux in 147861
- 🐛 : FIX : Long labels overflowing in extended navigation rail. by @aliasgar4558 in 145474
_RenderValueIndicator
leak fix used onRangeSlider
by @Dimilkalathiya in 147581- Tweak to fix context.mounted in dialog_demo by @srawlins in 147998
- Fix ExpandIcon color when ExpansionPanel.canTapOnHeader true (#147097) by @BenjiFarquhar in 147098
- Add Badge example by @huycozy in 148053
- Getting rid of containers by @nate-thegrate in 147432
if
chains →switch
expressions by @nate-thegrate in 147793- Fix
DropdownMenu
keyboard navigation by @PurplePolyhedron in 147294 - Add
clipBehavior
toDialogTheme
by @ValentinVignal in 147635 - Docs on TextField disposed by a scrollable by @justinmc in 148149
- Fix
MaterialStateBorderSide
lerp in theCheckbox
and chips by @TahaTesser in 148124 - Refactors page API by @chunhtai in 137792
- Move toggleable to widget layer by @victorsanni in 148272
- Add missing InputDecorator.hintText tests by @bleroux in 148113
- Fixes semantics ordering when there are multiple TextFields with pref… by @chunhtai in 148267
- Fix memory leaks in open upwards page transition by @ValentinVignal in 148046
- Fix memory leaks in
SnackBar
by @ValentinVignal in 147212 - Add
clipBehavior
toDrawerThemeData
by @ValentinVignal in 148061 - Fix memory leaks in
_PopupMenuRoute
by @ValentinVignal in 148373 - Removing duplicate assert on
VisualDensity
constructor by @FMorschel in 148281 - Reland fix TextField helper top padding on M3 by @bleroux in 146754
ThemeData
minor spring cleaning by @guidezpl in 148408- fixes
DialogRoute
memory leak by @Dimilkalathiya in 147816 switch
statement cleanup by @nate-thegrate in 148382- Add test for material_banner.0.dart and material_banner.1.dart by @ValentinVignal in 148452
- Revert "
if
chains →switch
expressions" by @zanderso in 148556 - Move
Feedback
to widgets layer by @victorsanni in 148523 - Factor out
RawView
, makeView
listen to engine generated view focus events by @gspencergoog in 143259 - Reland "
if
chains →switch
expressions" by @nate-thegrate in 148634 - Implement new
AnimationStatus
getters by @nate-thegrate in 148570 - [wiki migration] Framework team pages by @Piinks in 148721
- Removed brand references from MenuAnchor.dart by @davidhicks980 in 148760
switch
expressions: finale by @nate-thegrate in 148711- Adds Missing
onHover
&onFocusChange
forOutlinedButton.icon
by @piedcipher in 144374 - Add DropdownButton.menuWidth by @bleroux in 148125
- Make hover tests functional and cleanup mouse pointers in Material toggleables by @victorsanni in 148808
- Introduce
WidgetStateBorderSide.lerp
by @TahaTesser in 148122 - Update tokens to 4.0.0 by @QuncCccccc in 148789
- Fix the second TextFormField to trigger onTapOutside by @wyqlxf in 148206
- Add tests for material banner example by @NobodyForNothing in 147733
- Fix the second TextFormField to trigger onTapOutside by @wyqlxf in 148930
- Fix
SnackBar
action text button overlay color by @TahaTesser in 148961 - [a11y] Slider should respect bold text setting by @hangyujin in 149053
- fix popup menu offset when using
useRootNavigator
inPopupMenu
by @joodo in 144670 - Mouse onEnter and onExit now support hovering stylus by @justinmc in 149006
- fix M2 InputDecorator suffix icon doesn't turn red on error by @bleroux in 149161
- Clean leaky test. by @polina-c in 149199
- Remove opt out for CurvedAnimation. by @polina-c in 147594
- Fix
SearchAnchor
suggestions not refreshing after long API call by @luis901101 in 148767 - Change snack bar default hitTestBehavior to deferToChild when SnackBarThemeData.insetPadding is not null by @hany-achraf in 148568
- _ModalScopeStatus as InheritedModel by @LinXunFeng in 149022
- Update progress_indicator.dart to indicate the adaptive option is for both macOS and iOS by @EchoEllet in 145246
- Enable
explicitChildNodes
for theAlertDialog
content by @TahaTesser in 149130 - Fix
Slider
throws an error when_labelPainter
text is null by @hello-coder-xu in 148462 - allow changing textAlign of TextField in DropdownMenu by @angelocordero in 148074
- Reverts "Enable
explicitChildNodes
for theAlertDialog
content (#149130)" by @auto-submit in 149333 - Add locale in DatePickerThemeData by @MajdSallora in 148292
- Refactor
Material
build method by @nate-thegrate in 147430 - Have Material widgets in a Cupertino App partially use Cupertino theme by @MitchellGoodwin in 139253
- Add support for ExpansionPanel custom splash color by @BenjiFarquhar in 147126
- Switch to FilterQuality.medium for images by @goderbauer in 148799
- Fix InputDecorator default hint text style on M3 by @bleroux in 148944
- InputDecorator M3 tests migration - prefixIcon/suffixIcon by @bleroux in 149437
- Reverts "Fix InputDecorator default hint text style on M3 (#148944)" by @auto-submit in 149448
- Add a simplified SimpleCascadingMenuApp example by @kaljitism in 149147
- Added filter callback on dropdown menu by @dacianf in 143939
- Fix InputDecorator.prefixIcon color when disabled by @bleroux in 149595
- Fixes multi line textfield hint text gets ellipsized by @chunhtai in 148423
- Request focus if
SemanticsAction.focus
is sent to a focusable widget by @gspencergoog in 142942 - Reverts "Request focus if
SemanticsAction.focus
is sent to a focusable widget (#142942)" by @auto-submit in 149741 - Create CarouselView widget - Part 1 by @QuncCccccc in 148094
- Add
contrastLevel
parameter toColorScheme.fromSeed
by @QuncCccccc in 149705 - Fix InputDecorator suffixIcon color when in error and hovered by @bleroux in 149643
- Introduce
ChipAnimationStyle
to override default chips animations durations by @TahaTesser in 149245 - Reverts "Introduce
ChipAnimationStyle
to override default chips animations durations (#149245)" by @auto-submit in 149847 - Fix leaky test. by @polina-c in 149823
- Fix
SegmentedButton
clipping when drawing segments by @TahaTesser in 149739 - Reverts "Fix
SegmentedButton
clipping when drawing segments (#149739)" by @auto-submit in 149927 - Fix DropdownMenu can be focused and updated when disabled by @bleroux in 149737
- Add mouse cursor property to
CupertinoRadio
by @victorsanni in 149681 - [Reland] Fix
SegmentedButton
clipping when drawing segments (#149739) by @TahaTesser in 150090 - Reland: Request focus if accessibility focus is given to a Focus widget (#142942) by @gspencergoog in 149840
- Replace InputDecorator M3 golden test by @bleroux in 150111
- Update framework and flutter fix flutter.dev/docs links by @parlough in 150174
- [Reland] Introduce
ChipAnimationStyle
to override default chips animations durations by @TahaTesser in 149876 - Update doc for
ColorScheme.surface
by @QuncCccccc in 150212 - Validate the
contrastLevel
duringColorScheme
creation by @parlough in 150176 ScaffoldBackgroundColor
should default toColorScheme.surface
by @QuncCccccc in 149772- [a11y] Add semantics: button to bottom navigation bar items and dropdown menu items by @hangyujin in 149375
- Fix scrollable
TabBar
jittering by @TahaTesser in 150041 - Fix transparent
dividerColor
breaksTabBar.tabAlignment
by @TahaTesser in 150350 - add forceErrorText to FormField & TextFormField. by @hasanmhallak in 132903
- Revert "[a11y] Add semantics: button to bottom navigation bar items and dropdown menu items" by @hangyujin in 150445
- Clean leaky tests. by @polina-c in 150335
- Test InputDecoration API examples by @NobodyForNothing in 148560
- [material/menu_anchor.dart] Remove _MenuAnchorState from parent when disposed. by @davidhicks980 in 149586
- Make popup menu hardcoded padding configurable by @bleroux in 150506
- Update flutter.dev links from misc packages to more permanent destinations by @parlough in 150532
- [a11y] Update semantics in bottom_navigation_bar.dart by @hangyujin in 150576
- Fix a number of broken doc comment references by @srawlins in 150540
- Update flutter.dev links from framework to more permanent destinations by @parlough in 150531
- Linkify 'see also' sections by @goderbauer in 150734
- Fix collapsed InputDecorator minimum height by @bleroux in 150770
- Reland fix inputDecorator hint color on M3 by @bleroux in 150278
- feat: Add autofocus for
MenuItemButton
by @Fernthedev in 139396 - add onFocus to text fields by @yjbanov in 150648
- [a11y] Reland [#149375 ] Update semantics in dropdown.dart by @hangyujin in 150578
- Fix teardown of a FocusScopeNode in material/app_test by @jason-simmons in 151115
- Fix missing
[
in docs by @Pante in 151091 - Implementing a few switch statements by @nate-thegrate in 150946
iOS
#- Implementing switch expressions in
flutter_tools/
by @nate-thegrate in 145632 - Remove dead
compareIosVersions
function by @jmagman in 146298 - Support mdns when attaching to proxied devices. by @chingjun in 146021
- Convert ProjectMigration and ProjectMigrator to be async by @vashworth in 146537
- Control flow collections:
flutter_tools/
by @nate-thegrate in 147450 - Switch to more reliable flutter.dev link destinations in the tool by @parlough in 150587
- [tool] when writing to openssl as a part of macOS/iOS code-signing, flush the stdin stream before closing it by @andrewkolos in 150120
Android
#- [wiki migration] Android team pages by @Piinks in 148585
Tooling
#- Point kotlin message in
gradle_errors.dart
towards new place where templates define the kotlin version by @gmackall in 145936 - Remove trailing commas in android dependency version checking gradle plugin by @gmackall in 145718
- Flutter Gradle Plugin: add versionName and versionCode to FlutterExtension by @bartekpacia in 146044
- Add info strings to code blocks. by @kallentu in 146085
- Add
none
language strings to code blocks. by @kallentu in 146154 - Roll pub packages by @flutter-pub-roller-bot in 146245
- Flutter templates example app Gradle memory settings by @dcharkes in 146275
- refactor: Perform plugin resolution per platform by @Gustl22 in 144506
- Copy part files and sourcemaps when building with dart2js. by @eyebrowsoffire in 146356
- Increase the recommended Xcode version to Xcode 15 by @jmagman in 146367
- Roll pub packages by @flutter-pub-roller-bot in 146606
- Disable single character mode in the terminal when exiting flutter_tools by @jason-simmons in 146534
- [tools] Fix
--template=plugin_ffi
formatting by @dcharkes in 146269 - Update app Android gradle scripts to use flutter.versionName and flutter.versionCode by @bartekpacia in 146604
- Update the gradle task to add fallback scheme and host if needed when retrieving deep links. by @hangyujin in 146470
- Avoid forwarding the data after socket is disconnected. by @chingjun in 146665
- [Doctor] Improve CocoaPods messages by @loic-sharma in 146701
- Roll pub packages by @flutter-pub-roller-bot in 146929
- [tools] Make SnapshotType.platform non-nullable by @cbracken in 146958
- Changing the renderer on the web target should change its build key. by @eyebrowsoffire in 147003
- Redundant message fix by @ShrootBuck in 143978
- Add a breadcrumb for the pub autoroller by @Hixie in 146786
- Send event to GA3 for telemetry status mismatches between GA3 and GA4 by @eliasyishak in 146453
- Replace CocoaPods deprecated
exists?
withexist?
by @vashworth in 147056 - Update docs around ga3 ga4 mismatch by @eliasyishak in 147075
- Reland "Expose build mode in environment of asset transformer processes" by @andrewkolos in 144958
- print traces when transforming an asset by @andrewkolos in 146374
- Roll pub packages by @flutter-pub-roller-bot in 147220
- Update icon tree shaker to allow system font fallback by @Piinks in 147202
- Add create app and plugin templates for Swift Package Manager by @vashworth in 147082
- [native_assets] Use kernel concatenation by @dcharkes in 147158
- Catch any
FileSystemException
thrown when trying to read the template manifest duringflutter create
by @andrewkolos in 145620 - Add integration test for asset transformation feature by @andrewkolos in 145715
- Bump dependencies in Flutter by @elliette in 147546
- include exception details in tool exit displayed when adb call fails by @andrewkolos in 147498
- add verbose logging to select hot reload/hot restart tests by @andrewkolos in 147673
- Roll pub packages by @flutter-pub-roller-bot in 147741
- Improve Android SDK and NDK mistmatch warning message by @bartekpacia in 147809
- Add kotlinOptions jvmTarget to templates by @gmackall in 147326
- Fix dep tracking by @dcharkes in 147709
- feat: Rework getting plugin implementation candidates and plugin resolution by @Gustl22 in 145258
- [flutter web] Listen for service extension registration events to determine hot-restart method name by @elliette in 147897
- add print traces to reload isolate resume logic by @andrewkolos in 147997
- [web] Update wasm CLI details to be clear JavaScript is ALSO compiled by @kevmoo in 147944
- Bump flutter_lints to 4.0 by @goderbauer in 148020
- bump cupertino_icons to 1.08 by @LongCatIsLooong in 146806
- add more print traces in hot runner workflow by @andrewkolos in 148258
- add another print trace to runInView by @andrewkolos in 148337
- plugin_ffi template comment fix by @dcharkes in 148378
- [macOS] codesign native assets during embed by @knopp in 148310
- Fix iOS reference in macOS Cocoapods error by @stuartmorgan in 148506
- Add PrivacyInfo.xcprivacy to plugin template by @stuartmorgan in 148485
- Swap crash reporting with unified analytics by @andrewkolos in 148525
- Disable shuffling in the flutter_tools create_test suite by @jason-simmons in 148619
- Fix template manifest test by @nate-thegrate in 148616
- log incoming vm service messages in
FlutterVMService::runInView
by @andrewkolos in 148596 - Remove the no-shuffle tag on the flutter_tools create_test suite by @jason-simmons in 148688
- Fixes incorrect read/write permissions on Flutter.framework and FlutterMacOS.framework by @LouiseHsu in 148580
- Remove add-to-app bitcode warning by @jmagman in 148587
- Skip flaky test in expression_evaluation_test.dart by @zanderso in 148737
- [iOS] specify minimum os version for native asset frameworks by @knopp in 148504
- Add a migrator to remove
FlutterMultiDexApplication.java
by @gmackall in 148515 - Fix warnings in
dependency_version_checker.gradle.kts
by @gmackall in 148699 - add
default-flavor
field to flutter pubspec, which will be used as the flavor influtter build/run
if--flavor
is not provided by @holzgeist in 147968 - [native_assets] Add support for link hooks by @dcharkes in 148474
- Prevent test folder deletion on running
flutter create --empty
on an existing app project by @victoreronmosele in 147160 - [iOS] fix hot restart with native assets by @knopp in 148752
- [web] Remove --dart-sdk flag to dart2wasm compiler by @mkustermann in 149129
- [tool] Use kebabCase directly by @kevmoo in 149150
- Change
android_plugin_new_output_dir_test.dart
test description by @gmackall in 149198 - Unskip expression evaluation test by @DanTup in 149253
- Use correct type for abi version code by @runarheggset in 149087
- update generated localized message files in the stocks test app by @andrewkolos in 148741
- Support failures-only and silent reporters in
flutter test
by @gnprice in 148739 - Place
flutter_gpu
in the package cache. by @bdero in 149299 - Disable sandboxing for macOS apps and tests in CI by @vashworth in 149618
- Identify and re-throw our dependency checking errors in
flutter.groovy
by @gmackall in 149609 - [flutter_tools] Remove additional listener on VM service that simply logged incoming messages by @andrewkolos in 149756
- Unpin archive package from tool, update to version without security advisories by @jmagman in 149430
- Attempt to fix some web test flakiness. by @eyebrowsoffire in 149828
- [native_assets] Fix framework name deduplication by @dcharkes in 149761
- Revert "Identify and re-throw our dependency checking errors in
flutter.groovy
(#149609)" by @gmackall in 149918 - [web] Change
--web-renderer
default fromauto
tocanvaskit
by @mdebbar in 149773 - Unpin
camera_android
and remove its only usage by @gmackall in 150017 - closes #issue136763, changed a command to generate gradle error message according to platform by @D-extremity in 149877
- Improve build time when using SwiftPM by @vashworth in 150052
- Suppress Flutter update check if
--machine
is present at all. by @matanlurey in 150138 - Use --(no-)strip-wams instead of --(no-)-name-section in
dart compile wasm
by @mkustermann in 150180 - Reland "Identify and re-throw our dependency checking errors in flutter.groovy" by @gmackall in 150128
- Use --(no-)strip-wams instead of --(no-)-name-section in
dart compile wasm
by @mkustermann in 149641 - Roll pub packages by @flutter-pub-roller-bot in 150206
- Add 'fail-fast' argument to flutter test by @Lexycon in 149587
- Add test for engine artifact framework permissions by @jmagman in 148786
- Make flutter tool enforce >= kotlin 1.7.0, Gradle 7.0.2, and AGP 7.0.0, and Fix test failures blocking androidx upgrade by @gmackall in 149204
- [CLI tool] in
flutter test
, consider--flavor
when validating the cached asset bundle by @andrewkolos in 150461 - [flutter_tools] un-hide the --dds flag by @christopherfujino in 150280
- Stop looking for .packages when analyzing by @sigurdm in 150349
- Fix link hook typo by @mosuem in 150194
- Update android_device.dart to have clearLogs not print to standard error by @reidbaker in 150197
- Roll pub packages by @flutter-pub-roller-bot in 150712
- Remove dubious comment by @sigurdm in 150608
- [flutter_tools/dap] Handle app.stop errors when launching/attaching by @DanTup in 149734
- [tool] make
ErrorHandlingFileSystem.deleteIfExists
catch error code 3 (ERROR_PATH_NOT_FOUND
on Windows) by @andrewkolos in 150741 - Roll pub packages by @flutter-pub-roller-bot in 150739
- [flutter_tools] Shut down Chromium cleanly using a command sent through the debug protocol by @jason-simmons in 150645
- Read
AndroidManifest.xml
and emitmanifest-impeller-(enabled|disabled)
analytics by @matanlurey in 150791 - Roll pub packages by @flutter-pub-roller-bot in 150810
- Use `Isolate.packageConfigSync! to locate the packageconfig of flutter tools by @sigurdm in 150340
- Fixes
flutter build ipa
failure: Command line name "app-store" is deprecated. Use "app-store-connect" by @LouiseHsu in 150407 - Have flutter.js load local canvaskit instead of the CDN when appropriate by @eyebrowsoffire in 150806
- [tool] make the
systemTempDirectory
getter onErrorHandlingFileSystem
wrap the underlying filesystem's temp directory in aErrorHandlingDirectory
by @andrewkolos in 150876 - local lint copy gradle task config by @reidbaker in 150957
- [flutter_tools] Include more details in structured errors sent to a DAP client by @DanTup in 150698
- Use caret syntax with flutter create command by @alestiago in 150920
- Add support for type-safe plugin apply by @DRSchlaubi in 150958
- Roll pub packages by @flutter-pub-roller-bot in 150827
- Read AndroidManifest.xml and emit manifest-aar-impeller-(enabled|disabled) analytics by @jtmcdole in 150970
- Upgrade template Gradle, App AGP, Module AGP, and Kotlin versions, and tests by @gmackall in 150969
- Reverts "Upgrade template Gradle, App AGP, Module AGP, and Kotlin versions, and tests (#150969)" by @auto-submit in 151147
- [tool] remove some temporary printTrace calls by @andrewkolos in 151074
- Refactor BuildInfo to always require packageConfigPath by @sigurdm in 150559
- Use
ErrorHandlingFileSystem.deleteIfExists
when deleting .plugin_symlinks by @andrewkolos in 151073 - [tool] Fix
stdin.flush
calls on processes started byFakeProcessManager
by @andrewkolos in 151183 - [flutter_tools] Update the mapping for the Dart SDK internal URI by @DanTup in 151170
Other changes
#- Use reporter extended consistently. by @godofredoc in 145617
- Refactor flutter_plugins by @sealesj in 145870
- Generate test metrics consistently. by @godofredoc in 145943
- Refactor realm_checker by @sealesj in 145905
- Reverts "Roll Flutter Engine from e6f19409b613 to ea93c5d91b12 (3 revisions) (#146100)" by @auto-submit in 146106
- Sync lints and enable
annotate_redeclares
by @goderbauer in 146144 - Refactor analyze by @sealesj in 146138
- Refactor docs by @sealesj in 145998
- Refactor customer_testing by @sealesj in 145911
- Refactor fuchsia_precache by @sealesj in 145978
- Update ownership to GitHub handles by @keyonghan in 146221
- Set up Kotlin linting step in ci with ktlint by @gmackall in 143478
- Add
missing_code_block_language_in_doc_comment
lint. by @kallentu in 145354 - Give
generate_gradle_lockfiles.dart
functionality to exclude certain subdirectories by @gmackall in 146228 - Bump codecov/codecov-action from 4.1.1 to 4.2.0 by @dependabot in 146310
- Roll pub packages by @flutter-pub-roller-bot in 146331
- Roll pub packages by @flutter-pub-roller-bot in 146348
- Bump github/codeql-action from 3.24.9 to 3.24.10 by @dependabot in 146368
- Fix Flutter
README.md
image sources by @TahaTesser in 146430 - Roll pub packages by @flutter-pub-roller-bot in 146515
- Bump codecov/codecov-action from 4.2.0 to 4.3.0 by @dependabot in 146528
- Refactor verify codesigned by @sealesj in 146450
- Allow A/B tests to run as just aggregator of local engine benchmarks by @jmagman in 146479
- Bump peter-evans/create-pull-request from 6.0.2 to 6.0.3 by @dependabot in 146702
- Roll pub packages by @flutter-pub-roller-bot in 146704
- Roll pub packages by @flutter-pub-roller-bot in 146782
- Bump github/codeql-action from 3.24.10 to 3.25.0 by @dependabot in 146784
- Roll pub packages by @flutter-pub-roller-bot in 146851
- Switch to relevant
Remote
constructors by @nate-thegrate in 146773 - Create web tests suite & update utils by @sealesj in 146592
- Bump peter-evans/create-pull-request from 6.0.3 to 6.0.4 by @dependabot in 146954
- Bump github/codeql-action from 3.25.0 to 3.25.1 by @dependabot in 146953
- Refactor framework coverage tests by @sealesj in 146210
- Bump actions/upload-artifact from 4.3.1 to 4.3.2 by @dependabot in 147011
- Clean up flutterRoot by @sealesj in 147010
- Refactor android preview tool integration tests by @sealesj in 146518
- Bump actions/checkout from 4.1.2 to 4.1.3 by @dependabot in 147090
- Roll pub packages by @flutter-pub-roller-bot in 147030
- Add Kostiantyn Sokolovskyi to the AUTHORS. by @ksokolovskyi in 147065
- Add Amir Panahandeh to AUTHORS by @Amir-P in 147052
- Roll pub packages by @flutter-pub-roller-bot in 147094
- Bump github/codeql-action from 3.25.1 to 3.25.2 by @dependabot in 147193
- Bump actions/upload-artifact from 4.3.2 to 4.3.3 by @dependabot in 147192
- Refactor framework + test harness tests by @sealesj in 146213
- Add Valentin Vignal to AUTHORS by @ValentinVignal in 147314
- Mark firebase tests as
bringup: true
by @keyonghan in 147338 - Run new_gallery__transition_perf on mokey in staging by @zanderso in 147339
- Bump actions/checkout from 4.1.3 to 4.1.4 by @dependabot in 147334
- [devicelab] explicitly enable vulkan validation in test. by @jonahwilliams in 147382
- Bump peter-evans/create-pull-request from 6.0.4 to 6.0.5 by @dependabot in 147388
- Bump github/codeql-action from 3.25.2 to 3.25.3 by @dependabot in 147437
- [macOS] Eliminate flutter_gallery_macos__start_up benchmark by @cbracken in 147442
- Reverts "Roll Flutter Engine from 752b146df767 to f4c20e97e6aa (2 revisions) (#147495)" by @auto-submit in 147502
- Move docs_test and docs_publish to bringup by @zanderso in 147645
- add lang attribute to the a11y_assessments app by @yjbanov in 147586
- [web] remove platform_messages_integration test by @yjbanov in 147654
- Bump codecov/codecov-action from 4.3.0 to 4.3.1 by @dependabot in 147674
- [web] increase chromedriver logging level by @yjbanov in 147687
- [web] skip debug mode CanvasKit e2e tests due to flakiness; unskip all other modes by @yjbanov in 147736
- Move snippets package back into flutter repo by @gspencergoog in 147690
- [new gallery] Reisze gallery images by @jonahwilliams in 147882
- Bump actions/checkout from 4.1.4 to 4.1.5 by @dependabot in 147888
- Fix document generation, eliminate template support from snippets tool. by @gspencergoog in 147893
- Revert "Move docs_test and docs_publish to bringup (#147645)" by @gspencergoog in 147928
- Roll pub packages by @flutter-pub-roller-bot in 147995
- Roll pub packages by @flutter-pub-roller-bot in 148011
- Update dependabot reviewers by @jmagman in 148101
- Bump ossf/scorecard-action from 2.3.1 to 2.3.3 by @dependabot in 148091
- Update TESTOWNERS by @jmagman in 148108
- Roll pub packages by @flutter-pub-roller-bot in 148148
- Try fix module test by @dcharkes in 147934
- Bump github/codeql-action from 3.25.3 to 3.25.5 by @dependabot in 148262
- Mark platform_views_scroll_perf_ad_banners__timeline_summary not flaky by @jmagman in 148263
- Bump codecov/codecov-action from 4.3.1 to 4.4.0 by @dependabot in 148355
- Stop running module_test_ios in devicelab and x64 Macs by @jmagman in 148264
- Reverts "Roll Flutter Engine from 6fa734d68688 to 1850def2ccff (1 revision) (#148507)" by @auto-submit in 148517
- Bump actions/checkout from 4.1.5 to 4.1.6 by @dependabot in 148516
- const vs. non-const widget build benchmark by @goderbauer in 148261
- Shift a test on MotoG4 to staging, add it on Mokey by @zanderso in 148552
- Migrate the flutter/flutter wiki to docs/unsorted_wiki by @Piinks in 148562
- Remove all tests from a02s. Replace with mokey in bringup by @zanderso in 148563
- [wiki migration] Ecosystem team pages by @Piinks in 148589
- Bump codecov/codecov-action from 4.4.0 to 4.4.1 by @dependabot in 148714
- Bump github/codeql-action from 3.25.5 to 3.25.6 by @dependabot in 148715
- Manual roll camera dependency by @goderbauer in 148426
- [wiki migration] Engine team pages by @Piinks in 148696
- Fix the output of the CDN test. by @eyebrowsoffire in 148730
- Fix leaky test. by @polina-c in 148788
- [wiki migration] Pages under docs/postmortems/ by @Piinks in 148798
- Move Linux web_long_running_tests_2_5 to bringup by @zanderso in 148854
- [wiki migration] Tool team pages by @Piinks in 148779
- [wiki migration] Remaining pages under docs/about/ by @Piinks in 148782
- Revert "const vs. non-const widget build benchmark" by @goderbauer in 148970
- [wiki migration] Web team pages by @Piinks in 148777
- [GAR][a11y] Update assessment app to unblock tester from testing dark mode by @hangyujin in 149055
- Remove dynamic_layouts from issue template by @Piinks in 149252
- Adds benchmark for rrect_blur. by @gaaclarke in 149261
- Fixed typo in devicelab test name by @gaaclarke in 149327
- Rounded Rect Blur Benchmark: Made the number of circles a fixed number by @gaaclarke in 149323
- Bump github/codeql-action from 3.25.6 to 3.25.7 by @dependabot in 149444
- Cleanup triage reports from docs/ by @Piinks in 149545
- Move some benchmarks from MotoG4 to Mokey by @zanderso in 149567
- Switch to triage-* labels for platform package triage by @stuartmorgan in 149614
- Bump github/codeql-action from 3.25.7 to 3.25.8 by @dependabot in 149691
- make output of flutter run web tests verbose by @yjbanov in 149694
- Revert "make output of flutter run web tests verbose (#149694)" by @yjbanov in 149766
- Fix signature for TokenTemplate.updateFile by @goderbauer in 149673
- Remove unused code from an older test artifact. by @matanlurey in 149746
- Send q once by @yjbanov in 149767
- Roll pub packages by @flutter-pub-roller-bot in 149630
- Run tests on macOS 13 or 14 by @vashworth in 149827
- Roll pub packages by @flutter-pub-roller-bot in 149864
- Shift consistently passing tests on mokey to prod by @zanderso in 149902
- Remove zanderso from TESTOWNERS by @zanderso in 149935
- Reverts "Roll Flutter Engine from 1cdbebee1901 to 45cf05f7a580 (10 revisions) (#149944)" by @auto-submit in 149960
- Remove package:platform from issue template by @mit-mit in 149995
- Temporarily run Mac_arm64 framework_tests_misc on only Mac-13 by @vashworth in 150009
- [docs] Per-platform desktop triage instructions by @cbracken in 150019
- Manual Pub Roll by @goderbauer in 150025
- Add high-contrast theme by @QuncCccccc in 149779
- Add a doc for the flutter/packages gardener by @stuartmorgan in 149682
- Update to Chrome for Testing 125, since we haven't updated in a bit. by @eyebrowsoffire in 149933
- Update packages desktop PR triage link lables by @jmagman in 150124
- Bump github/codeql-action from 3.25.8 to 3.25.9 by @dependabot in 150133
- Bump actions/checkout from 4.1.6 to 4.1.7 by @dependabot in 150132
- Update testowners by @Piinks in 150141
- Bump new release for a11y_assessment by @chunhtai in 150213
- Document CIPD role & login for upgrading Android engine by @yaakovschectman in 149433
- Bump github/codeql-action from 3.25.9 to 3.25.10 by @dependabot in 150228
- Fix flaky complex_layout_scroll_perf__memory & flutter_gallery__memory_nav by @jtmcdole in 150368
- Update API docs footer by @mit-mit in 150347
- Rename doc file to use standard hyphens by @parlough in 150314
- Extend the Windows web_tool_tests_1_2 shard timeout to 45 minutes by @jason-simmons in 150393
- Bump peter-evans/create-pull-request from 6.0.5 to 6.1.0 by @dependabot in 150456
- Let the lockfile script generate lockfiles for kotlin gradle files as well by @gmackall in 150471
- Update issue link in analysis_options.yaml by @goderbauer in 150395
- allow adb to set canfail then use canFail=true for clearing logs by @reidbaker in 150517
- Add more warm up frame docs by @loic-sharma in 150464
- Remove
bringup: true
from web test shard. by @eyebrowsoffire in 150785 - Remind folks we are moving. by @matanlurey in 150872
- Remove CODEOWNERS trailing whitespace by @jmagman in 150882
- Bump dartdoc to 8.0.9+1 by @goderbauer in 150935
- Bump github/codeql-action from 3.25.10 to 3.25.11 by @dependabot in 151012
- Roll pub packages by @flutter-pub-roller-bot in 151022
- Roll pub packages by @flutter-pub-roller-bot in 151028
- Bump dartdoc to 8.0.10 by @goderbauer in 151107
- Roll pub packages by @flutter-pub-roller-bot in 151129
New contributors
#- @Dimilkalathiya made their first contribution in 146072
- @leoafarias made their first contribution in 145666
- @philipfranchi made their first contribution in 145846
- @ShrootBuck made their first contribution in 143978
- @jagomf made their first contribution in 147040
- @lamnhan066 made their first contribution in 147102
- @choi88andys made their first contribution in 147221
- @chika3742 made their first contribution in 147103
- @kishan-dhankecha made their first contribution in 147318
- @zeqinjie made their first contribution in 146049
- @EchoEllet made their first contribution in 147505
- @timcreatedit made their first contribution in 145647
- @drown0315 made their first contribution in 146674
- @karelklic made their first contribution in 147858
- @davidhicks980 made their first contribution in 147843
- @osama383 made their first contribution in 147457
- @aliasgar4558 made their first contribution in 145474
- @BenjiFarquhar made their first contribution in 147098
- @FMorschel made their first contribution in 148281
- @holzgeist made their first contribution in 147968
- @wyqlxf made their first contribution in 148206
- @joodo made their first contribution in 144670
- @luis901101 made their first contribution in 148767
- @hany-achraf made their first contribution in 148568
- @angelocordero made their first contribution in 148074
- @MajdSallora made their first contribution in 148292
- @runarheggset made their first contribution in 149087
- @dawidope made their first contribution in 148948
- @kaljitism made their first contribution in 149147
- @Peetee06 made their first contribution in 144899
- @ttorii20 made their first contribution in 149698
- @D-extremity made their first contribution in 149877
- @Zabadam made their first contribution in 149624
- @jtmcdole made their first contribution in 150287
- @hasanmhallak made their first contribution in 132903
- @mosuem made their first contribution in 150194
- @LimaneGaya made their first contribution in 150037
- @swrenn made their first contribution in 150600
- @foxmind1 made their first contribution in 150682
- @Fernthedev made their first contribution in 139396
- @ricardoboss made their first contribution in 149777
- @DRSchlaubi made their first contribution in 150958
Full Changelog: https://github.com/flutter/flutter/compare/3.22.0...3.24.0
Flutter engine
#Impeller
#- [Impeller] Optimize away intersect clips that cover the entire pass target. by @bdero in 51736
- Reland: [Impeller] adds a plus advanced blend for f16 pixel formats by @gaaclarke in 51756
- [Impeller] dont clamp mipmap level to 0 with Vulkan textures. by @jonahwilliams in 51761
- [Impeller] generate mip level N from N-1 in Vulkan backend. by @jonahwilliams in 51749
- [Impeller] split out aiks blend tests by @gaaclarke in 51780
- [Impeller] removed old blur detritus by @gaaclarke in 51779
- [Impeller] Set RGBA8888 as the default Vulkan color format before the app acquires a surface by @jason-simmons in 51770
- [Impeller] Avoid loading redundant Vulkan extensions. by @chinmaygarde in 51818
- [Impeller] Add a TextureGLES API for wrapping a framebuffer and use it to implement OpenGL FBO targets in the embedder library by @jason-simmons in 51269
- [Impeller] Ignore warnign about shader stages not consuming outputs. by @jonahwilliams in 51822
- Reverts "[Impeller] Avoid loading redundant Vulkan extensions. (#51818)" by @auto-submit in 51835
- [Impeller] fix plus blend mode in porterduff shader. by @jonahwilliams in 51792
- Use
fml::ScopedCleanupClosure
instead ofDeathRattle
. by @matanlurey in 51834 - Return an empty optional in HardwareBuffer::GetSystemUniqueID if the underlying NDK API is unavailable by @jason-simmons in 51839
- [Impeller] fixes PlusAdvanced alpha blending / adds alpha blending tests by @gaaclarke in 51787
- [Impeller] make color source a variant instead of a closure. by @jonahwilliams in 51853
- [Impeller] eliminate sub-render pass for blended color + texture vertices. by @jonahwilliams in 51778
- [Impeller] delete unused code. by @jonahwilliams in 51871
- [Impeller] cleanup auto usage in host_buffer by @jonahwilliams in 51875
- [Impeller] dont inc shared_ptr count for every command/pipeline in render_pass_vk by @jonahwilliams in 51874
- #145421 Fix glyph padding in STB atlas impl. by @johnoneil in 51585
- [Impeller] batch up filter graph command buffers. by @jonahwilliams in 51912
- [Impeller] fail CI if validations are enabled but not available. by @jonahwilliams in 51378
- [Impeller] reland foreground blend optimizaiton, fix advanced blend optimization. by @jonahwilliams in 51938
- [Impeller] handle fill polylines with zero area. by @jonahwilliams in 51945
- Use Impeller geometry classes in DLMatrixClipTracker by @flar in 51919
- [Impeller] ensure precision is matched between fragment and vertex stage for PowerVR GPU bug by @jonahwilliams in 51974
- [Impeller] Remove StC flag. by @bdero in 51992
- [Impeller] Remove stencil clipping logic. by @bdero in 51999
- [Impeller] Refactor KHR swapchains to make it easy to reuse backend agnostic components. by @chinmaygarde in 52002
- [Impeller] Use type safe masks for HardwareBufferUsage. by @chinmaygarde in 52008
- [Impeller] NumberNear implements precision-based comparisons by @flar in 52001
- [Impeller] Only set the stencil ref for StC draws. by @bdero in 52006
- [Impeller] organize shaders a bit, make filter shaders use same vertex source. by @jonahwilliams in 52113
- [Impeller] Use Wang's formula for quad/cubic subdivision. by @jonahwilliams in 52079
- [Impeller] moved to bgra10_xr by @gaaclarke in 52019
- Reverts "[Impeller] moved to bgra10_xr (#52019)" by @auto-submit in 52140
- [Impeller] Update the readme to reflect current guidance on how to try Impeller. by @chinmaygarde in 52135
- Relands "[Impeller] moved to bgra10_xr (#52019)" by @gaaclarke in 52142
- [Impeller] remove most temporary allocation during polyline generation. by @jonahwilliams in 52131
- [Impeller] removes advanced plus blending by @gaaclarke in 52163
- Reverts "[Impeller] remove most temporary allocation during polyline generation. (#52131)" by @auto-submit in 52177
- [Impeller] added static check that fragment shader and vertex shaders slots match by @gaaclarke in 52174
- [Impeller] Use booleans instead of counting backdrop reads. by @bdero in 52181
- [Impeller] Remove old clip height tracking from Entity. by @bdero in 52178
- [Impeller] Delete
EntityPass::AddSubpassInline
. by @bdero in 52182 - [Impeller] Off by default experimental canvas. by @jonahwilliams in 52035
- [Impeller] Reland: remove most temporary allocation during polyline generation. by @jonahwilliams in 52180
- [Impeller] sorted commonly used default pipelines first by @gaaclarke in 52231
- [Impeller] dont use half precision constants / Fixes for SPIRV tools roll by @jonahwilliams in 52213
- [Impeller] cleaned up semantics for RenderPipelineT and added docstrings by @gaaclarke in 52237
- [Impeller] remove absorb opacity limit. by @jonahwilliams in 52160
- [Impeller] Use the new DisplayList depth info in the experimental canvas prototype by @flar in 52214
- [Impeller] organize texture shaders / delete blend.frag + external_texture_fill by @jonahwilliams in 52137
- [Impeller] add non-emulated advanced blend support to experimental canvas by @jonahwilliams in 52245
- [Impeller] compute UVs in vertex stage. by @jonahwilliams in 52106
- [Impeller] re-enable gold CTL. by @jonahwilliams in 52299
- [Impeller] skip lineTo for empty contours. by @jonahwilliams in 52290
- [Impeller] add test case for path that explicitly closes at origin. by @jonahwilliams in 52314
- [Impeller] Do not call std::forward on the serialized arguments in the canvas recorder by @jason-simmons in 52307
- Issue #146080 : Fix for incorrect STB based atlas glyph scaling by @johnoneil in 51882
- [Impeller] Cleanup
PipelineVK::Create
by @gaaclarke in 52278 - [Impeller] drawVertices uber shader. by @jonahwilliams in 52315
- [Impeller] only use framebuffer advanced blends if available. by @jonahwilliams in 52284
- [Impeller] Fix Vulkan validation error on latest MoltenVK. by @chinmaygarde in 52332
- [Impeller] Add DriverInfoVK::IsEmulator and a log dumper for driver info. by @chinmaygarde in 52337
- [Impeller] Reland: Compute UVs in vertex stage. by @jonahwilliams in 52303
- [Impeller] delete unused geometry API. by @jonahwilliams in 52347
- [Impeller] make drawAtlas always use porterduff or vertices_uber shader by @jonahwilliams in 52348
- [Impeller] delete points compute shader. by @jonahwilliams in 52346
- [Impeller] use spec constant for gaussian shader, rename, and reuse vertex sources. by @jonahwilliams in 52361
- [Impeller] Remove libtess2 from libflutter. by @bdero in 52357
- [Impeller] Cleanup legacy StencilModes and document overdraw prevention. by @bdero in 52372
- [Impeller] Remove additional shader bootstrap. by @jonahwilliams in 52368
- [Impeller] only use porter duff or vertices.uber for drawVertices. by @jonahwilliams in 52345
- [Impeller] delete specific vertices shader. by @jonahwilliams in 52360
- [Impeller] combine text shaders. by @jonahwilliams in 52392
- [Impeller] kick off registration and initial PSO compilation of runtime effect earlier. by @jonahwilliams in 52381
- [Flutter GPU] Add support for drawing Flutter GPU textures in the playground. by @bdero in 52352
- [Impeller] clamp maximum glyph scale. by @jonahwilliams in 52403
- [Impeller] when creating new pipeline variant block on current thread, re-persist dirty pipeline cache. by @jonahwilliams in 52375
- [Impeller] remove image upload from IO thread, limit concurrent worker threads. by @jonahwilliams in 52423
- Remove references to goma by @zanderso in 52411
- [Impeller] Document the EGL toolkit. by @chinmaygarde in 52469
- [Impeller] Wire up hardware buffer backed swapchains on Android. by @chinmaygarde in 52087
- [Impeller] remove incremental allocation during filled path tessellation. by @jonahwilliams in 52401
- [Impeller] allow for one more active swapchain image. by @jonahwilliams in 52505
- [Impeller] Remove checkerboard. by @bdero in 52524
- [Impeller] Remove Entity capture/AiksInspector. by @bdero in 52526
- [Impeller] fix missing GPU probe. by @jonahwilliams in 52580
- [Impeller] remove unused includes. by @jonahwilliams in 52579
- [Impeller] remove compute tessellator. by @jonahwilliams in 52584
- [Impeller] Document how to use Impeller as a standalone library with OpenGL ES and EGL. by @chinmaygarde in 52473
- [Impeller] add clip coverage stack to exp canvas. by @jonahwilliams in 52215
- [Impeller] eagerly bootstrap content context. by @jonahwilliams in 52590
- [Impeller] AHB swapchain mark frame start for tracer. by @jonahwilliams in 52596
- Various documentation improvements by @Hixie in 52600
- Reverts "Various documentation improvements (#52600)" by @auto-submit in 52607
- [Impeller] allow cloning a rectangle packer with an increased size. by @jonahwilliams in 52563
- [Impeller] Wait for the previous AHB texture to be fully recyclable. by @chinmaygarde in 52588
- [Impeller] Disable aging in the AHB swapchains and use FILO. by @chinmaygarde in 52637
- [Impeller] Support copy from buffer to texture for GLES blitpass, use blit pass to set contents in glyph atlas. by @jonahwilliams in 52510
- [Impeller] In the AHB swapchain, make the wait stages be non-temporaries. by @chinmaygarde in 52644
- [Impeller] bump image count to 3 by @jonahwilliams in 52650
- [Impeller] support requires readback from onscreen texture in experimental canvas. by @jonahwilliams in 52640
- DisplayListBuilder internal reorganization with better rendering op overlap detection by @flar in 52646
- [Impeller] Update BlitPass::AddCopy to use destination_region instead of origin for buffer to texture copies. by @jonahwilliams in 52555
- [Impeller] require and use backpressure for AHB swapchain. by @jonahwilliams in 52676
- Revert 484688634c71ec38c18218eaa13dc47fa7007b74 by @gaaclarke in 52680
- [Impeller] Start a glossary. by @chinmaygarde in 52641
- [Impeller] initialize ahb swapchain with max entries. by @jonahwilliams in 52670
- [Impeller] Size AHB swapchain based on vk surface properties. by @jonahwilliams in 52692
- [Impeller] Adds impeller display list golden tests by @gaaclarke in 52690
- Various documentation improvements (#52600) by @Hixie in 52623
- Revert "Various documentation improvements (#52600)" by @zanderso in 52709
- [impeller] adds experimental canvas docstring by @gaaclarke in 52710
- [Impeller] Document how to do basic rendering in Impeller. by @chinmaygarde in 52703
- [Impeller] Disable AHB swapchain. by @jonahwilliams in 52713
- [Impeller] treat glyph atlas texture as source of truth, remove copy of SkBitmap. by @jonahwilliams in 52567
- deletes canvas recorder by @gaaclarke in 52722
- Revert "DisplayListBuilder internal reorganization with better rendering op overlap detection" by @flar in 52725
- Simplify GN pools, use in more places by @zanderso in 52721
- [Impeller] Followup feedback on "Baby's First Triangle". by @chinmaygarde in 52718
- [Impeller] rectangle packer actually packs. by @jonahwilliams in 52781
- [Impeller] use render pass to clear glyph atlas texture to transparent black. by @jonahwilliams in 52791
- [Impeller] Create framebuffer blend vertices based on the snapshot's texture size instead of coverage by @jason-simmons in 52790
- [Impeller] migrated one test over from aiks to dl by @gaaclarke in 52786
- [Impeller] immediately encode blit commands for Metal. by @jonahwilliams in 52795
- Reverts "[Impeller] immediately encode blit commands for Metal. (#52795)" by @auto-submit in 52816
- [Impeller] reland: directly encode blit commands for Metal. by @jonahwilliams in 52819
- [Impeller] immediately encode blit commands for Vulkan. by @jonahwilliams in 52794
- [Impeller] make default glyph atlas size much bigger. by @jonahwilliams in 52787
- Re-add
MipFilter::kBase
, but keepkNearest
as the default. by @matanlurey in 52779 - Manual roll of Clang from 725656bdd885 to 145176dc0c93 by @jason-simmons in 52823
- Reverts "Manual roll of Clang from 725656bdd885 to 145176dc0c93 (#52823)" by @auto-submit in 52890
- [Impeller] use smaller SkFont size for determining glyph bounds. by @jonahwilliams in 52868
- [Impeller] grow glyph atlas instead of resizing when rect packer is full. by @jonahwilliams in 52849
- [Impeller] fix colr/bitmap font color drawing. by @jonahwilliams in 52871
- Fixes MatrixFilterContents rendering/coverage by @gaaclarke in 52880
- Reverts "Fixes MatrixFilterContents rendering/coverage (#52880)" by @auto-submit in 52918
- [Impeller] leave glyph atlas in transfer dst to improve vulkan throughput. by @jonahwilliams in 52908
- [Impeller] Fix use-after-move in SwapchainVK. by @bdero in 52933
- [Impeller] write glyphs to malloc buffer. by @jonahwilliams in 52937
- [Impeller] Reland: Remove Entity capture/AiksInspector. by @bdero in 52932
- [Impeller] Refactor impeller.gni by @chinmaygarde in 52942
- Reland
Fixes MatrixFilterContents rendering/coverage #52880
by @gaaclarke in 52939 - [Impeller] Remove unused GN flags. by @chinmaygarde in 52962
- [Impeller] Delete impeller_trace_all_gl_calls. by @chinmaygarde in 52963
- [Impeller] Remove check_licenses.py by @chinmaygarde in 52970
- [Impeller] Pixel align subpass textures. by @bdero in 52973
- [Impeller] Fix stroke curves. by @bdero in 52978
- Cleanup propagation of codecvt warning suppression in FML. by @chinmaygarde in 52966
- [Impeller] sped up the linear gradient by moving calculations to the cpu by @gaaclarke in 53007
- Reland "DisplayListBuilder internal reorganization with better rendering op overlap detection" (52646) by @flar in 53002
- [Impeller] Suppress SPIRV validation errors in latest Vulkan SDK. by @chinmaygarde in 53049
- [Impeller] Use scaled font to determine bounds, match Skia position rounding behavior, add subpixel X/Y/All/None positioning. by @jonahwilliams in 53042
- [Impeller] shrunk the buffer for the rrect_blur by @gaaclarke in 53068
- [Impeller] make strokes slightly lighter. by @jonahwilliams in 53067
- [Impeller] relax conditions for SkRRect.isSimple conversion to impeller::RRect. by @jonahwilliams in 53083
- [Impeller] fix barriers prior to mip generation. by @jonahwilliams in 53082
- DisplayList SaveLayer (and root layer) read-back flags by @flar in 53104
- [Impeller] make sure buffers are 4 aligned for foreground color blending by @gaaclarke in 53077
- Remove assorted bad logs. by @jonahwilliams in 53139
- [Impeller] Replace Impeller opacity peephole delegate with DL variant. by @jonahwilliams in 52707
- [Impeller] make strokes < 0.5 physical pixels visually thinner. by @jonahwilliams in 53154
- [Impeller] Revert support for multi-arch shader archives. by @chinmaygarde in 53158
- [Impeller] match rrect_blur math to the gaussian math by @gaaclarke in 53130
- [Impeller] Use varying interpolation to compute some linear gradients. by @jonahwilliams in 53166
- Separate layer-specific data in DisplayListBuilder::SaveInfo by @flar in 53186
- [Impeller] tighten fast gradient condition. by @jonahwilliams in 53195
- [Impeller] wire up bdf and blend detection in experimental canvas. by @jonahwilliams in 53151
- [Impeller] Clarify rendering backend fallback behavior on Android. by @chinmaygarde in 53202
- [Impeller] Intel iOS Simulators must block on GPU completion. by @jonahwilliams in 53073
- [Impeller] correctly map DL non-mipmap sample mode to non-mipmap sample mode. by @jonahwilliams in 53161
- [Impeller] Use Skia software renderer to draw stroked text. by @jonahwilliams in 53198
- Reverts "[Impeller] Use Skia software renderer to draw stroked text. (#53198)" by @auto-submit in 53237
- [Impeller] Reland Use Skia software renderer to draw stroked text. by @jonahwilliams in 53238
- [Impeller] Expand fast gradient to all shapes. by @jonahwilliams in 53254
- [Impeller] Round out extreme angles between curve polyline segments. by @bdero in 53210
- [impeller] switches gaussian blur to a "source space" calculation by @gaaclarke in 53261
- [Impeller] Move SeparatedVector2 to impeller/geometry. by @bdero in 53264
- [Impeller] remove varying interpolation for solid colors. by @jonahwilliams in 53281
- [Impeller] move some tests from aiks to display list. by @jonahwilliams in 53336
- [Impeller] add missing position to exp canvas text. by @jonahwilliams in 53339
- [Impeller] disabling the color write mask seems to improve performance on iOS compared to just the blend options. by @jonahwilliams in 53322
- 'Starter Project': port planet fragment shader to impeller tests by @jtmcdole in 53362
- [Impeller] Move Gradient tests to display list. by @jonahwilliams in 53345
- [DisplayList] cull clip operations that can be trivially and safely ignored by @flar in 53367
- [Impeller] restore accidentally deleted Cap/Join benchmarks by @flar in 53385
- [Impeller] moved blur to unrotated local space, started respecting
respect_ctm
flag by @gaaclarke in 53377 - [Impeller] Move drawAtlas golden tests to display list. by @jonahwilliams in 53398
- [Impeller] Link CPU profiling docs from the main README. by @chinmaygarde in 53435
- [Impeller] move draw vertices to dl unittests. by @jonahwilliams in 53400
- [Impeller] Update Android CPU profiling instructions. by @chinmaygarde in 53437
- [DisplayList] Create DrawDashedLine for paragraph code by @flar in 53411
- [Impeller] Update iOS CPU profiling instructions. by @chinmaygarde in 53440
- [DisplayList] delete obsolete PathEffect sources by @flar in 53441
- [Impeller] Compute correct-ish binding order for Vulkan. by @jonahwilliams in 53463
- Add createImageFromTextureSource method to ui_web by @jezell in 53483
- [Impeller] added a fallback that will make sure the blur fragment shader doesn't overflow by @gaaclarke in 53466
- [impeller] Cleanup blur by @gaaclarke in 53543
- [DisplayList] Switch to recording DrawVertices objects by reference by @flar in 53548
- [Impeller] blur - cropped the downsample pass for backdrop filters by @gaaclarke in 53562
- [DisplayList] Add support for clipOval to leverage Impeller optimization by @flar in 53622
- Revert "[DisplayList] Add support for clipOval to leverage Impeller optimization" by @flar in 53629
- [Impeller] experimental canvas bdf support. by @jonahwilliams in 53597
- Reland [DisplayList] Add support for clipOval to leverage Impeller optimization by @flar in 53642
- [Impeller] track the sizes of all outstanding MTLTexture allocations and report per frame in MB, matching Vulkan implementation. by @jonahwilliams in 53618
- [Impeller] fixed units for memory measurement by @gaaclarke in 53687
- [Impeller] fix typo in setup for fast elliptical rrect blurs by @flar in 53673
- Revert "Reland [DisplayList] Add support for clipOval to leverage Impeller optimization" by @jiahaog in 53705
Android
#- Use the stripped Vulkan validation library in Android engine builds by default by @jason-simmons in 51628
- Add an engine switch that controls whether the platform isolate API is available. by @jason-simmons in 51784
- Bump Robolectric to 4.12.1 by @utzcoz in 51800
- Multiview backing store by @dkwingsmt in 51722
- Run local_engine.json builds in prod by @zanderso in 51931
- Delete engine v1 android embedding by @gmackall in 51229
- Reverts "Delete engine v1 android embedding (#51229)" by @auto-submit in 51996
- [Android] post image task to main handler. by @jonahwilliams in 52025
- Clear the surface to transparent black when creating a PlatformViewWrapper by @jason-simmons in 52047
- [scenarios] test disabling surface clear. by @jonahwilliams in 52128
- Replace LinkedLists that are used as a queue in android FlutterRenderer with ArrayDeques by @gmackall in 51494
- [Impeller] Vulkan validation off by default. by @jonahwilliams in 52397
- Workaround HardwareRenderer breakage in Android 14 by @johnmccutchan in 52370
- Migrate third_party/android_tools to flutter/third_party by @jason-simmons in 52582
- Delete Settings::msaa_samples. by @chinmaygarde in 52780
- Fix non-vd android platform view input event offsets by @gmackall in 52532
- Issue an
ERROR
instead of anINFO
for a non-working API. by @matanlurey in 52892 - Fix another instance of platform view breakage on Android 14 by @johnmccutchan in 52980
- Upgrade all[most] androidx dependencies to latest by @gmackall in 53001
- FlutterFragment predictive back by @justinmc in 52302
- Manual revert of #53001 by @gmackall in 53075
- [Impeller] enable Impeller by default on Android. by @jonahwilliams in 53099
- Disable Impeller when the manifest explicitly disables it by @jiahaog in 53108
- add SemanticsAction.focus by @yjbanov in 53094
- Reverts "Disable Impeller when the manifest explicitly disables it (#53108)" by @auto-submit in 53124
- Reverts "[Impeller] enable Impeller by default on Android. (#53099)" by @auto-submit in 53125
- Google java format relocation and formatting update by @reidbaker in 53118
- Widen CPU affinity set. by @jonahwilliams in 53136
- java fail on format missing by @reidbaker in 53176
- Revert "Widen CPU affinity set." by @jonahwilliams in 53274
- [Flutter GPU] Generate DescriptorSetLayouts for pipelines & export symbols on Android. by @bdero in 53184
- Add a
FlutterEngineRule
(JUnitTestRule
) and use it inFlutterRendererTest
by @matanlurey in 53361 - Reland "Upgrade all[most] androidx dependencies to latest" by @gmackall in 53462
- Reverts "Reland "Upgrade all[most] androidx dependencies to latest" (#53462)" by @auto-submit in 53468
- Update StandardMessageCodec.readValue to be @Nullable by @tarrinneal in 53473
- Add
SurfaceProducer.Callback
lifecycle hooks by @matanlurey in 53280 - Re-re-land "Upgrade all[most] androidx dependencies to latest" by @gmackall in 53532
- Reverts "Re-re-land "Upgrade all[most] androidx dependencies to latest" (#53532)" by @auto-submit in 53546
- Replace
Log.w
withLog.d
, and tidy the file up a bit. by @matanlurey in 53586 - Return a null image from ImageExternalTextureGL::CreateEGLImage if an EGL display is not available by @jason-simmons in 53594
- Fix AccessibilityFeatures.disableAnimations flag on Android 12+ by @hakonber in 53428
- Re-re-re-land "Upgrade all[most] androidx dependencies to latest" by @gmackall in 53592
iOS
#- Remove _dartobservatory._tcp legacy DNS registration type by @jmagman in 51635
- [Impeller] Enable logging a warning when the user opts out of using Impeller. by @chinmaygarde in 51849
- Remove #if SHELL_ENABLE_METAL checks in iOS code by @jmagman in 51636
- Reverts "Remove #if SHELL_ENABLE_METAL checks in iOS code (#51636)" by @auto-submit in 51941
- Remove #if SHELL_ENABLE_METAL checks in darwin code by @jmagman in 51947
- Migrate FlutterRestorationPlugin, FlutterTextureRegistryRelay, FlutterScreenAndSceneIfLoaded to ARC by @jmagman in 51984
- Move
Shell::Add/RemoveView
toPlatformView
and refine embedder API doc by @dkwingsmt in 52003 - Update iOS KeyCodeMap dictionary literal and migrate to ARC by @jmagman in 51981
- Migrate FlutterEmbedderKeyResponder to ARC by @jmagman in 52048
- Migrate FlutterCallbackCache and FlutterKeyboardManager to ARC by @jmagman in 51983
- Migrate FlutterDartVMServicePublisher to ARC by @jmagman in 52081
- [iOS] allow enabling asserts from Plist. by @jonahwilliams in 52069
- Migrate vsync_waiter_ios to ARC by @jmagman in 52104
- Migrate FlutterUIPressProxy, ios_context*, rendering_api_selection, and a few other files to ARC by @jmagman in 51633
- Migrate FlutterChannelKeyResponder and FlutterSpellCheckPlugin to ARC by @jmagman in 52148
- Suppress in-actionable warnings in the iOS profiler. by @chinmaygarde in 52227
- [macOS] Rename viewId to viewIdentifier by @dkwingsmt in 52202
- Refactor and migrate FlutterUndoManagerPlugin to ARC by @jmagman in 52234
- Break dependency cycle of FlutterViewController <-> FlutterPlatformView by @jmagman in 52271
- [ios_edit_menu]add native edit menu by @hellohuanlin in 50095
- Migrate ios_surface files to ARC by @jmagman in 52139
- [darwin] Update pixel format handling in FlutterTexture by @bc-lee in 52326
- Remove UIAccessibilityTraitKeyboardKey to fix touch typing by @vashworth in 52333
- Migrate PlatformMessageHandlerIos to ARC by @jmagman in 52226
- Fix UIVisualEffectView leak in platform view filter by @jmagman in 52591
- [iOS] Fix App crash when use WebView with iOS VoiceOver by @tacck in 52484
- Migrate FlutterView, FlutterPlatformViews, FlutterOverlayView to ARC by @jmagman in 52535
- Migrate FlutterDartProject and FlutterPluginAppLifeCycleDelegate to ARC by @jmagman in 52719
- Remove -[NSNotificationCenter removeObserver:] in deallocs by @jmagman in 52772
- [Impeller] Prepare a SkiaGPU-less iOS build. by @chinmaygarde in 52748
- ios_external_view_embedder to ARC by @jmagman in 52782
- Refactor Semantics in preparation for ARC migration by @jmagman in 52729
- Migrate SemanticsObject and FlutterSemanticsScrollView to ARC by @jmagman in 52824
- Migrate TextInputSemanticsObject to ARC by @jmagman in 52785
- [ios][platform_view] Use CAShapeLayer as the mask to avoid software rendering by @hellohuanlin in 53072
- Reverts "[ios][platform_view] Use CAShapeLayer as the mask to avoid software rendering (#53072)" by @auto-submit in 53220
- Reland "[ios][platform_view] Use CAShapeLayer as the mask to avoid software rendering #53072" by @hellohuanlin in 53256
- Remove FlutterUndoManagerPlugin handlers from undo manager on dealloc by @jmagman in 53553
- [deep link][ios] Update openURL method to reflect the result from framework by @hangyujin in 52643
Web
#- [skwasm] Fix
toString
methods on Paint and ImageFilter/ColorFilter by @eyebrowsoffire in 51766 - [web] Use viewId for text editing by @mdebbar in 51099
- Turn struct half leading in canvaskit kitchensink test back on by @LongCatIsLooong in 50707
- Implement
Paint.from(other)
fordart:ui
. by @matanlurey in 51110 - [Skwasm] Forward text height from paragraph height to default text style by @eyebrowsoffire in 51819
- [skwasm] Fix
Paragraph.getLineBoundary
by @eyebrowsoffire in 51846 - Remove outdated
deprecated_member_use
ignores by @goderbauer in 51836 - Revert "Prevent
solo: true
from being committed" by @zanderso in 51858 - Be slightly more lenient about the assertion, as it differs on different backends. by @eyebrowsoffire in 51877
- Add
missing_code_block_language_in_doc_comment
lint to flutter/engine. by @kallentu in 51944 - Move the Dart SDK to //flutter/third_party/dart by @jason-simmons in 51917
- [skwasm] Reify the SkPicture pointer as the right type. by @eyebrowsoffire in 51991
- [web] move AccessibilityAnnouncements into SemanticsOwner by @yjbanov in 52138
- Fix CkBrowserImageDecoder conversion of images to ImageByteFormat.rawRgba and rawStraightRgba by @jason-simmons in 52089
- [canvaskit] Add configuration for maximum canvases by @harryterkelsen in 51735
- [skia] Remove no-op GN flag by @kjlubick in 52121
- [skwasm] Fix sampling options for low filter quality to match CanvasKit. by @eyebrowsoffire in 52331
- [web:tests] switch to new HTML DOM matcher by @yjbanov in 52354
- Make SkUnicode explicitly instead of relying on SkParagraph to make it for us by @kjlubick in 52086
- [skwasm] Change default
FilterQuality
toNone
for image shaders. by @eyebrowsoffire in 52468 - [skwasm] Don't mark the backend texture as mipmapped, since it isn't. by @eyebrowsoffire in 52501
- [web] Expose browser_detection through ui_web. by @ditman in 52380
- Remove rasterizerTracingThreshold, checkerboardRasterCacheImages, and checkerboardOffscreenLayers, etc by @Hixie in 52446
- Put the view focus functionality behind a (disabled by default) flag by @tugorez in 52527
- [canvaskit] Round physical size to nearest whole number pixels by @harryterkelsen in 52467
- [web] scale semantic text elements to match the desired focus ring size by @yjbanov in 52586
- [canvaskit] Clip before applying ColorFilter so it doesn't filter beyond child bounds by @harryterkelsen in 52704
- Manual roll of Dart SDK from 28e8e94f9e10 to 0b87dfedea5f by @jason-simmons in 52914
- [canvaskit] Refactor HtmlImageCodec to generalize to different renderers by @harryterkelsen in 52905
- [web] Adds Noto Serif Tibetan fallback font. by @ditman in 52971
- [canvaskit] Add dilate and erode imagefilters by @harryterkelsen in 48553
- Move pictures from deleted canvases to second-to-last canvas instead of last. by @harryterkelsen in 51397
- Allow unsetting
TextStyle.height
by @LongCatIsLooong in 52940 - [canvaskit] Fix overlay reorganization for edge case with only 1 overlay by @harryterkelsen in 53006
- Switch to FilterQuality.medium for images by @goderbauer in 52984
- Replace several calls to GrGLMakeNativeInterface with more direct APIs by @kjlubick in 53064
- [web] Add Ethiopic font fallback. by @ditman in 53180
- [web] update version-lock file location by @emmanuel-ferdman in 52842
- Add support for setting the heading level for web semantics (#97894) by @victorgalo in 41435
- [web] enable always_specify_types for web_ui by @yjbanov in 53226
- [web] Adds allowPlatformDefault for wheel signals. by @ditman in 51566
- [web] clean up dynamic calls, remove always_specify_types by @yjbanov in 53228
- Run tests on macOS 13 or 14 by @vashworth in 53252
- Fixes a few issues in flutter_js by @eyebrowsoffire in 53231
- Update Chrome to 125. by @eyebrowsoffire in 53282
- [web] add test for inefficient overlay allocation by @yjbanov in 53284
- Use new dart:js_interop way to externalize/internalize objects by @mkustermann in 53304
- Use dart.library.html to distinguish dart2wasm from dart2js/ddc in conditional imports by @mkustermann in 53307
- Temporarily run Linux linux_web_engine Mac tests on Mac-13 only by @vashworth in 53318
- [web] switch from .didGain/LoseAccessibilityFocus to .focus by @yjbanov in 53134
- Fix character getter API usage in stripLeftSlashes/stripRightSlashes by @jason-simmons in 53299
- Hack to prevent Safari from being backgrounded during unit tests. by @eyebrowsoffire in 53402
- Roll web_ui dependencies to enable the next roll of the Dart SDK by @jason-simmons in 53399
- Manual roll of Dart SDK from e90b0a53e058 to dca20ab646c5 by @jason-simmons in 53410
- Fix focus management for text fields by @tugorez in 51009
- [Web] Fix extra new line when inputAction is not newline for a multil… by @bleroux in 53453
- [web] Don't add
href="#"
to semantics links by @mdebbar in 53395 - [web] Add 'flt-semantics-identifier' attribute to semantics nodes by @mdebbar in 53278
- Reverts "Fix focus management for text fields (#51009)" by @auto-submit in 53502
- Run safari-dart2js-html tests on macOS 13 by @jmagman in 53497
- [web] Reland "Fix focus management for text fields (#51009)" by @ditman in 53537
- [web] Implement
AppLifecycleState.detached
as documented by @mdebbar in 53506 - fix: web canvaskit fragment shaders were not using updated uniform values by @Moncader in 53246
- [skwasm] Fixes for getting pixels from an image. by @eyebrowsoffire in 53561
- Ignore lints that will be triggered by ExternalDartReference changes by @srujzs in 53572
- [web] switch from .didGain/LoseAccessibilityFocus to .focus by @yjbanov in 53360
- [web] Fixes drag scrolling in embedded mode. by @ditman in 53647
- Output .js files as ES6 modules. by @eyebrowsoffire in 52023
- Reverts "Output .js files as ES6 modules. (#52023)" by @auto-submit in 53674
- Revert "[web] switch from .didGain/LoseAccessibilityFocus to .focus" by @jiahaog in 53679
- Reland "Output .js files as ES6 modules. (#52023)" by @eyebrowsoffire in 53688
- Reverts "Reland "Output .js files as ES6 modules. (#52023)" (#53688)" by @auto-submit in 53709
Desktop
#- [macOS] Group per-view information in
FlutterCompositor
into a class by @dkwingsmt in 51738 - [Windows] Don't always stop engine on view destruction by @loic-sharma in 51681
- [Windows] Move keyboard initialization by @loic-sharma in 51758
- [macOS] Move to new present callback by @dkwingsmt in 51436
- [Windows] Fix EGL surface destruction race by @loic-sharma in 51781
- Remove the view ID check in
macOS/FlutterCompositor
by @dkwingsmt in 51852 - [Windows] Prepare to add/remove views by @loic-sharma in 51908
- [Windows] Move EGL surface creation by @loic-sharma in 51920
- [macOS] Implement hit testing and handle platform view cursor changes by @knopp in 43101
- Composite multiple layers in Windows software rendering by @yaakovschectman in 51759
- [Windows] Allow adding/removing views by @loic-sharma in 51923
- [Windows] Refactor client wrapper to prepare for multi-view by @loic-sharma in 52073
- [macOS] Handle reparenting platform views by @knopp in 52152
- [macOS] FlutterView should not override platform view cursor by @knopp in 52159
- [macOS] FlutterSurfaceManager should not return surfaces that are in use by @knopp in 52082
- [Windows] Add/remove view failures should not hang by @loic-sharma in 52164
- [macOS] Handle interleaved movement and gesture events by @knopp in 52201
- [macOS] Consolidate view management by @dkwingsmt in 52254
- [macOS] Disable FlutterEngineTest.BackgroundColor by @cbracken in 52341
- [macOS] Remove extra
setViewController
and extra import by @dkwingsmt in 52255 - Fix function type cast warnings for macOS embedder callbacks by @jason-simmons in 52377
- macOS fluttertextinputplugin drops selector called if no client by @chunhtai in 52495
- Replace several NSAssert with FML_CHECK/DCHECK to unblock the build by @bc-lee in 53048
- [macOS] Fix FlutterView cursor hit testing by @bufffun in 53171
Other changes
#- Remove Android API v33 tests from CI. by @matanlurey in 51751
- Remove
--verbose
from clang_tidy execution on CI. by @matanlurey in 51760 - Test that
clangd --check
works at HEAD. by @matanlurey in 50901 - Add
et query tests
andet test
commands by @johnmccutchan in 51605 - Add completion callback to
Shell::AddView
by @loic-sharma in 51659 - Reland 51391 by @johnmccutchan in https://github.com/flutter/engine/pull/51764
- Implement
.engine-release.version
files for engine Skia Gold tests by @matanlurey in 51739 - Add a minimal example of using
package:test
. by @matanlurey in 51726 - Remove the tests for
rotate
andcrop
from the Androidscenario_app
. by @matanlurey in 51769 - Fix the
clangd
builders, and make Linux non-bringup. by @matanlurey in 51765 - Rename
Mac clangd
toLinux mac_clangd
by @matanlurey in 51785 - Add more Java and Dart logging to
scenario_app
(for now) by @matanlurey in 51789 - Finish clangd testing. by @matanlurey in 51786
- Prefix non-local build config names with ci/ by @zanderso in 51474
- Roll buildroot to dcd71b5b237e1e58f2ad8a7e51bead0c2a3755a9 by @zanderso in 51812
- Never panic in
finally { ... }
, check output logs on success only. by @matanlurey in 51814 - Remove unused and untested timeline data branch for
scenario_app
by @matanlurey in 51816 - Remove
testing/android_background_image
which does not run/exist on CI. by @matanlurey in 51815 - Remove log statements that did not help. by @matanlurey in 51825
- Remove tests related to StrictMode that were never running on CI. by @matanlurey in 51827
- Run the
DrawSolidBlueScreenTest
5x in a row in bringup builds. by @matanlurey in 51829 - Run and record
adb shell screenrecord
during Android scenario app by @matanlurey in 51832 - Move scenario_app integration tests back to
max_attempts: 2
. by @matanlurey in 51838 - Use moved GrBackendTexture factories for Skia's Metal backend by @kjlubick in 51828
- Replace
WindowInsetsController...
withadb shell
commands by @matanlurey in 51843 - Reverts "Replace
WindowInsetsController...
withadb shell
commands (#51843)" by @auto-submit in 51847 - Allow creating slimpeller engine variants. by @chinmaygarde in 51824
- [Embedder API] Add view by @loic-sharma in 51523
- Do not use
adb shell screenrecord
during CI runs. by @matanlurey in 51848 - Run
DrawSolidBlueScreenTest
20x in a row inbringup
(up from 5x) by @matanlurey in 51850 - [et] Prepare local_engine.json for CI, teach et to understand local build names by @zanderso in 51803
- Use internal retries for SurfaceTexture and Impeller tests too. by @matanlurey in 51856
- Use non-deprecated replacements for Android JUnit and test instrumentation by @matanlurey in 51854
- [scenarios] dont do a weird invalidate on TextView. by @jonahwilliams in 51866
- [scenarios] Use adb to take screenshot, block on screenshot operation. by @jonahwilliams in 51879
- Remove the bringup 20x emulator config. by @matanlurey in 51885
- Generate only one "Frame Request Pending" event for each pending call to BeginFrame by @jason-simmons in 51857
- Expand understanding of build targets in et by @johnmccutchan in 51868
- Manual Dart roll to 0ac840ba1 and update frontend server snapshot filename by @jason-simmons in 51921
- Reverts "Roll Dart SDK from 0ac840ba1f0b to 31ddd6924103 (5 revisions) (#51924)" by @auto-submit in 51926
- Reverts "Manual Dart roll to 0ac840ba1 and update frontend server snapshot filename (#51921)" by @auto-submit in 51927
- [et] Fixup help text a bit by @zanderso in 51930
- Adds human readable descriptions to build configs by @zanderso in 51929
- Fix a memory error in a multithreaded test by @dkwingsmt in 51951
- Use the AOT snapshot built by the Dart SDK for the frontend server by @jason-simmons in 51943
- [et] Run GN before looking for targets. Default to build config targets by @zanderso in 51956
- Reverts "Roll Dart SDK from 7a5e410f982e to db99af14c4bc (1 revision) (#51986)" by @auto-submit in 51989
- Revert "Roll Dart SDK from 78174b41ab0f to 7a5e410f982e (1 revision) (#51980)" by @zanderso in 51990
- better output from engine layer unit test failures by @flar in 51975
- Try postsubmit_overrides for one mac build by @zanderso in 51676
- Update embedder example apps to run with the current engine tree by @jason-simmons in 51995
- Add postsubmit overrides for mac builders. by @godofredoc in 51385
- Use RBE in mac builds in presubmit but not postsubmit by @zanderso in 52018
- [et] Adds --lto flag to build. Plumbs verbose flag differently. by @zanderso in 52021
- Adds iOS builds to local_engine.json by @zanderso in 52027
- Add additional dependencies to const_finder's pubspec.yaml by @whesse in 52033
- Enable gtest-parallel for Impeller unit tests by @jason-simmons in 52004
- Manual roll ICU from a622de35ac31 to bad7ddbf9213 (7 revisions) by @zanderso in 52031
- [Engine] allow --enable-asserts flag to be passed to dart vm in profile mode. by @jonahwilliams in 52029
- Reverts "Roll Dart SDK from 764bdb7d0344 to 0219e897c6ac (1 revision) (#52053)" by @auto-submit in 52058
- Revert "Roll Dart SDK from 3d13dbfb3284 to 764bdb7d0344 (1 revision) (#52051)" by @zanderso in 52060
- [et] Correctly plumb usage line length limit by @zanderso in 52039
- Save and restore OpenGL bindings that are changed by fl_renderer_render by @jason-simmons in 51887
- [Fuchsia] Support per app present latency tracing by @chaopeng in 51503
- Remove intermediate APKs during build process. by @chinmaygarde in 52071
- Fix the Dart language version for Fuchsia's build of the args package by @jason-simmons in 52083
- Roll buildroot and set ios_use_simulator variable used by Skia GN scripts by @jason-simmons in 52101
- Only print "gclient sync" warning once during rebase by @jmagman in 52133
- Roll reclient, libpng, and zlib by @jason-simmons in 52072
- Cleanup obsolete Dart VM flags by @alexmarkov in 52197
- Update Skia's BUILD.gn by @bungeman in 52194
- Fix incorrect function name in documentation by @robert-ancell in 52184
- DisplayList tracks maximum render op depths by @flar in 52070
- Fix docs for SemanticsAction by @goderbauer in 52229
- Add a dependency on
package:web_socket
in pkg_demo_test by @brianquinlan in 52239 - [et] Fix path canonicalization by @cbracken in 52274
- [et] Simplify path canonicalisation logic by @cbracken in 52275
- Remove SkScalarIsFinite from Flutter Engine. by @johnstiles-google in 52270
- [et] Fix concurrent modification exception by @cbracken in 52247
- Fix link in BlendMode.saturation by @PurplePolyhedron in 52156
- [et] Lookup output filesystem path, not label by @cbracken in 52248
- Fail
run_impeller_golden_tests
ifLUCI_CONTEXT && !GOLDCTL
by @matanlurey in 52300 - [fuchsia] Update Fuchsia API version to 17 by @jrwang in 52266
- Add containsCommand matcher by @cbracken in 52306
- [et] Don't require the --verbose flag when requesting a ci/ build by @zanderso in 52339
- Fix some warnings reported by recent versions of clang-tidy by @jason-simmons in 52349
- Move zlib to //flutter/third_party by @jason-simmons in 52366
- Remove TODO I will never do:
runIfNot
is deprecated. by @matanlurey in 52308 - Document the new binding hooks for SceneBuilder, PictureRecorder, Canvas by @Hixie in 52374
- Remove goma support from impeller-cmake-example by @zanderso in 52390
- [Impeller] while we still have benchmarks, see if we're efficient enough for this to be faster. by @jonahwilliams in 52398
- Remove "gclient sync" warning call during pre-rebase by @jmagman in 52342
- Add markdown docs about RBE by @zanderso in 52394
- [fuchsia] route fuchsia.sysmem2.Allocator by @dustingreen in 52187
- Delete errant back-tick in CONTRIBUTING.md by @gabeschine in 52324
- Move
PointerDataPacketConverter
fromPlatformView
toRuntimeController
by @dkwingsmt in 51952 - Manual Dart roll to 7173b4dd0163 by @jason-simmons in 52425
- Use a AT-SPI socket/plug to export the Flutter accessibility state. by @robert-ancell in 52355
- [Impeller] fix GLES image upload. by @jonahwilliams in 52430
- Add a host_debug_unopt_arm64 macOS configuration. by @chinmaygarde in 52443
- Add commands to rbe.md by @zanderso in 52442
- Fix et run by @johnmccutchan in 52477
- [Impeller] Implements retry for
Picture.toImage
by @gaaclarke in 52470 - et phone home by @bdero in 52506
- Use new Dart_PortEx api to ensure SendPort can be rebuild properly. by @aam in 52498
- Updated RBE documentation for default credentials. by @gaaclarke in 52530
- [et] Add ios_debug_unopt build config. by @bdero in 52537
- [et] Add Linux host_debug_unopt local engine builder by @jason-simmons in 52538
- [fuchsia] route fuchsia.sysmem2.Allocator pt 2 by @dustingreen in 52509
- Skip files in the clang-tidy driver if clang-tidy crashes when processing the file by @jason-simmons in 52379
- Manual Skia roll to 2319f1ae8fe42525f8b6a1969a1cee67bdbee290 by @jason-simmons in 52615
- Add host_profile_arm64 and host_release_arm64 local engine configurations. by @chinmaygarde in 52620
- Move
verbose
toenvironment.verbose
, pass toninja --verbose
if provided. by @matanlurey in 52619 - Reverts "Add host_profile_arm64 and host_release_arm64 local engine configurations. (#52620)" by @auto-submit in 52630
- Move setting the logging level into the
Logger
constructor, refactor. by @matanlurey in 52624 - Fix links in rbe.md by @zanderso in 52635
- Move
Logger.test
to an injected log output versus leaky abstraction. by @matanlurey in 52639 - Roll reclient forward by @zanderso in 52632
- Reverts "Roll Dart SDK from b7cad2edae4b to 673b3aa8558a (1 revision) (#52677)" by @auto-submit in 52683
- Reland "Add host_profile_arm64 and host_release_arm64 local engine configurations." by @chinmaygarde in 52633
- updated analysis exclusion by @gaaclarke in 52699
- When
et
is not attached to a terminal, still split lines for status updates. by @matanlurey in 52681 - Roll buildroot to 70a42312a688 by @zanderso in 52675
- Fixed constness of display list storage. by @gaaclarke in 52705
- Roll third_party/freetype2 from 3bea27612 to af4c2d86d (2 revisions) by @bc-lee in 52689
- Infer
--rbe
based on the existence of//flutter/build/rbe
by @matanlurey in 52700 - Write
dart:ui
golden-file tests testingFilterQuality.*
by @matanlurey in 52687 - Detail a gotcha about reproxystatus by @chinmaygarde in 52714
- Remove outdated comment. by @chinmaygarde in 52778
- [fuchsia][sysmem2] route fuchsia.sysmem2.Allocator by @dustingreen in 52708
- Move libcxx to //flutter/third_party by @jason-simmons in 52773
- Replace
json_utils
with a modernextension type
, add tests. by @matanlurey in 52769 - Rolls in buildroot with stack protection flag by @zanderso in 52774
- Migrate third_party/gradle to flutter/third_party/gradle by @jason-simmons in 52814
- [et] Print reproxy stats when RBE shuts down by @zanderso in 52818
- [docs] Suggest using same Xcode version as bots by @cbracken in 52821
- Roll FreeType from af4c2d86 to bfc3453f by @jason-simmons in 52829
- Roll buildroot by @zanderso in 52826
- Short-circuit crawling all targets in
et {build|test|query}
by @matanlurey in 52832 - Revamp the engine style guide, remove
always_specify_types
. by @matanlurey in 52859 - Include
stdout
on a failedgn desc
call, and test for it. by @matanlurey in 52863 - Reverts "Revamp the engine style guide, remove
always_specify_types
. (#52859)" by @auto-submit in 52867 et
generates{out}/{buildName}
if missing onet {build|test|query}
by @matanlurey in 52866- [macOS] Generate universal gen_snapshots by @cbracken in 52885
- Reverts "[macOS] Generate universal gen_snapshots (#52885)" by @auto-submit in 52913
- Update file permissions for FlutterMacOS.framework by @jmagman in 52930
- Remove --trace-gn from ./flutter/tools/gn by @chinmaygarde in 52964
- Update file permissions for FlutterMacOS.framework bundle by @jmagman in 52961
- Reduce rebuild times when invoking 'et run' by @johnmccutchan in 52883
- Rename Skia specific TUs. by @chinmaygarde in 52855
- Reverts "Roll Dart SDK from aed02f471e34 to 17c351dd16f4 (1 revision) (#53037)" by @auto-submit in 53039
- Reverts "Roll Dart SDK from b759e9f83ff9 to aed02f471e34 (1 revision) (#53036)" by @auto-submit in 53040
- Reverts "Roll Dart SDK from 641d61332238 to b759e9f83ff9 (1 revision) (#53032)" by @auto-submit in 53041
- Add Linux platform support for fetching refresh rate on startup. by @bc-lee in 52934
- Add an unoptimized Android debug config to local_engine.json. by @chinmaygarde in 53057
- Remove use of --nnbd-agnostic by @johnniwinther in 53055
- Remove --ios-cpu flag. Only the arm64 variant is supported. by @chinmaygarde in 53044
- DisplayList forward opacity incompatibility through deferred saves by @flar in 53078
- [Impeller] revert changes to IO thread upload scheduling. by @jonahwilliams in 53096
- Update CONTRIBUTING.md links by @jtmcdole in 53043
- [Flutter GPU] Upload
flutter_gpu.zip
upon successful completion of ci/android_debug. by @bdero in 53107 - Fuchsia api level 18 by @jrwang in 53115
- Reverts "Roll Dart SDK from ef405fbe3917 to 2976c1694eed (6 revisions) (#53119)" by @auto-submit in 53128
- [semantics] fix dartdoc grammar by @yjbanov in 53121
- Remove complexity calculator with Slimpeller by @jonahwilliams in 53140
- Remove SK_RESOLVE_FILTERS_BEFORE_RESTORE flag by @lhkbob in 49563
- Remove RBE crud compile_commands.json by @jtmcdole in 53135
- Migrate off deprecated GrVkBackendContext fields by @kjlubick in 53122
- [Impeller] fix NPE caused by implicit sk_sp to fml::Status conversion. by @jonahwilliams in 53177
- [display_list] allow applying opacity peephole to single glyph. by @jonahwilliams in 53160
- Fix rendering corruption by Flutter and GDK sharing the same OpenGL context by @robert-ancell in 53103
- Reverts "[display_list] allow applying opacity peephole to single glyph. (#53160)" by @auto-submit in 53189
- [icu] Manual roll of icu by @filmil in 53199
- Re-land #52859: Revamp the engine style guide, remove
always_specify_types
by @matanlurey in 53223 - Update testing/skia_gold_client/README.md by @christopherfujino in 53233
- [Impeller] added test for bgra10xr png encoding by @gaaclarke in 53182
- [DisplayList] remove legacy DisplayListMatrixClipTracker by @flar in 53232
- [Impeller] fix emojis with non-solid color sources. by @jonahwilliams in 53229
- Remove the DBC interpreter flag. by @chinmaygarde in 53204
- Make pointer events ignore invalid views by @dkwingsmt in 51925
- Temporarily run Mac mac_host_engine on only Mac-13 by @vashworth in 53313
- Map mouse pointer type on Linux by @moffatman in 52418
- [engine] null check texture registry in OnPlatformViewMarkTextureFrameAvailable. by @jonahwilliams in 53334
- Revert "[web] switch from .didGain/LoseAccessibilityFocus to .focus (… by @yjbanov in 53342
- [Impeller] makes bgra10xr test more comprehensive by @gaaclarke in 53320
- Give mac_host_engine tests a longer timeout and allow to run on Mac-14 by @vashworth in 53355
- Change element to wait for in AppExtensionTests testAppExtensionLaunching by @vashworth in 53358
- Update "Vulnerability scanning" to add the actions: read permission. by @chinmaygarde in 53409
- [flatland] Handle fence overflow in flatland_connection.cc by @filmil in 53366
- Setup
NativeAssetsApi
during isolate group creation by @dcharkes in 53329 - Better clipRect culling accuracy under scaling transforms by @flar in 53508
- Update uses of GrVkBackendContext and other deprecated type names by @kjlubick in 53491
- [fuchsia] Update Fuchsia API level to 19 by @jrwang in 53494
- [macOS] Generate universal gen_snapshots by @cbracken in 53524
- Bump impeller-cmake-example by @bdero in 53538
- Roll the archive package to version 3.6.1 by @jason-simmons in 53582
- Move impeller-cmake-example to flutter/third_party. by @matanlurey in 53589
- Copy
flutter/flutter/docs/engine
toflutter/engine/docs
as-is (no changes) by @matanlurey in 53595 - Remove otherwise unused third_party/web_dependencies. by @matanlurey in 53588
- Fix #150515 Provide required headers for build with Clang-16 and GCC … by @johnoneil in 53479
- Update DEPS to pull in 8c2d66fa4e6298894425f5bdd0591bc5b1154c53. by @chinmaygarde in 53614
- [icu] Ignores the dir
flutter/third_party/icu/patches
by @filmil in 53667 - Restore creation of engine before Linux widget is realized. by @robert-ancell in 53604
- [skia] Use more GNI file lists by @kjlubick in 53685
New contributors
#- @brianquinlan made their first contribution in 52239
- @PurplePolyhedron made their first contribution in 52156
- @bc-lee made their first contribution in 52326
- @tacck made their first contribution in 52484
- @johnniwinther made their first contribution in 53055
- @bufffun made their first contribution in 53171
- @emmanuel-ferdman made their first contribution in 52842
- @victorgalo made their first contribution in 41435
- @tarrinneal made their first contribution in 53473
- @jezell made their first contribution in 53483
- @Moncader made their first contribution in 53246
- @hakonber made their first contribution in 53428
Full Changelog: https://github.com/flutter/engine/compare/3.22.0...3.24.0
Was this page's content helpful?
Thank you for your feedback!
Provide details Thank you for your feedback! Please let us know what we can do to improve.
Provide details Unless stated otherwise, the documentation on this site reflects the latest stable version of Flutter. Page last updated on 2025-01-17. View source or report an issue.