Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
5901 commits
Select commit Hold shift + click to select a range
1a0d157
Add onHover callback support for TableRowInkWell (#173373)
lauraywu Aug 15, 2025
6d13634
Reland predictive back route transitions by default (#173860)
justinmc Aug 15, 2025
1ae4ad7
Enhance FilledButton and Theme Data's documentation to clarify platfo…
Aug 18, 2025
827bd82
[VPAT][A11y] AutoComplete dropdown option is missing button role (#17…
srivats22 Aug 19, 2025
3e1d34d
Add Shift+Enter shortcut example for TextField. (#167952)
ksokolovskyi Aug 19, 2025
8aabba9
Update the AccessibilityPlugin::Announce method to account for the vi…
mattkae Aug 19, 2025
fc0ad8e
NavigationRail correct traversal order (#173891)
victorsanni Aug 19, 2025
080fd22
Fix SegmentedButton focus issue (#173953)
bleroux Aug 20, 2025
df8aa2c
Fix time picker period selector a11y touch targets (#170060)
bleroux Aug 20, 2025
bbdb648
Fix Menu anchor reduce padding on web and desktop (#172691)
Aug 20, 2025
b2e96c2
Make component theme data defaults use `WidgetStateProperty` (#173893)
ValentinVignal Aug 20, 2025
2c79c99
feat: Added FocusNode prop for DropdownMenu Trailing Icon Button (#17…
AlsoShantanuBorkar Aug 20, 2025
dd72e63
Make sure that CalendarDatePicker & YearPicker don't crash in 0x0 env…
ahmedsameha1 Aug 20, 2025
ae4091b
Fix `onSelect` called twice in `DropdownMenuFormField` (#174053)
PurplePolyhedron Aug 20, 2025
7bb2863
Migrate some files to use `WidgetStateProperty` (#174109)
ValentinVignal Aug 20, 2025
f0e782e
Revert "Update the AccessibilityPlugin::Announce method to account fo…
chunhtai Aug 21, 2025
c8041d5
Migrate more files to use WidgetStateProperty (#174176)
ValentinVignal Aug 22, 2025
428c97a
Migrate more files to `WidgetStateProperty` (#174268)
ValentinVignal Aug 22, 2025
bbb8787
Fix logic statements in year2023 documentation (#174120)
xVemu Aug 25, 2025
905dfc4
Fix: Active step fully colored in vertical mode (#173152)
rkishan516 Aug 26, 2025
494c561
SnackBar with action no longer auto-dismiss (#173084)
QuncCccccc Aug 27, 2025
b65822f
Migrate examples and defaults to `WidgetState` (#174421)
ValentinVignal Aug 27, 2025
62aed80
Drawer barrier non dismissible with the escape key (#173263)
romanejaquez Aug 27, 2025
ef55ffa
Retry "Implements the Android native stretch effect as a fragment sha…
MTtankkeo Aug 27, 2025
fb88f3d
Adds semantics for disabled buttons in date picker (#174064)
chunhtai Aug 29, 2025
8fc7952
Fix empty adaptive text selection toolbars building. (#174656)
ksokolovskyi Aug 29, 2025
450f6f8
Migrate some files to use WidgetState (#174486)
ValentinVignal Aug 30, 2025
d3eb994
Fix LinearProgressIndicator track painting. (#173108)
ksokolovskyi Sep 3, 2025
ffb9076
Fix expanded DropdownMenu panel is shorter than text field (#174443)
bleroux Sep 4, 2025
6b8dc7c
Fix IconButton.color overrided by IconButtomTheme (#174515)
bleroux Sep 4, 2025
467fa9e
Fix DropdownMenuFormField does not clear text field content on reset …
bleroux Sep 8, 2025
eaa70a1
Migrate to widget state (#174746)
ValentinVignal Sep 11, 2025
1af9030
Document Form.onChange precedence over DropdownButtonFormField.onChan…
bleroux Sep 12, 2025
94845fd
Fix default overlay color in `TabBar` (#175270)
ValentinVignal Sep 16, 2025
47579cf
Allow Passing an AnimationController to CircularProgressIndicator and…
dkwingsmt Sep 16, 2025
00a5a4b
Refactor: Migrate page transition builder class to widgets (#174321)
rkishan516 Sep 17, 2025
b1678b0
fix: ColorScheme will removeListener on imageStream twice if there is…
dkwingsmt Sep 17, 2025
4be06cf
Correct documentation in PredictiveBackFullscreenPageTransitionsBuild…
xVemu Sep 17, 2025
2fc15e9
feat: Enable WidgetStateColor to be used in ChipThemeData.deleteIconC…
erickzanardo Sep 17, 2025
2e3d2ce
Migrate to `WidgetPropertyResolver` (#175397)
ValentinVignal Sep 18, 2025
a4e690e
Fix InputDecoration does not apply errorStyle to error (#174787)
bleroux Sep 18, 2025
3bd8883
[a11y] TimePicker clock is unnecessarily announced (#175570)
bleroux Sep 20, 2025
d74a583
Add `menuController` to `DropdownMenu` (#175039)
ValentinVignal Sep 20, 2025
b232ef6
Document how to hide counter in TextField.maxLength (#175797)
bleroux Sep 23, 2025
ae7bf5d
Broken link in NavigationRail documentation (#175852)
srivats22 Sep 24, 2025
2b5cd62
feat(cupertino): Add selectableDayPredicate parameter to CupertinoDat…
koukibadr Sep 24, 2025
ea6acaa
Migrate to `WidgetStateColor` (#175573)
ValentinVignal Sep 24, 2025
3dc1652
Reapply "Update the AccessibilityPlugin::Announce method to account f…
mattkae Sep 25, 2025
550c1db
[time_picker] refactor: Distinguish widgets for dial mode only (#173188)
Gustl22 Sep 25, 2025
2f49be0
Reverts "Reapply "Update the AccessibilityPlugin::Announce method to …
auto-submit[bot] Sep 25, 2025
36c6889
Add itemClipBehavior property for CarouselView's children (#175324)
AlsoShantanuBorkar Sep 26, 2025
d9ba72d
Migrate to `WidgetStateMouseCursor` (#175981)
ValentinVignal Sep 26, 2025
9ed5ba8
Enhance input decorator padding logic for character counter in text f…
RootHex200 Sep 30, 2025
424398a
Migrate to `WidgetStateBorderSide` (#176164)
ValentinVignal Sep 30, 2025
437b746
replace `onPop` usage with `onPopWithResult` in `navigation_bar.2.dar…
AbdeMohlbi Sep 30, 2025
a0196de
Fix docs referencing deprecated radio properties (#176244)
victorsanni Oct 1, 2025
21d11b5
Migrate to `WidgetStateOutlinedBorder` (#176270)
ValentinVignal Oct 1, 2025
0ea35b2
Migrate to `WidgetStateTextStyle` (#176330)
ValentinVignal Oct 1, 2025
6c79540
Make sure that a DateRangePickerDialog doesn't crash in 0x0 environme…
ahmedsameha1 Oct 1, 2025
042c6aa
Reapply "Update the AccessibilityPlugin::Announce method to account f…
chunhtai Oct 1, 2025
5cfee6f
Fix platform specific semantics for time picker buttons (#176373)
Piinks Oct 2, 2025
3ed3b08
Fix Voiceover traversal for OutlinedButton.icon (#175810)
LouiseHsu Oct 3, 2025
1dc86dd
[material/menu_anchor.dart] Check for reserved padding updates on lay…
davidhicks980 Oct 3, 2025
13635e4
Fix TextFormField does not inherit local InputDecorationTheme (#176397)
bleroux Oct 4, 2025
bfe2ca0
Fix NavigatorBar lacks visual feedback (#175182)
bleroux Oct 6, 2025
61e8afc
Migrate to `WidgetStateInputBorder` (#176386)
ValentinVignal Oct 7, 2025
40201a4
Fix PopupMenu does not update when PopupMenuTheme in Theme changes. (…
ksokolovskyi Oct 8, 2025
7064172
Fix InputDecoration helper/error padding is not compliant (#176353)
bleroux Oct 8, 2025
40a10a1
Feat: Add carousel view builder (#172837)
rkishan516 Oct 8, 2025
cf8c747
Fix `Scaffold` having status bar when primary is false (#175156)
PurplePolyhedron Oct 9, 2025
d3439d3
Fix DropdownButtonFormField does not inherit local InputDecorationThe…
bleroux Oct 9, 2025
5cfa262
Fix TextField does not inherit local InputDecorationTheme (#176300)
bleroux Oct 9, 2025
4151f80
Fix ExpansionTile semantics hint for mismatched platforms (#176689)
Oct 9, 2025
a6cb43e
Improve menu item accessibility semantics (#176255)
flutter-zl Oct 9, 2025
20fc594
Announce text and button together when DropdownMenu is treated as a b…
QuncCccccc Oct 9, 2025
521098e
Cleanup OutlinedButton.icon documentation and implementation (#176630)
bleroux Oct 10, 2025
8cb0182
Remove unnecessary nullable types in examples. (#176713)
ksokolovskyi Oct 10, 2025
19108a6
Feat: make tooltip position customizeable (#175047)
rkishan516 Oct 11, 2025
f97899e
Make DropdownMenu generic type non nullable (#176711)
ValentinVignal Oct 13, 2025
d12271e
Fixes keyboard selects disabled radio (#176727)
chunhtai Oct 13, 2025
29b8f3a
Reverts "Fixes keyboard selects disabled radio (#176727)" (#176958)
auto-submit[bot] Oct 13, 2025
1ca1ca2
Fix expansion tile is missing state announcement on non-Apple platfor…
Oct 14, 2025
09e972d
Relands "Fixes keyboard selects disabled radio" (#176977)
chunhtai Oct 14, 2025
d43188b
[material/menu_anchor.dart] Create internal menu controller if extern…
davidhicks980 Oct 15, 2025
5cb3bc9
Refactor: migrate fade upwards page transition builder to widgets (#1…
rkishan516 Oct 15, 2025
7aaf7b4
feat: add `OptionsViewOpenDirection.mostSpace` to `RawAutocomplete` (…
SalehTZ Oct 16, 2025
2d0dda7
Add textfield prop to SearchAnchor (#174497)
progamax Oct 16, 2025
c96e747
Fix typo in ButtonBar documentation (#177078)
leuchte Oct 16, 2025
5ae5204
[material/dropdown_menu.dart] Refactor _RenderDropdownMenuBody.compu…
davidhicks980 Oct 18, 2025
02974a4
Add DropdownMenu.decorationBuilder (#176264)
bleroux Oct 20, 2025
d79bfca
Fix ink features painting in YearPicker. (#177014)
ksokolovskyi Oct 20, 2025
ff3baa5
Fix ink features painting in TabBar. (#177155)
ksokolovskyi Oct 20, 2025
74b2936
Fix DateRangePickerDialog does not inherit local InputDecorationTheme…
bleroux Oct 21, 2025
e9f2a70
Fix InputDatePickerFormField does not inherit local InputDecorationTh…
bleroux Oct 22, 2025
b988dae
refactor: migrate OpenUpwardsPageTransitionsBuilder to widgets (#177080)
rkishan516 Oct 22, 2025
9bbc62e
Move child parameter to end of RefreshIndicator constructor (#177019)
cuteUtya Oct 22, 2025
eae0a7f
[Material] Change default mouse cursor of buttons to basic arrow inst…
camsim99 Oct 23, 2025
bea4d70
Fix drawer Semantics for mismatched platforms (#177095)
Oct 24, 2025
fc21de8
Fix Dialog Semantics label and flags for mismatched platforms (#176781)
Oct 24, 2025
cd0d7c5
Fix bottom sheet Semantics route label for mismatched platforms (#177…
Oct 24, 2025
0e22b77
Document DropdownMenu showTrailingIcon and decorationBuilder interact…
bleroux Oct 24, 2025
eb6e689
Remove unnecessary `deprecated` withOpacity in `text_button.0.dart‎` …
AbdeMohlbi Oct 24, 2025
cda2502
Fix DropdownMenu filtering is broken (#177450)
bleroux Oct 25, 2025
031b849
Enhance DropdownMenuEntry's labelWidget docs (#177160)
Oct 27, 2025
5af377f
Fix Popup menu Semantics label for mismatched platforms (#177049)
Oct 28, 2025
b0fc06d
Fix AppBar Semantics namesRoute for mismatched platforms (#176694)
Oct 28, 2025
5a9c0a1
Fix TextButton.icon breaks focus traversal and ink effect when toggli…
bleroux Oct 28, 2025
56079da
Replace deprecated withOpacity in `radio.1.dart` example (#177606)
AbdeMohlbi Oct 29, 2025
9063765
Added computeDryBaseline implementation in RenderAligningShiftedBox (…
lewinpauli Oct 30, 2025
3622383
Fix FilledButton.icon and FilledButton.tonalIcon break focus traversa…
bleroux Oct 31, 2025
f7e901d
Fix ElevatedButton.icon breaks focus traversal and VoiceOver when tog…
bleroux Oct 31, 2025
3d8d734
Fix default value for DateRangePickerDialog currentDate (#177448)
bleroux Oct 31, 2025
8db4a22
Replace deprecated withOpacity in `chip_animation_style.0.dart‎` exa…
AbdeMohlbi Nov 4, 2025
75d7deb
Replace deprecated `withOpacity` in `switch.1.dart` example (#177811)
AbdeMohlbi Nov 5, 2025
f22cec3
Replace deprecated `withOpacity` in `data_table.1.dart‎` example (#17…
AbdeMohlbi Nov 5, 2025
4907923
fix: inconsistent horizontal spacing between hours and mins in time p…
Jaineel-Mamtora Nov 5, 2025
4b89869
Fix DropdownMenu escape key does not close the menu (#178002)
bleroux Nov 6, 2025
7958867
Allow label to be used to compute InputDecorator Intrinsic width (#17…
bleroux Nov 6, 2025
c207433
Fix text input actions in DropdownMenu. (#177313)
ksokolovskyi Nov 7, 2025
df686ea
Fixes tab to allow child to have semantics role (#177809)
chunhtai Nov 8, 2025
54a6144
Replace deprecated `withOpacity` in `search_anchor.1.dart‎` example (…
AbdeMohlbi Nov 10, 2025
7f12c5e
Fix VoiceOver does not announce state of ButtonSegment (#175635)
Nov 10, 2025
334702a
Feat: Add a11y for loading indicators (#165173)
rkishan516 Nov 11, 2025
8edeb12
Reverts "Feat: Add a11y for loading indicators (#165173)" (#178316)
auto-submit[bot] Nov 11, 2025
1c4fb36
Replace deprecated `withOpacity` in `reorderable_list_view.reorderabl…
AbdeMohlbi Nov 11, 2025
6beb4ea
Add DropdownMenuFormField.decorationBuilder (#178640)
bleroux Nov 17, 2025
da24d6e
Fix DropdownMenu width when decorationBuilder provides label (#178465)
bleroux Nov 17, 2025
4f10a02
Fix deprecation warning in some API examples using RadioListTile (#17…
Nov 18, 2025
c7294e9
Refactor SnackBar behavior selection example to use `RadioGroup` (#17…
AbdeMohlbi Nov 18, 2025
477c2c9
Update `_CircularProgressIndicatorState` to use `transform` directly …
AbdeMohlbi Nov 19, 2025
ba37b03
Remove deprecated `activeColor` in `switch.0.dart` example (#178293)
AbdeMohlbi Nov 22, 2025
a6c85f9
Refactor `_isLabel` method in `stepper.dart` to use `any` for better …
AbdeMohlbi Nov 24, 2025
8ecb642
Add framework-side hitTestBehavior support to Semantics (#178817)
flutter-zl Nov 25, 2025
a76a4c6
Reverts "Add framework-side hitTestBehavior support to Semantics (#17…
auto-submit[bot] Nov 25, 2025
62e35ea
Modernize framework lints (#179089)
Piinks Nov 26, 2025
1daeccf
Add flutter_lints to samples (#179091)
loic-sharma Nov 26, 2025
8277672
Update some comments to reflect theme normalization (#179013)
bleroux Dec 1, 2025
12d33d0
Unfocus search anchor bar when the view is closed (#178910)
Dec 2, 2025
4d5f4a0
Migrate samples and docs to RadioGroup (#179158)
loic-sharma Dec 3, 2025
efd3563
Update some BottomNavigationBar comments to reflect theme normalizati…
bleroux Dec 4, 2025
0c682a0
Add DropdownMenu.selectOnly (#179189)
bleroux Dec 4, 2025
af12a0c
Update several comments related to theme normalization (#179457)
bleroux Dec 5, 2025
3757422
Replace dropdown button with dropdown menu (#179095)
ahmedsameha1 Dec 5, 2025
b8ffb08
Reland: Add framework-side hitTestBehavior support to Semantics (#178…
flutter-zl Dec 10, 2025
957c949
Add `Adwaita Sans` as a font fallback on Linux (#179144)
adil192 Dec 15, 2025
eb7d58a
Update some comments related to theme normalization (#179624)
bleroux Dec 16, 2025
8cb1739
ListTile fix MinIntrinsicHeight calculation (#179515)
RamonFarizel Dec 16, 2025
d011a6e
Adds property passthrough for CheckboxListTile, SwitchListTile and Ra…
Guldem Dec 17, 2025
a2a29df
Update more comments related to theme normalization (#179682)
bleroux Dec 17, 2025
e5f737c
Add FloatingActionButtonTheme (#179736)
bleroux Dec 17, 2025
ddbe5f6
Update the Material `IconAlignment` sample (#179159)
loic-sharma Dec 17, 2025
21e50e6
Clamps input value for progress indicator (#179898)
chunhtai Dec 17, 2025
afe028c
Improve assertion messages in Tab widget for better clarity (#178295)
JeelChandegra Dec 17, 2025
5c0715d
Improve the documentation of `Card` (#178834)
dkwingsmt Dec 17, 2025
b011c95
Add Slider.showValueIndicator property. (#179661)
ksokolovskyi Dec 18, 2025
30e0956
Remove an obsolete TODO in DataTable (#180033)
dkwingsmt Dec 18, 2025
ee37093
fix: Enable mouse drag for RefreshIndicator.noSpinner example (#180066)
Franklyn-R-Silva Dec 18, 2025
84f7f2f
Add SnackBarTheme (#180001)
bleroux Dec 23, 2025
d50557a
docs: clarify dropdown menu text clearing (#179676)
kazbeksultanov Dec 23, 2025
a6325da
Enhance documentation for sortable column behavior (#180011)
AbdeMohlbi Dec 24, 2025
72833b2
Relands "Feat: Add a11y for loading indicators (#165173)" (#178402)
chunhtai Jan 2, 2026
d999549
Replace semantic announcements in expansion tile for Android (#179917)
hannah-hyj Jan 6, 2026
0831f83
Add DropdownMenuFormField.errorBuilder (#179345)
bleroux Jan 6, 2026
ce0d8e3
Fix DropdownMenuEntry.style not resolved when entry is highlighted (#…
bleroux Jan 7, 2026
9d901a7
Fix TabBar.image does not render at initialIndex for the first time (…
Jan 7, 2026
0f05e43
Fix Drawer.child docstring to say ListView instead of SliverList (#18…
nathannewyen Jan 7, 2026
53b0c6f
Raw tooltip with smaller API surface that exposes tooltip widget (#17…
victorsanni Jan 7, 2026
71728dd
Fix typo in dropdown_menu.dart (#180172)
Koichi5 Jan 9, 2026
f15a456
Add API sample and docs for Expansible widget (#180273)
gowsikraja Jan 12, 2026
06bc9d6
Add TabBar API example for scroll notification integration (#180728)
Jan 13, 2026
4eb758b
Fix RangeSlider dragged cursor handling. (#179988)
ksokolovskyi Jan 14, 2026
fa230e0
Fix vertical SegmentedButton not filling available width under bounde…
Mairramer Jan 17, 2026
564a852
fix: clip ink highlights in NavigationDrawer when footer is present (…
ikramhasan Jan 17, 2026
9a275f6
Add leadingIndex to CarouselController and onItemChanged to CarouselV…
Mairramer Jan 20, 2026
47b3fa5
[Material] update hourFormat to use Dart 3 switch expression (#181041)
Enderjua Jan 22, 2026
4458158
Fixes Typo in codebase (#181256)
srivats22 Jan 22, 2026
55e2c64
Revert DropdownMenu non-nullable breaking change (#181074)
Gustl22 Jan 23, 2026
c6b2f41
Add bottom navigation bar item semantics label (#180577)
Lilian-C Jan 23, 2026
518ac4d
Reset TextFormField to initial value after state change (#181199)
Mairramer Jan 23, 2026
459075b
[Material] modernize Typography._withPlatform with Dart 3 switch expr…
Enderjua Jan 23, 2026
6c486c9
Add `alignment` to `SizeTransition` (#177895)
IvoneDjaja Jan 26, 2026
492ae21
Fix Range Slider issue where indescrete ranges lead to out of range r…
chris-prenissl Jan 27, 2026
87ebd14
[Material] modernize time picker components with Dart 3 switch expres…
Enderjua Jan 27, 2026
23de0e3
feat: add RoundedSuperellipseInputBorder (#177220)
rkishan516 Jan 28, 2026
0a9110a
Fix `todayBorder` todayBorder color is incorrectly overridden by `tod…
huycozy Jan 28, 2026
b322c26
Send statusBarTouch events via dedicated messages (#179643)
LongCatIsLooong Jan 28, 2026
57cca4f
[material/menu_anchor.dart] Add animations to MenuAnchor. (#176494)
davidhicks980 Jan 29, 2026
eefd46b
Add isDark, isLight, and isSystem getters to ThemeMode (#181475)
Turskyi Jan 29, 2026
2cc574d
Deprecate onReorder callback (#178242)
navaronbracke Jan 29, 2026
7f4b667
180162 fix radio list tile and switch list tile accept widget states …
AnishTiwari5077 Jan 29, 2026
749753c
Use null-aware spread in material/app.dart (#181586)
brahim-guaali Feb 2, 2026
30060b1
Use null-aware elements in material/dialog.dart (#181244)
brahim-guaali Feb 2, 2026
298d919
feat: Pass parameters from DropdownMenuFormField to DropDownMenu (#18…
Gustl22 Feb 4, 2026
5cbc066
[cupertino.dart] Implement CupertinoMenuAnchor and CupertinoMenuItem …
davidhicks980 Feb 6, 2026
2617736
Reverts "[cupertino.dart] Implement CupertinoMenuAnchor and Cupertino…
auto-submit[bot] Feb 6, 2026
9b1053f
fix: OutlineInputBorder not respecting BorderSide stroke alignment (#…
ikramhasan Feb 9, 2026
5e4c839
Introduce ScrollCacheExtent and also fixes unbound shrinkwrap cache e…
chunhtai Feb 9, 2026
313b20d
refactor: migrate CupertinoPageTransitionsBuilder to cupertino folder…
rkishan516 Feb 10, 2026
df9f815
Revert "Send statusBarTouch events via dedicated messages (#179643)" …
vashworth Feb 11, 2026
1e114b5
Enhance the Stepper widget by adding customizable header and content …
safwanidrees Feb 11, 2026
1675a90
[Material] modernize legacy switch statements to expressions across m…
Enderjua Feb 12, 2026
d0cb71a
Preparation to add contentTextStyle flag to SimpleDialog. (#182200)
chingjun Feb 13, 2026
0ce4fb2
Add contentTextStyle support to SimpleDialog (#178824)
777genius Feb 17, 2026
5354955
[a11y] RangeSlider mouse interaction should change keyboard focus (#…
hannah-hyj Feb 17, 2026
812de37
Allow TabBar to receive a TabBarScrollController (#180389)
navaronbracke Feb 18, 2026
e553dd5
[web] Pass form validation errors to screen readers via aria-descript…
flutter-zl Feb 18, 2026
6824ea5
Fixing ExpansionTile expandedAlignment not Accepts AlignmentGeometry …
devnoaman Feb 18, 2026
c10cfad
Fix(Material): DateRangePicker ignores DatePickerTheme.dayShape (#181…
akhil-ge0rge Feb 18, 2026
2a76993
Add RawTooltip.ignorePointer (#182527)
victorsanni Feb 19, 2026
7925627
Reland #179643, only scroll hit-testable primary scroll views on stat…
LongCatIsLooong Feb 19, 2026
4d31e94
Add cupertino docimports for CupertinoPageTransitionsBuilder and fix …
victorsanni Feb 20, 2026
3544ced
Shortcircuit if Tooltip message and richMessage are empty (#182524)
victorsanni Feb 21, 2026
8660634
Carousel: Migration from Scrollable+Viewport to CustomScrollView (#18…
Mairramer Feb 24, 2026
53664be
Use AnimationStyle curve and reverseCurve in ModalBottomSheet animati…
Mairramer Feb 25, 2026
b6445c3
Add WidgetStatesController support to ExpansionTile (#181238)
iamvikashtiwari Feb 25, 2026
1980984
Factor out unnecessary `assert`s (#182042)
nate-thegrate Feb 25, 2026
6813b87
Updates MenuAnchor to respect software keyboard (#180975)
patrickBillingsley Feb 25, 2026
200ec44
`SizedBox.square()` (#182731)
nate-thegrate Feb 27, 2026
928357e
[A11y] in calendar date picker, remove SemanticsService.sendAnnouncem…
hannah-hyj Feb 28, 2026
25d4598
Add warning when there is a widget with color between `Material` and …
QuncCccccc Mar 3, 2026
f227996
Eliminate rebuilds for Scaffold FAB animation (#182331)
nate-thegrate Mar 4, 2026
9164014
Windowing implementation of `showDialog` that uses a native desktop w…
mattkae Mar 5, 2026
f7c44f3
Add fallbackColor for PredictiveBackPageTransitionBuilder and Predict…
victorsanni Mar 5, 2026
ba17d28
Add displayCornerRadii support to predictive back transitions. (#181326)
ksokolovskyi Mar 6, 2026
9467779
[material/menu_anchor.dart] Ensure positioned menus always begin anim…
davidhicks980 Mar 10, 2026
f98bc74
Add mainAxisAlignment to NavigationRail (#183514)
mbcorona Mar 17, 2026
cb9f3f5
Framework: Improve DropdownButton selectedItemBuilder assertion (#183…
mbcorona Mar 17, 2026
0401fae
Add a Clarification for the docs of suggestionsBuilder of SearchAncho…
ahmedsameha1 Mar 17, 2026
2712feb
Fixes animation glitch into bottom sheet (#183303)
Mairramer Mar 17, 2026
7b01f43
[Slider] Refactor test "Value indicator appears when it should" (#183…
dkwingsmt Mar 18, 2026
37645aa
Fix Semantics expanded state not updating in PopupMenuButton and Drop…
AhmedLSayed9 Mar 18, 2026
b2b85c0
Replace BorderRadius.circular with const BorderRadius.all and update …
BrainLUX Mar 19, 2026
999225d
Add assert for mutually exclusive errorBuilder and errorText (#183901)
muradhossin Mar 22, 2026
d0e9db4
Add scrollPadding property to DropdownMenu (#183109)
ishaquehassan Mar 23, 2026
7b5f4bb
[Slider] Remove value indicator painter when animation is dismissed (…
dkwingsmt Mar 24, 2026
e39c223
Refactor layout dimensions (#184066)
Piinks Mar 24, 2026
8fe9410
[Dot shorthands] Migrate examples/api/lib/material (#183963)
loic-sharma Mar 26, 2026
91daec9
feat: add infinite carousel support (#175710)
rkishan516 Mar 27, 2026
fb989d2
For ShapeBorder instances with preferPaintInterior=true, use paintInt…
b-luk Mar 28, 2026
bcf28c9
Reland "Fix Slider semantics node size" with some changes (#184168)
hannah-hyj Mar 30, 2026
dd8dfe8
Update TabBar documentation to clarify indicatorWeight behavior (#184…
saurabh-mirajkar Mar 30, 2026
7094edc
Add bottom safe area padding to licenses package license page (#182425)
sysint64 Apr 1, 2026
abca1e6
[ios] Add opt-in inline prediction text input support (#183650)
nikb7 Apr 1, 2026
f3471b0
Replace usages of `MediaQuery.of(context).property` with `MediaQuery.…
AbdeMohlbi Apr 1, 2026
0ee6a79
[widgets/raw_menu_anchor.dart] Always call onClose and onCloseRequest…
davidhicks980 Apr 7, 2026
a46ac97
[cupertino.dart] Implement CupertinoMenuAnchor and CupertinoMenuItem …
davidhicks980 Apr 8, 2026
4fa37c1
Add more error handling to unawaited callsites (#184526)
victorsanni Apr 8, 2026
171c0a4
Merge remote-tracking branch 'source-origin/master' into decoupling-m…
justinmc Apr 21, 2026
0cdfb48
Examples in the right place
justinmc Apr 21, 2026
b2fb360
Material source in the right place
justinmc Apr 21, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
82 changes: 82 additions & 0 deletions packages/material_ui/examples/lib/about/about_list_tile.0.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'package:flutter/material.dart';

/// Flutter code sample for [AboutListTile].

void main() => runApp(const AboutListTileExampleApp());

class AboutListTileExampleApp extends StatelessWidget {
const AboutListTileExampleApp({super.key});

@override
Widget build(BuildContext context) {
return const MaterialApp(home: AboutListTileExample());
}
}

class AboutListTileExample extends StatelessWidget {
const AboutListTileExample({super.key});

@override
Widget build(BuildContext context) {
final ThemeData theme = Theme.of(context);
final TextStyle textStyle = theme.textTheme.bodyMedium!;
final List<Widget> aboutBoxChildren = <Widget>[
const SizedBox(height: 24),
RichText(
text: TextSpan(
children: <TextSpan>[
TextSpan(
style: textStyle,
text:
"Flutter is Google's UI toolkit for building beautiful, "
'natively compiled applications for mobile, web, and desktop '
'from a single codebase. Learn more about Flutter at ',
),
TextSpan(
style: textStyle.copyWith(color: theme.colorScheme.primary),
text: 'https://flutter.dev',
),
TextSpan(style: textStyle, text: '.'),
],
),
),
];

return Scaffold(
appBar: AppBar(title: const Text('Show About Example')),
drawer: Drawer(
child: SingleChildScrollView(
child: SafeArea(
child: AboutListTile(
icon: const Icon(Icons.info),
applicationIcon: const FlutterLogo(),
applicationName: 'Show About Example',
applicationVersion: 'August 2019',
applicationLegalese: '\u{a9} 2014 The Flutter Authors',
aboutBoxChildren: aboutBoxChildren,
),
),
),
),
body: Center(
child: ElevatedButton(
child: const Text('Show About Example'),
onPressed: () {
showAboutDialog(
context: context,
applicationIcon: const FlutterLogo(),
applicationName: 'Show About Example',
applicationVersion: 'August 2019',
applicationLegalese: '\u{a9} 2014 The Flutter Authors',
children: aboutBoxChildren,
);
},
),
),
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'package:flutter/material.dart';

/// Flutter code sample for [ActionIconTheme].

void main() {
runApp(const ActionIconThemeExampleApp());
}

class _CustomEndDrawerIcon extends StatelessWidget {
const _CustomEndDrawerIcon();

@override
Widget build(BuildContext context) {
final MaterialLocalizations localization = MaterialLocalizations.of(
context,
);
return Icon(
Icons.more_horiz,
semanticLabel: localization.openAppDrawerTooltip,
);
}
}

class _CustomDrawerIcon extends StatelessWidget {
const _CustomDrawerIcon();

@override
Widget build(BuildContext context) {
final MaterialLocalizations localization = MaterialLocalizations.of(
context,
);
return Icon(
Icons.segment,
semanticLabel: localization.openAppDrawerTooltip,
);
}
}

class ActionIconThemeExampleApp extends StatelessWidget {
const ActionIconThemeExampleApp({super.key});

@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
theme: ThemeData(
actionIconTheme: ActionIconThemeData(
backButtonIconBuilder: (BuildContext context) {
return const Icon(Icons.arrow_back_ios_new_rounded);
},
drawerButtonIconBuilder: (BuildContext context) {
return const _CustomDrawerIcon();
},
endDrawerButtonIconBuilder: (BuildContext context) {
return const _CustomEndDrawerIcon();
},
),
),
home: const MyHomePage(title: 'Flutter Demo Home Page'),
);
}
}

class MyHomePage extends StatelessWidget {
const MyHomePage({super.key, required this.title});

final String title;

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text(title)),
drawer: Drawer(
child: Column(
children: <Widget>[
TextButton(child: const Text('Drawer Item'), onPressed: () {}),
],
),
),
body: const Center(child: NextPageButton()),
);
}
}

class NextPageButton extends StatelessWidget {
const NextPageButton({super.key});

@override
Widget build(BuildContext context) {
return ElevatedButton.icon(
onPressed: () {
Navigator.of(context).push(
MaterialPageRoute<MySecondPage>(
builder: (BuildContext context) {
return const MySecondPage();
},
),
);
},
icon: const Icon(Icons.arrow_forward),
label: const Text('Next page'),
);
}
}

class MySecondPage extends StatelessWidget {
const MySecondPage({super.key});

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('Second page')),
endDrawer: const Drawer(),
);
}
}
50 changes: 50 additions & 0 deletions packages/material_ui/examples/lib/action_chip/action_chip.0.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Flutter code sample [ActionChip].

import 'package:flutter/material.dart';

void main() => runApp(const ChipApp());

class ChipApp extends StatelessWidget {
const ChipApp({super.key});

@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(colorSchemeSeed: const Color(0xff6750a4)),
home: const ActionChipExample(),
);
}
}

class ActionChipExample extends StatefulWidget {
const ActionChipExample({super.key});

@override
State<ActionChipExample> createState() => _ActionChipExampleState();
}

class _ActionChipExampleState extends State<ActionChipExample> {
bool favorite = false;

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('ActionChip Sample')),
body: Center(
child: ActionChip(
avatar: Icon(favorite ? Icons.favorite : Icons.favorite_border),
label: const Text('Save to favorites'),
onPressed: () {
setState(() {
favorite = !favorite;
});
},
),
),
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'package:flutter/material.dart';

/// Flutter code sample for [AnimatedIcon].

void main() {
runApp(const AnimatedIconApp());
}

class AnimatedIconApp extends StatelessWidget {
const AnimatedIconApp({super.key});

@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(colorSchemeSeed: const Color(0xff6750a4)),
home: const Scaffold(body: AnimatedIconExample()),
);
}
}

class AnimatedIconExample extends StatefulWidget {
const AnimatedIconExample({super.key});

@override
State<AnimatedIconExample> createState() => _AnimatedIconExampleState();
}

class _AnimatedIconExampleState extends State<AnimatedIconExample>
with SingleTickerProviderStateMixin {
late AnimationController controller;
late Animation<double> animation;

@override
void initState() {
super.initState();
controller =
AnimationController(vsync: this, duration: const Duration(seconds: 2))
..forward()
..repeat(reverse: true);
animation = Tween<double>(begin: 0.0, end: 1.0).animate(controller);
}

@override
void dispose() {
controller.dispose();
super.dispose();
}

@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: AnimatedIcon(
icon: AnimatedIcons.menu_arrow,
progress: animation,
size: 72.0,
semanticLabel: 'Show menu',
),
),
);
}
}
Loading
Loading