Polina Cherkasova
4736cd3d37
Fix one notDisposed leak and mark another. ( #133595 )
2023-08-29 23:08:48 +00:00
Polina Cherkasova
67f9d77177
Upgrade packages. ( #133593 )
2023-08-29 15:18:12 -07:00
Polina Cherkasova
fb5abe45b8
Cover more tests with leak tracking. ( #133596 )
2023-08-29 14:23:10 -07:00
Hans Muller
4022864c65
Added DropdownMenuEntry.labelWidget ( #133491 )
2023-08-29 13:01:49 -07:00
Ian Hickson
89310edaa2
Use a fake stopwatch to remove flakiness. ( #133229 )
...
Fixes https://github.com/flutter/flutter/issues/133215
2023-08-29 12:49:33 -07:00
Mouad Debbar
9a9c2826d1
[web] Migrate remaining web-only API usages to dart:ui_web
( #132248 )
...
This is the last batch of web-only API migration.
Depends on https://github.com/flutter/engine/pull/44516
Fixes https://github.com/flutter/flutter/issues/52899
Fixes https://github.com/flutter/flutter/issues/126831
2023-08-29 18:56:07 +00:00
Polina Cherkasova
ae64abc614
ShortcutManager should dispatch creation in constructor. ( #133487 )
2023-08-29 10:40:20 -07:00
Taha Tesser
d8d7e019c1
Add FAB Additional Color Mappings example ( #133453 )
...
fixes [Additional color mappings for FAB in Material 3](https://github.com/flutter/flutter/issues/130702 )
### Preview

2023-08-29 17:31:02 +00:00
Dan Field
f489256fce
Fix bug in setPreferredOrientations example ( #133503 )
...
The `ui.Display` is a simple data class (like `MediaQueryData`), and does not get updated when the display size changes. The provided sample code does not work as intended, but the update does.
2023-08-29 06:29:05 +00:00
Polina Cherkasova
bd1583f3e5
FocusNode and FocusManager should dispatch creation in constructor. ( #133490 )
2023-08-28 16:19:32 -07:00
Polina Cherkasova
e8df434956
PlatformRouteInformationProvider should dispatch creation in constructor. ( #133492 )
2023-08-28 15:51:01 -07:00
Zachary Anderson
7772f6b05a
Revert "Remove ImageProvider.load
, DecoderCallback
and `PaintingB… ( #133482 )
...
…inding.instantiateImageCodec` (#132679 )"
This reverts commit b4f4ece40d956ad86efa340ff7fe9d0fa6deea07.
Trial revert for https://github.com/flutter/flutter/issues/133398
Co-authored-by: LongCatIsLooong <31859944+LongCatIsLooong@users.noreply.github.com>
2023-08-28 15:39:10 -07:00
Renzo Olivares
ca33836b45
Fix context menu button color on Android when textButtonTheme is set ( #133271 )
...
Fixes #133027
When setting a `textButtonTheme` it should not override the native context menu colors.
```dart
theme: ThemeData(
textButtonTheme: const TextButtonThemeData(
style: ButtonStyle(
backgroundColor: MaterialStatePropertyAll<Color>(
Color(0xff05164d)), // blue color
),
),
),
```
Before|After
--|--
<img width="341" alt="Screenshot 2023-08-24 at 1 17 25 PM" src="https://github.com/flutter/flutter/assets/948037/30ea0ef8-b41a-4e1f-93a3-50fcd87ab2bf ">|<img width="341" alt="Screenshot 2023-08-24 at 1 15 35 PM" src="https://github.com/flutter/flutter/assets/948037/5f59481c-aa5d-4850-aa4b-daa678e54044 ">
2023-08-28 22:27:39 +00:00
Taha Tesser
a0943e6533
Fix DatePickerDialog
& DateRangePickerDialog
overflow when resized from landscape to portrait ( #133327 )
...
fixes [resize window with a `showDateRangePicker` will make RenderFlex overflowed error](https://github.com/flutter/flutter/issues/131989 )
### Description
- This fixes `DatePickerDialog` & `DateRangePickerDialog` overflow error when resized from landscape to portrait.
- Added tests that check these two widgets from landscape to portrait for no overflow errors.
<details
<summary>expand to view the code sample</summary>
```dart
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return const MaterialApp(
debugShowCheckedModeBanner: false,
home: Example(),
);
}
}
class Example extends StatefulWidget {
const Example({super.key});
@override
State<Example> createState() => _ExampleState();
}
class _ExampleState extends State<Example> {
bool _portait = false;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('DatePicker & DateRangePicker'),
),
body: MediaQuery(
data: MediaQuery.of(context).copyWith(
size: _portait ? const Size(400, 800) : const Size(800, 400),
),
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
DatePickerDialog(
initialDate: DateTime.now(),
firstDate: DateTime(2020),
lastDate: DateTime(2030),
initialEntryMode: DatePickerEntryMode.inputOnly,
),
DateRangePickerDialog(
currentDate: DateTime.now(),
firstDate: DateTime(2020),
lastDate: DateTime(2030),
initialEntryMode: DatePickerEntryMode.inputOnly,
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: () {
setState(() {
_portait = !_portait;
});
},
child: const Icon(Icons.refresh),
),
);
}
}
```
</details>
### Before
https://github.com/flutter/flutter/assets/48603081/81387cbb-cdcf-42bd-b4f8-b7a08317c955
### After
https://github.com/flutter/flutter/assets/48603081/36d28ea9-cfed-48ad-90f5-0459755e08c0
2023-08-28 20:52:54 +00:00
Victoria Ashworth
f1f46ef2d3
Revert "PlatformRouteInformationProvider should dispatch creation in constructor." ( #133479 )
...
Reverts flutter/flutter#133353
Tree is failing on Mac and Linux customer_testing on this PR.
https://ci.chromium.org/ui/p/flutter/builders/prod/Mac%20customer_testing/14646/overview
https://ci.chromium.org/ui/p/flutter/builders/prod/Linux%20customer_testing/14974/overview
2023-08-28 18:13:21 +00:00
Victoria Ashworth
76d6d36b7a
Revert "FocusNode and FocusManager should dispatch creation in constructor." ( #133474 )
...
Reverts flutter/flutter#133352
Tree is failing on Mac and Linux customer_testing on this PR.
https://ci.chromium.org/ui/p/flutter/builders/prod/Mac%20customer_testing/14646/overview
https://ci.chromium.org/ui/p/flutter/builders/prod/Linux%20customer_testing/14974/overview
2023-08-28 17:50:22 +00:00
Victoria Ashworth
ec387a467a
Revert "ShortcutManager should dispatch creation in constructor." ( #133472 )
...
Reverts flutter/flutter#133356
Tree is failing on customer_testing on this PR.
https://ci.chromium.org/ui/p/flutter/builders/prod/Mac%20customer_testing/14646/overview
2023-08-28 17:34:23 +00:00
Polina Cherkasova
703d60b5e9
FocusNode and FocusManager should dispatch creation in constructor. ( #133352 )
2023-08-28 09:38:19 -07:00
Polina Cherkasova
cf91262f75
ShortcutManager should dispatch creation in constructor. ( #133356 )
2023-08-28 09:38:05 -07:00
Justin McCandless
dfd4147cea
Fix stuck predictive back platform channel calls ( #133368 )
...
Fix a Google test flakiness increase.
2023-08-28 09:23:52 -07:00
Salmanul Farisi.M
69f61a289e
added option to change color of heading row(flutter#132428) ( #132728 )
...
Paginated datatable widget cannot give color to table header
fixes #132428
---------
Co-authored-by: Hans Muller <hansmuller@google.com>
2023-08-28 08:51:56 -07:00
Polina Cherkasova
2ea5296616
PlatformRouteInformationProvider should dispatch creation in constructor. ( #133353 )
2023-08-28 08:46:10 -07:00
Polina Cherkasova
343000b6e9
_SelectableFragment should dispatch creation in constructor. ( #133351 )
2023-08-25 17:03:47 -07:00
Chinmoy
347f7bac94
Adds callback onWillAcceptWithDetails in DragTarget. ( #131545 )
...
This PR adds onWillAcceptWithDetails callback to DragTarget to get information about offset.
Fixes : #131378
This PR is subject to changes based on #131542
2023-08-25 21:24:05 +00:00
Kate Lovett
72bd36026f
Remove deprecated onPlatformMessage from TestWindow and TestPlatformDispatcher ( #133183 )
2023-08-25 15:46:11 -05:00
Kate Lovett
721016c1db
Remove deprecated androidOverscrollIndicator from ScrollBehaviors ( #133181 )
2023-08-25 15:13:42 -05:00
gmilou
40af7db6bb
Add an example showing how to use a MatrixTransition. ( #132874 )
2023-08-25 15:09:58 -05:00
Kenzie Davisson
61d9f55665
Update flutter packages to pick up latest vm_service ( #133335 )
...
Generated by running `flutter update-packages --force-upgrade`
2023-08-25 11:03:35 -07:00
Taha Tesser
ea00521939
Fix PopupMenuItem
with a ListTile
doesn't use the correct style. ( #133141 )
...
fixes [`PopupMenuItem` with a `ListTile` doesn't use the correct text style.](https://github.com/flutter/flutter/issues/133138 )
### Description
This fixes an issue text style issue for `PopupMenuItem` with a `ListTile` (for an elaborate popup menu)
https://api.flutter.dev/flutter/material/PopupMenuItem-class.html
<details>
<summary>expand to view the code sample</summary>
```dart
import 'package:flutter/material.dart';
/// Flutter code sample for [PopupMenuButton].
// This is the type used by the popup menu below.
enum SampleItem { itemOne, itemTwo, itemThree }
void main() => runApp(const PopupMenuApp());
class PopupMenuApp extends StatelessWidget {
const PopupMenuApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
useMaterial3: true,
textTheme: const TextTheme(
labelLarge: TextStyle(
fontStyle: FontStyle.italic,
fontWeight: FontWeight.bold,
),
),
),
home: const PopupMenuExample(),
);
}
}
class PopupMenuExample extends StatefulWidget {
const PopupMenuExample({super.key});
@override
State<PopupMenuExample> createState() => _PopupMenuExampleState();
}
class _PopupMenuExampleState extends State<PopupMenuExample> {
SampleItem? selectedMenu;
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: SizedBox(
width: 300,
height: 130,
child: Align(
alignment: Alignment.topLeft,
child: PopupMenuButton<SampleItem>(
initialValue: selectedMenu,
// Callback that sets the selected popup menu item.
onSelected: (SampleItem item) {
setState(() {
selectedMenu = item;
});
},
itemBuilder: (BuildContext context) =>
<PopupMenuEntry<SampleItem>>[
const PopupMenuItem<SampleItem>(
value: SampleItem.itemOne,
child: Text('PopupMenuItem'),
),
const CheckedPopupMenuItem<SampleItem>(
checked: true,
value: SampleItem.itemTwo,
child: Text('CheckedPopupMenuItem'),
),
const PopupMenuItem<SampleItem>(
value: SampleItem.itemOne,
child: ListTile(
leading: Icon(Icons.cloud),
title: Text('ListTile'),
contentPadding: EdgeInsets.zero,
trailing: Icon(Icons.arrow_right_rounded),
),
),
],
),
),
),
),
);
}
}
```
</details>
### Before

### After

2023-08-25 14:49:04 +00:00
Taha Tesser
612117a690
Fix Chip.shape
's side is not used when provided in Material 3 ( #132941 )
...
fixes [Chip border side color not working in Material3](https://github.com/flutter/flutter/issues/132922 )
### Code sample
<details>
<summary>expand to view the code sample</summary>
```dart
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
useMaterial3: true,
chipTheme: const ChipThemeData(
// shape: RoundedRectangleBorder(
// side: BorderSide(color: Colors.amber),
// borderRadius: BorderRadius.all(Radius.circular(12)),
// ),
// side: BorderSide(color: Colors.red),
),
),
home: const Example(),
);
}
}
class Example extends StatelessWidget {
const Example({super.key});
@override
Widget build(BuildContext context) {
return const Scaffold(
body: Center(
child: RawChip(
shape: RoundedRectangleBorder(
side: BorderSide(color: Colors.amber),
borderRadius: BorderRadius.all(Radius.circular(12)),
),
// side: BorderSide(color: Colors.red),
label: Text('Chip'),
),
),
);
}
}
```
</details>
---
### Before
When `RawChip.shape` is provided with a `BorderSide`.
```dart
body: Center(
child: RawChip(
shape: RoundedRectangleBorder(
side: BorderSide(color: Colors.amber),
borderRadius: BorderRadius.all(Radius.circular(12)),
),
label: Text('Chip'),
),
),
```

When `RawChip.shape` is provided with a `BorderSide` and also `RawChip.side` is provided. The `RawChip.side` overrides the shape's side.
```dart
body: Center(
child: RawChip(
shape: RoundedRectangleBorder(
side: BorderSide(color: Colors.amber),
borderRadius: BorderRadius.all(Radius.circular(12)),
),
side: BorderSide(color: Colors.red),
label: Text('Chip'),
),
),
```

---
### After
When `RawChip.shape` is provided with a `BorderSide`.
```dart
body: Center(
child: RawChip(
shape: RoundedRectangleBorder(
side: BorderSide(color: Colors.amber),
borderRadius: BorderRadius.all(Radius.circular(12)),
),
label: Text('Chip'),
),
),
```

When `RawChip.shape` is provided with a `BorderSide` and also `RawChip.side` is provided. The `RawChip.side` overrides the shape's side.
```dart
body: Center(
child: RawChip(
shape: RoundedRectangleBorder(
side: BorderSide(color: Colors.amber),
borderRadius: BorderRadius.all(Radius.circular(12)),
),
side: BorderSide(color: Colors.red),
label: Text('Chip'),
),
),
```

---
2023-08-25 14:47:08 +00:00
Tomasz Gucio
5c17a37b0b
Dispose overlay entries ( #132826 )
2023-08-25 14:35:49 +02:00
Lau Ching Jun
22a61b947f
Allow passing verbose log from flutter daemon. ( #132828 )
...
It would be helpful for debugging if we can choose to also receive remote verbose logs.
2023-08-25 04:26:56 +00:00
Ian Hickson
d6bf1447f4
Update the tool to know about all our new platforms ( #132423 )
...
...and add a test so we remember to keep it in sync.
2023-08-24 21:54:59 +00:00
Ian Hickson
5fa8de05ee
l10n-related documentation improvements ( #133114 )
2023-08-24 21:54:56 +00:00
Henry Riehl
b211891876
Add hover duration for Inkwell
widget ( #132176 )
...
Adds a `hoverDuration` property to the `Inkwell` widget. This allows the user to customise how long the change in colour animates between the default colour and the hovered colour.
https://github.com/flutter/flutter/assets/73116038/2e7c5ccb-8651-4e08-8c7b-225cc005d594
Fixes #132170
2023-08-24 21:45:21 +00:00
Polina Cherkasova
afa37891cf
Users of ChangeNotifier should dispatch event of object creation in constructor. ( #133210 )
2023-08-24 13:41:57 -07:00
LongCatIsLooong
b4f4ece40d
Remove ImageProvider.load
, DecoderCallback
and PaintingBinding.instantiateImageCodec
( #132679 )
...
~The failing plugin tests should pass once
https://github.com/flutter/packages/pull/4725 lands and rolls into
flutter/flutter~
google tests are migrated.
Part of https://github.com/flutter/flutter/issues/133171
## Pre-launch Checklist
- [ ] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [ ] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [ ] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] 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-08-24 12:38:27 -07:00
Andrew Kolos
e1967ecabf
handle exceptions raised while searching for configured android studio ( #133180 )
...
Fixes #133055
2023-08-24 17:36:19 +00:00
Christopher Fujino
12cf9de68b
Fix mac tool_integration_tests with Xcode 15 ( #133217 )
...
Fixes https://github.com/flutter/flutter/issues/132990
2023-08-24 17:03:17 +00:00
Kate Lovett
87c1a461e1
Remove deprecated PlatformViewsService.synchronizeToNativeViewHierarchy ( #133175 )
...
Part of https://github.com/flutter/flutter/issues/133171
2023-08-23 23:52:19 +00:00
Kate Lovett
8c69fd550c
Remove deprecated MaterialButtonWithIconMixin ( #133173 )
...
Part of https://github.com/flutter/flutter/issues/133171
2023-08-23 23:06:14 +00:00
Polina Cherkasova
89907f6da3
Enable ChangeNotifier clients to dispatch event of object creation in constructor. ( #133060 )
2023-08-23 15:55:28 -07:00
Michael Goderbauer
382ceb5707
Enable literal_only_boolean_expressions ( #133186 )
...
Blocking issue (https://github.com/dart-lang/linter/issues/453 ) for this lint has been resolved.
2023-08-23 21:35:54 +00:00
chunhtai
4930613999
Add android analyzer commands for applinks ( #131009 )
...
Since applink validation tool is going to be a static tool, It won't have access to vmservices.
[flutter.dev/go/static-tooling-in-devtools](http://flutter.dev/go/static-tooling-in-devtools )
I remove the vm services and also update the deeplink task to also include path pattern and custom scheme
http://go/android-applink-apis (internal only)
2023-08-23 21:11:51 +00:00
Christopher Fujino
9e59a68c98
[flutter_tools] Fix legacy version file not being ensured ( #133097 )
...
Fixes https://github.com/flutter/flutter/issues/133093
When I introduced the new, more robust version file `//flutter/bin/cache/version.json` in https://github.com/flutter/flutter/pull/124558 , I changed `class FlutterVersion` into an abstract interface, implemented by `_FlutterVersionFromGit` (which is essentially the previous behavior) and `_FlutterVersionFromFile`, which merely reads the data it would have computed via git from `//flutter/bin/cache/version.json`.
While doing this, I made `_FlutterVersionFromGit.ensureVersionFile()` to be a no-op, since I assumed this would not be necessary since we already had a version file in the cache. However, this method was what was previously responsible for ensuring `//flutter/version` existed on disk. This means that if, for whatever reason, the user had `//flutter/bin/cache/flutter.version.json` present but NOT `//flutter/version`, the tool would have never created that file, and they would hit the tool crash seen in https://github.com/flutter/flutter/issues/133093 .
This fixes the tool by ensuring `//flutter/version` exists regardless of if we're hydrating `FlutterVersion` from `//flutter/bin/cache/flutter.version.json` or not.
2023-08-23 18:31:06 +00:00
Michael Goderbauer
ad78cf3506
Remove deprecated *TestValues from TestWindow ( #131098 )
...
Part of https://github.com/flutter/flutter/issues/133171 .
Removes from `TestWindow`:
* `localeTestValue`
* `clearLocaleTestValue`
* `localesTestValue`
* `clearLocalesTestValue`
* `initialLifecycleStateTestValue`
* `alwaysUse24HourFormatTestValue`
* `clearAlwaysUse24HourTestValue`
* `brieflyShowPasswordTestValue`
* `defaultRouteNameTestValue`
* `clearDefaultRouteNameTestValue`
* `semanticsEnabledTestValue`
* `clearSemanticsEnabledTestValue`
* `accessibilityFeaturesTestValue`
* `clearAccessibilityFeaturesTestValue`
These properties have reached the end of their deprecation period.
2023-08-23 18:31:04 +00:00
Jackson Gardner
d8b1e81c1f
Add --experimental-wasm-type-reflection
and support newer emscripten builds. ( #133084 )
...
This makes two changes to prepare for incoming changes to skwasm in the web engine:
* We will (at least for now) be depending on the `WebAssembly.Function` constructor in `skwasm`, which is hidden behind the `--experimental-wasm-type-reflection` flag. We need to pass that when running skwasm benchmarks.
* We are going to be upgrading the skwasm build to a newer version of emscripten, which exposes the wasm exports via the `wasmExports` property instead of the `asm` property. Make sure to support either, if passed.
2023-08-23 17:07:41 +00:00
Ian Hickson
88290989a1
Reference AppLifecycleListener from widgets library ( #132995 )
2023-08-23 04:13:15 +00:00
Ian Hickson
487bd69078
Support disabling animations in the CLI ( #132239 )
2023-08-23 03:35:22 +00:00
Polina Cherkasova
2afded6170
Add test to mark recording as leaking. ( #133073 )
2023-08-23 00:06:05 +00:00