4281 Commits

Author SHA1 Message Date
Tomasz Gucio
99c7e9f088
Add spaces after flow control statements (#126320) 2023-05-15 11:07:30 +02:00
Taha Tesser
96dae5e1e3
Fix focus behavior and provided thumb and focus color aren't applied to Cupertino variant of Switch.adaptive (#126688)
fixes https://github.com/flutter/flutter/issues/126637
fixes https://github.com/flutter/flutter/issues/126669

##  ~~To be merged after https://github.com/flutter/flutter/pull/126684~~

### Description

1.  Fix the Cupertino variant of `Switch.adaptive` requires two tab key presses to focus.
2.  Fix `thumbColor` & `focusColor` aren't applied.

### Before
Requires two tab presses to focus. and `thumbColor` & `focusColor` aren't applied.

https://github.com/flutter/flutter/assets/48603081/24635551-0794-443f-8320-32fdaa5de57a

### After
Single tab key to focus (no additional focus node) and `thumbColor` & `focusColor` are applied.

https://github.com/flutter/flutter/assets/48603081/9bf42fd8-c7e0-475a-b933-192a94650b0c
2023-05-12 18:48:10 +00:00
Taha Tesser
15a7e07395
Fix showDatePicker in input mode throws an ArgumentError (#126525)
fixes https://github.com/flutter/flutter/issues/126397

The `parseCompactDate` method in `material_localizations.dart` with long text throws an argument error before the date picker could handle it to show a validation error while the date picker is on autovalidate.

This PR adds `try/catch` in the `parseCompactDate` to return null on the argument error.
2023-05-12 16:56:13 +00:00
Qun Cheng
4e7e4512b6
Reorder materialStateProperty defaults (#125905)
Fixes #122250. This PR is to make sure all the MaterialStateProperty defaults are able to correctly resolve different states. 
* When a widget is pressed, it is also hovered, so we need to put the `MaterialState.pressed` check before `MaterialState.hovered`. 
* When a widget is focused, the widget should still be able to be hovered, so we should check `MaterialState.hovered` before `MaterialState.focused`.
* There are also cases like in _InputDecoratorDefaultsM3, the `MaterialState.disabled` should be checked before `MaterialState.error`.

 the order should be disabled, (error), pressed, hovered, focused.
2023-05-11 00:03:09 +00:00
Alex Li
d01d8aeed0
Add strokeAlign to CircularProgressIndicator and RefreshProgressIndicator (#125945) 2023-05-10 14:57:55 -07:00
Kevin Chisholm
a153d6da84
Revert "Provide default constraints for M3 dialogs" (#126355)
Reverts flutter/flutter#120082

Causing breakages: b/281181985
2023-05-09 14:21:52 -05:00
Viren Khatri
5b87e4fba4
fix AppBar's docs for backgroundColor (#126194) 2023-05-09 08:29:53 -07:00
Michael Goderbauer
9b230d239a
Fix leaks (#126144)
Fixes https://github.com/flutter/flutter/issues/126096.
Fixes https://github.com/flutter/flutter/issues/126097.
Fixes https://github.com/flutter/flutter/issues/126102.
Fixes https://github.com/flutter/flutter/issues/126098.
Fixes https://github.com/flutter/flutter/issues/126147.
Work towards https://github.com/flutter/flutter/issues/126100.

Does not fix the OverlyEntry/ModalRoute leak (https://github.com/flutter/flutter/issues/126100).
2023-05-08 09:11:23 +00:00
Tirth
835b892d7f
[ExpansionPanelList] add materialGapSize property in ExpansionPanelList Widget (#123971)
Adds `materialGapSize` property to `ExpansionPanelList` widget.

| `materialGapSize: 0` | `materialGapSize: 16` (default) | `materialGapSize: 30` |
| --- | --- | --- |
| ![screenshot_1680450783](https://user-images.githubusercontent.com/13456345/229366131-8dd105cd-6371-4852-b57b-5900e3dbd203.png) | ![screenshot_1680453525](https://user-images.githubusercontent.com/13456345/229366640-e2ae5f95-0cd6-4694-b8ff-0de7fb7c8554.png) | ![screenshot_1680450910](https://user-images.githubusercontent.com/13456345/229366742-3121331b-b22e-46a1-bdfa-20b5663cbe2b.png) |
| ![screenshot_1680450785](https://user-images.githubusercontent.com/13456345/229366133-bf345914-9d74-4dcc-afc4-a6a9ccca13ab.png) | ![screenshot_1680453527](https://user-images.githubusercontent.com/13456345/229366644-bfff8e4f-8a66-4419-90b8-6a16442b7157.png) | ![screenshot_1680450912](https://user-images.githubusercontent.com/13456345/229366745-364b1a1e-ed2c-4463-a74d-d8e94bf509b9.png) |
| ![screenshot_1680450787](https://user-images.githubusercontent.com/13456345/229366138-3f6280f0-e58a-4621-aced-c7eee2077ef8.png) | ![screenshot_1680453530](https://user-images.githubusercontent.com/13456345/229366648-3805db23-29b0-46a3-82ce-92688e65f0fd.png) | ![screenshot_1680450914](https://user-images.githubusercontent.com/13456345/229366747-73d46f9c-3edc-4197-8f02-651ff8499323.png) |
| ![screenshot_1680450789](https://user-images.githubusercontent.com/13456345/229366140-4ff8572c-8d06-4985-a697-3af0ce0e5743.png) | ![screenshot_1680453532](https://user-images.githubusercontent.com/13456345/229366651-88af37ac-7503-4abc-b6a6-d8556a583871.png) | ![screenshot_1680450916](https://user-images.githubusercontent.com/13456345/229366749-0db156b0-6b53-4ef2-9699-0d3e8704433b.png) |

Fixes: #118167
2023-05-06 20:00:22 +00:00
Viren Khatri
d5df458684
add tests for dominant bottom sheet in scaffold (#124472)
while debugging https://github.com/flutter/flutter/issues/123882 found out that below lines were untested. although they'll change due to the issue above, but the tests will remain.

e0045d04f7/packages/flutter/lib/src/material/scaffold.dart (L3169-L3180)
2023-05-05 20:51:14 +00:00
Qun Cheng
c1c2513ac9
Add Switch.trackOutlineWidth property (#125848) 2023-05-05 13:34:08 -07:00
Istiak Ahmed
042eaf6b90
Add sample code for SliverAppBar (#125785)
This PR adds an another example for SliverAppBar, showing the use of stretch and onStretchTrigger

https://user-images.githubusercontent.com/68919043/235420973-2bfb9871-9e05-4d87-9538-941d43178c76.mp4

Fixes #125651 

### Adds sample code for SliverAppBar [stretch, onStretchTrigger]

This PR adds an another simple and easily understandable example code for SliverAppBar.
2023-05-05 18:09:25 +00:00
Bruno Leroux
de2615462c
Add a ReorderableListView example with cards + cleanup existing tests (#126155)
## Description

This PR adds one `ReorderableListView` example to demonstrate how `proxyDecorator` can be used to animate cards elevation.

https://user-images.githubusercontent.com/840911/236468570-d2b33ab3-6b6d-4f8d-90de-778dcf1ad8ce.mp4

For motivation, see https://github.com/flutter/flutter/issues/124729#issuecomment-1521524190.

## Related Issue

Fixes https://github.com/flutter/flutter/issues/124729

## Tests

Adds 1 tests.

This PR also moves some misplaced example tests from `examples/api/test/reorderable_list` to `examples/api/test/material/reorderable_list` (and replaces two existing ones).
2023-05-05 16:39:11 +00:00
Taha Tesser
ad009fb7ac
Fix Material 3 tab indicator weight and position (#125883)
fixes https://github.com/flutter/flutter/issues/123112

### Description
1. Add proper M3 indicator height aka`IndictorWeight` from the M3 specs for the primary tab bar with label indicator size.
db6074ade4/dev/tools/gen_defaults/data/navigation_tab_primary.json (L9)
(this was held due to `indicatorWeight` having a hard-coded value) 

and added a secondary tab bar indicator height.
2. Set a minimum value for the rounded indicator to maintain the indicator shape.
3. With proper indicator height, the rounded indicator position is also fixed.
4. Fix round indicator is shown for the primary tab bar with tab indicator size.
5. Above changes fix https://github.com/flutter/flutter/issues/123112.
6. Fix the `startOffset` const value from https://github.com/flutter/flutter/pull/125036  to match docs and move it to a variable.
2023-05-05 14:09:18 +00:00
Tirth
91a84dedf5
[NavigationDrawer] adds padding property in NavigationDrawer Widget (#123961)
Adds `tilePadding` property to `NavigationDrawer` Widget.

Fixes: #121662

| Without adding `tilePadding` in NavigationDrawer | With `tilePadding: EdgeInsets.all(16)` in NavigationDrawer |
| --- | --- |
| ![photo_2023-04-02_15-03-56](https://user-images.githubusercontent.com/13456345/229344718-9070c0c0-9c71-4436-9953-d258367951e9.jpg) | ![photo_2023-04-02_15-04-00](https://user-images.githubusercontent.com/13456345/229344717-0768f9d5-6a55-4c2f-918e-53f2423bb959.jpg) |
2023-05-05 05:36:30 +00:00
chunhtai
0b657236ca
Cleans up appbar imply leading logic (#125315)
fixes https://github.com/flutter/flutter/issues/80256
2023-05-04 22:21:11 +00:00
Pierre-Louis
8ec5001ac2
Provide default constraints for M3 dialogs (#120082)
This PR constrains M3 dialogs to 560dp max width and height.

This is not a breaking change per the breaking change policy.

Part of https://github.com/flutter/flutter/issues/118619

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2023-05-04 19:27:11 +02:00
Valentin Vignal
00cd3edae3
Align the Popup Menu under its child (#125534)
Align the `PopupMenu` under its child.

Before:

![image](https://user-images.githubusercontent.com/32538273/234468262-beddb257-5f5a-422f-a678-c26efc52dc07.png)

After:

![image](https://user-images.githubusercontent.com/32538273/234468233-3ea4d741-b04c-4012-bdd7-a36ecedc029c.png)

*List which issues are fixed by this PR. You must list at least one issue.*

Fixes https://github.com/flutter/flutter/issues/125474

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2023-05-02 17:02:55 +00:00
Taha Tesser
a732a74888
Introduce TabBar.tabAlignment (#125036)
fixes https://github.com/flutter/flutter/issues/124195

This introduces `TabBar.tabAlignment` while keeping the default alignment for both M2 and M3.
2023-05-01 16:59:55 +00:00
Viren Khatri
293715a6a4
add support to customize Slider interacivity (#121483)
design doc: https://docs.flutter.dev/go/permissible-slider-interaction

closes #113370

open questions:
  - No, as `SliderInteraction.none` doesn't exist anymore.
  - Yes (done)
  - Yes.
    - SliderInteraction
    - SliderAction
    - Slider.allowedInteraction
    - Slider.permissibleInteraction
    - Slider.interaction
    - Slider.allowedAction
    - Slider.permittedAction
2023-05-01 16:42:05 +00:00
Qun Cheng
a433f88d16
Checkbox.fillColor should be applied to checkbox's background color when it is unchecked. (#125643) 2023-04-28 12:05:31 -07:00
Phlippie Bosman
69af934367
Nit: grammar in documentation (#125462)
Fixes a [grocer's apostrophe](https://www.grammar-monster.com/lessons/apostrophe_error_with_plurals.htm). 

Apostrophes are not used to indicate plurals, and this incorrect usage in the documentation tripped me up, so I figured I could submit a quick correction :)
2023-04-28 17:18:54 +00:00
fzyzcjy
00bbf5434c
Allow users to provide route settings to showMenu (#124935)
Background: I am adding logging to things like dialogs, bottom sheets and menus. Then I realized that, showMenu does not allow users to provide RouteSettings, while showDialog and showModalBottomSheet both allow. Therefore, IMHO a consistent API design may need to add this to showMenu.

I will add tests if this proposal looks OK :)
2023-04-28 15:21:54 +00:00
arvin
f87d208742
fix RangeSlider, with no overlayShape shifts to the left (#125483) 2023-04-28 09:24:49 -05:00
Taha Tesser
18e36dcb5d
Fix SnackBar material clip (#125622)
fixes https://github.com/flutter/flutter/issues/125619

### Before

![Screenshot 2023-04-27 at 14 08 05](https://user-images.githubusercontent.com/48603081/234853490-0a9c4e18-20aa-40f7-a6b0-efb278f515eb.png)

### After

![Screenshot 2023-04-27 at 14 00 44](https://user-images.githubusercontent.com/48603081/234853470-c69c20d3-124d-438a-9312-2d17492c5606.png)
2023-04-27 16:48:27 +00:00
Pierre-Louis
1f602cb6ca
Provide default constraints for M3 bottom sheets (#120065)
This PR constrains M3 bottom sheets to 640dp max width by default.
`constraints` can be used to provide different `minWidth` and
`maxWidth`.

This is not a breaking change per the breaking change policy.

Part of https://github.com/flutter/flutter/issues/118619
Part of https://github.com/flutter/flutter/issues/111448

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2023-04-27 09:28:11 +02:00
chunhtai
ef82f97fc0
Adds selected semantics flag to radio button for Apple devices (#125499)
fixes https://github.com/flutter/flutter/issues/125495

The iOS will announce 'Selected, \<label\>, button' for selected radio button after this change
2023-04-25 21:11:15 +00:00
Justin McCandless
85ec874260
iOS TextField spell check style (#125432)
When using a Material TextField on iOS, the spell check selection style now defaults to the red iOS-style, not Android's blue.
2023-04-25 11:33:45 -07:00
Taha Tesser
6e1d4f9fc6
Fix SliverAppBar.medium & SliverAppBar.large text scale (#125038)
fixes https://github.com/flutter/flutter/issues/114340

<details> 
<summary>code sample</summary> 

```dart
import 'package:flutter/material.dart';

/// Flutter code sample for [SliverAppBar.medium].

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(
        useMaterial3: true,
      ),
      home: MediaQuery(
        data: MediaQuery.of(context).copyWith(textScaleFactor: 3.0),
        child: Material(
          child: CustomScrollView(
            slivers: <Widget>[
              SliverAppBar.medium(
                leading:
                    IconButton(icon: const Icon(Icons.menu), onPressed: () {}),
                title: const Text('Medium App Bar'),
                actions: <Widget>[
                  IconButton(icon: const Icon(Icons.more_vert), onPressed: () {}),
                ],
              ),
              // SliverAppBar.large(
              //   leading:
              //       IconButton(icon: const Icon(Icons.menu), onPressed: () {}),
              //   title: const Text('Large App Bar'),
              //   actions: <Widget>[
              //     IconButton(
              //         icon: const Icon(Icons.more_vert), onPressed: () {}),
              //   ],
              // ),
              // Just some content big enough to have something to scroll.
              SliverToBoxAdapter(
                child: Card(
                  child: SizedBox(
                    height: 1200,
                    child: Padding(
                      padding: const EdgeInsets.fromLTRB(8, 100, 8, 100),
                      child: Text(
                        'Here be scrolling content...',
                        style: Theme.of(context).textTheme.headlineSmall,
                      ),
                    ),
                  ),
                ),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

``` 
	
</details>

### Before
|  Medium App Bar - `textScaleFactor: 3.0` |   Large App Bar - `textScaleFactor.30` |
| --------------- | --------------- |
| <img src="https://user-images.githubusercontent.com/48603081/232815191-ab42523b-d710-4c93-a889-e9c92ca472c8.png" height="450" /> | <img src="https://user-images.githubusercontent.com/48603081/232815232-104c208d-f1dd-404e-9218-5dfb61244d56.png" height="450" /> |

### After
|  Medium App Bar - `textScaleFactor: 3.0` |   Large App Bar - `textScaleFactor.30` |
| --------------- | --------------- |
| <img src="https://user-images.githubusercontent.com/48603081/232815733-8b8af94f-197f-427a-bbb9-bc6cd0173658.png" height="450" /> | <img src="https://user-images.githubusercontent.com/48603081/232815758-2c336d14-085b-4e91-8b93-748a40822ea6.png" height="450" /> |
2023-04-25 08:27:24 +00:00
Tirth
9525934ed3
[date_picker] [date_range_picker] add properties to change switch-to icons (#124881) 2023-04-24 16:20:21 -07:00
Bernardo Ferrari
9e9ac77dea
Add borderRadius to LinearProgressIndicator (#123517)
Split from https://github.com/flutter/flutter/pull/122664 so it gets easier to review, as this is now unrelated to the `preferRound`. I'm one step from adding a width attribute, lol.

<img width="474" alt="image" src="https://user-images.githubusercontent.com/351125/226083798-71e529e9-4ae9-41de-a500-0412b989a273.png">

cc @Piinks
2023-04-24 22:43:05 +00:00
Taha Tesser
38c7c2fe93
Fix OutlinedButton, TextButton, and IconButton throw exception when passing only one cursor to styleFrom (#125204)
fixes https://github.com/flutter/flutter/issues/118071
2023-04-24 21:41:06 +00:00
Justin McCandless
98aaf00a09
Fix the position of the Android-style spell check toolbar (#124897)
The spell check menu now appears directly below the misspelled word on Android.
2023-04-24 10:26:47 -07:00
Luccas Clezar
f86b9220a3
Update Cupertino desktop text selection toolbar (#121829)
Visual fidelity of the right-click context menu on MacOS.
2023-04-21 16:03:34 -07:00
chunhtai
8a815c1d1d
Remove unecessary reference to ClipboardStatusNotifier (#125255)
fixes https://github.com/flutter/flutter/issues/99360
2023-04-21 22:38:06 +00:00
Hugo
d93ffc10c4
Fix the divider_theme space documentation problem (#125195)
In the specific implementation, the Divider uses the "space" field as the height for horizontal dividers, and the "space" field as the width for VerticalDivider , which is different from the documentation description.
2023-04-21 21:59:08 +00:00
Bruno Leroux
d4f884e000
Make selectable text mouse cursor configurable (#125133)
## Description

This PR introduces `DefaultSelectionStyle.mouseCursor` to configure the mouse cursor over selectable text.
It also applies this solution to `InkResponse` to make the mouse cursor win over the default one provided by selectable `Text` for many Material components (such as buttons). 

### Before

https://user-images.githubusercontent.com/840911/233627729-ddf98e2a-444d-4c6d-a6d5-f521982f48dd.mov

### After

https://user-images.githubusercontent.com/840911/233627718-8871a68f-d33c-44cf-b4a1-91bb1fcdf076.mov

## Related Issue

Fixes https://github.com/flutter/flutter/issues/104595

## Tests

Adds 6 tests.
2023-04-21 13:43:37 +00:00
Hans Muller
5d3c1ca870
Updated the BottomNavigationBar API doc to link to NavigationBar (#125240)
The BottomNavigationBar API doc now makes it clear that NavigationBar is preferred in new M3 applications.

Fixes https://github.com/flutter/flutter/issues/124687
2023-04-20 23:21:05 +00:00
Chris Bobbe
58e30852e6
BottomAppBar doc: Fix doc about surfaceTintColor (#124563) 2023-04-20 15:39:24 -07:00
9oya
0c7bc2f9c9
Implement CheckmarkableChipAttributes on ChoiceChip (#124743) 2023-04-20 11:43:49 -07:00
Justin McCandless
13f4fe4091
Show iOS menu on iOS for TextField by default (#124895)
Even in TextField using the Material library, iOS devices will still show the iOS-style spell check toolbar by default when using spell check.
2023-04-20 11:09:37 -07:00
xubaolin
9f2e708831
DropdownMenu.width should support updating at runtime (#124847)
Fixes https://github.com/flutter/flutter/issues/120567
2023-04-20 11:39:25 +00:00
Qun Cheng
3315b25740
Make search view shape clip the view content (#125161)
Fixes #124426

This PR is to make the search view shape clip the view content.

Before: the highlight and the "i" of "item 9" are not clipped by the shape.

<img width="350" alt="Screenshot 2023-04-19 at 12 09 48 PM" src="https://user-images.githubusercontent.com/36861262/233201222-468820a9-8717-4b6c-8528-8125a40fc161.png">

After:

<img width="350" alt="Screenshot 2023-04-19 at 2 13 52 PM" src="https://user-images.githubusercontent.com/36861262/233201609-81f5a942-2390-4081-a9c7-c9523a7f9e72.png">
2023-04-20 04:50:52 +00:00
xubaolin
73f7945ba2
fix DropdownMenu crash when resize window during menu showing (#124855) 2023-04-19 14:21:49 -07:00
Qun Cheng
4c6929d4c9
Dismiss the docked search view when the window size is changed (#125071) 2023-04-19 11:23:20 -07:00
Justin McCandless
3128df832a
Disableable ContextMenuButtonItems (#124253)
Fixes https://github.com/flutter/flutter/issues/124247

| Native | Flutter before | Flutter after |
| --- | --- | --- |
| <img width="248" alt="Screenshot 2023-04-05 at 9 26 16 AM" src="https://user-images.githubusercontent.com/389558/230177116-154999e8-eef3-441d-9fe9-7063839a6b99.png"> | <img width="240" alt="Screenshot 2023-04-05 at 11 18 01 AM" src="https://user-images.githubusercontent.com/389558/230177125-1680e851-223e-4956-b5b6-1a24e11dc22a.png"> | <img width="226" alt="Screenshot 2023-04-05 at 11 17 36 AM" src="https://user-images.githubusercontent.com/389558/230177123-bde82134-67e1-4ce2-8eec-719eeb779bf4.png"> |

Also, it's now possible for anyone to create disabled buttons like this by setting ContextMenuButtonItem.onPressed to `null`.
2023-04-19 00:09:34 +00:00
Mitchell Goodwin
bd2617ecb9
Adaptive alert dialog (#124336)
Fixes #102811. Adds an adaptive constructor to AlertDialog, along with the adaptive function showAdaptiveDialog.

<img width="357" alt="Screenshot 2023-04-06 at 10 40 18 AM" src="https://user-images.githubusercontent.com/58190796/230455412-31100922-cfc5-4252-b8c6-6f076353f29e.png">
<img width="350" alt="Screenshot 2023-04-06 at 10 42 50 AM" src="https://user-images.githubusercontent.com/58190796/230455454-363dd37e-c44e-4aca-b6a0-cfa1d959f606.png">
2023-04-18 23:00:03 +00:00
Greg Spencer
4b39f071f3
Add controller argument to SubmenuButton (#125000)
## Description

This adds an optional argument to the `SubmenuButton` that allows the creator to supply a `MenuController` for controlling the menu.

## Related Issues
 - Fixes https://github.com/flutter/flutter/issues/124988

## Tests
 - Added tests for new argument.
2023-04-18 21:09:53 +00:00
Justin McCandless
f04a5afb58
Limit the number of Material spell check suggestions to 3 (#124899)
Fixes a bug where the spell check menu could overflow.
2023-04-18 12:50:12 -07:00
Justin McCandless
9d6883135a
Remove unused context parameter (#124254)
Tidying up the spell check API.
2023-04-18 10:31:05 -07:00