Commit Graph

82395 Commits

Author SHA1 Message Date
Robert Ancell
f2ce662fd2 Refactor event redispatching (#161701)
Instead of doing the redispatching from inside FlKeyboardManager, return
the event asynchronously to the code that provided the event in the
first case. That code has all the context on how to do the redispatch -
this will be more complicated in a multi-view case.
2025-01-17 01:01:49 +00:00
Jonah Williams
12518fac13 [Impellerc] correctly pad arrays of vec3s in reflector. (#161697)
When processing the metadata for a struct with an array, incorporate the
padding into the layout. Previously we would register a vec3[n] array as
being 4*n bytes (including the padding), but when uploading this would
result in us writing data into the padding and then leave the rest
uninitialized. now we correctly insert a padding element between 3 byte
elements.

Fixes https://github.com/flutter/flutter/issues/161645
2025-01-17 00:48:01 +00:00
Jason Simmons
747f5fff1e Initialize dartLoader.rootDirectories so the Web stack trace mapper can convert package source paths (#160383)
See
https://dart.googlesource.com/sdk/+/refs/heads/main/pkg/dev_compiler/web/stack_trace_mapper.dart

Fixes https://github.com/flutter/flutter/issues/158109
2025-01-17 00:40:52 +00:00
Robert Ancell
a6045c9985 Make fl_keyboard_manager_handle_event async (#161637)
In this way we can tell when this call completes, which should help
testing and refactoring.
2025-01-16 23:45:48 +00:00
Kevin Moore
82a58ee499 Update social links in readme (#161778) 2025-01-16 23:16:16 +00:00
Robert Ancell
732e003745 Remove some stray printf debugging (#161706) 2025-01-16 22:47:02 +00:00
Srujan Gaddam
c173e2e29c Set meta tag in default index (#161493)
The bootstrapping for the DDC module format and library bundle module
format contained a preamble to dynamically set the meta tag to ensure
the document is parsed as utf-8. This doesn't work as the page has
already been parsed at that point. Instead, it should go in the html
directly.

The meta tag should not affect the AMD module format, as require.js
already ensures any loaded scripts are parsed as utf-8.

This tag in general is needed to parse this string correctly:
https://github.com/dart-lang/sdk/blob/main/sdk/lib/core/uri.dart#L4100

This is a follow-up to PR
https://github.com/flutter/flutter/pull/161276.

## 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 `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.
2025-01-16 22:27:08 +00:00
Andrew Kolos
8ef7b93287 remove usage of Usage from build system (#160663)
Towards https://github.com/flutter/flutter/issues/150575

This effectively just removes `Usage` as a dependency of `Environment`
(in build_system.dart). All other changes are a direct result of that.


<details>

<summary> Pre-launch checklist </summary> 


- [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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.

</details>

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-16 21:54:58 +00:00
Andrew Kolos
5a3541c40c route CLI command usage information through the logger instead of using print (#161533)
Fixes https://github.com/flutter/flutter/issues/158532


<details>

<summary> Pre-launch checklist </summary> 


- [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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.

</details>


<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-16 21:53:58 +00:00
Matan Lurey
cbe269808b Enable duplicate linux_host_engine_test. (#161613)
Towards https://github.com/flutter/flutter/issues/161406.

* Enables (on presubmit), and adds a missing GN target.
* Removes tests from the `linux_host_engine` build.
2025-01-16 21:52:18 +00:00
Mitchell Goodwin
3f2b7d900e Do not block vertical drag gestures in CupertinoSheetRoute body (#161696)
Fixes #161623.

Changes how the VerticalGestureRecognizer watches the sheet body. Before
it stacked over the sheet and won all gesture arenas with vertical
drags, so it didn't allow scrolling in the sheet. Now it has the sheet
content as its child, so it will defer to child vertical gestures. This
PR will allow scrolling to work in the sheet, but further work needs to
be done to improve scrolling and drag to dismiss working together, see
#161687.



https://github.com/user-attachments/assets/71bee654-2d0d-499d-9d27-403188138fb5



## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-16 21:52:15 +00:00
Jonah Williams
90f926edc1 [Impeller] Update partial repaint to use a fullsize onscreen. (#161626)
The existing technique of offsetting a smaller texture is very vunerable
to bugs in the renderer. Rather than this approach, we can allocate a
new offscreen that is full sized and then blit a smaller region. To
reduce the allocation costs, we can also set up a transients cache which
will reuse this texture. In total, this should be more performant than
the existing partial repaint (due to lack of continual re-allocation) at
the cost of higher peak memory usage.

Fixes https://github.com/flutter/flutter/issues/140877
Fixes https://github.com/flutter/flutter/issues/160588
Fixes https://github.com/flutter/flutter/issues/156113
2025-01-16 19:29:36 +00:00
Enguerrand ARMINJON
5517cc9b3b feat: Change default value of keyboardDismissBehavior (#158580)
This PR aim to let developer choose the default
ScrollViewKeyboardDismissBehavior value.

I removed all default values of keyboardDismissBehavior and instead use
the one from `ScrollConfiguration`, which use as default value
`ScrollViewKeyboardDismissBehavior.manual`.

This PR try to fix : https://github.com/flutter/flutter/issues/158566

<details/> 

<summary> Code Example </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(
      title: 'Flutter Demo',
      scrollBehavior: const MaterialScrollBehavior().copyWith(
        keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag,
      ),
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(),
    );
  }
}

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

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: TextField(),
      ),
      body: ListView.builder(
        itemCount: 100,
        itemBuilder: (context, index) => ListTile(title: Text('Item $index')),
      ),
    );
  }
}
```

</details>


https://github.com/user-attachments/assets/8341c3da-2685-4f55-b8e9-11d2aae907db



## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Kate Lovett <katelovett@google.com>
2025-01-15 21:17:29 +00:00
flutter-pub-roller-bot
36eb78b1b4 Roll pub packages (#161680)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-01-15 21:11:26 +00:00
jacobsimionato
010c8a806b Revert "Autocomplete Options Width" (#161666)
Reverts flutter/flutter#143249

This broke some Google tests sadly - see b/390128156
2025-01-15 19:31:59 +00:00
stuartmorgan
fd2b5637b5 Update two_dimensional_scrollables triage routing (#161667)
`two_dimensional_scrollables` is primarily owned by the framework team
rather than the ecosystem team.
2025-01-15 19:14:33 +00:00
Jim Graham
a10e25e727 [DisplayList] Migrate from SkRSXform to Impeller RSTransform (#161652)
Fixes SkRSXform task in https://github.com/flutter/flutter/issues/161456

Removes (nearly) all uses of Skia SkRSXform object from DisplayList and
replaces it with a new Impeller RSTransform geometry object.

There are remaining uses in:
- Skia adapter code which needs to convert them back to SkRSXform when
using the Skia backend
- dl_rendering_tests which is waiting for a major conversion effort
- ?Fuchsia? code has an SkCanvas spy adapter used in its embedder code
(not DisplayList related)
- web_ui/skwasm
2025-01-15 19:08:38 +00:00
engine-flutter-autoroll
1580a3d3fb Roll Packages from d1fd6232ec33 to f73cb00e127b (2 revisions) (#161672)
d1fd6232ec...f73cb00e12

2025-01-14 engine-flutter-autoroll@skia.org Roll Flutter from
72db8f69e3 to 40c2b86fdf (33 revisions) (flutter/packages#8428)
2025-01-14 nate.w5687@gmail.com [two_dimensional_scrollables] prepare
for `const AnimationStyle` (flutter/packages#8397)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-01-15 16:31:11 +00:00
Bruno Leroux
44ff2f5977 Fix DropdownMenu isCollapsed decoration does not Reduce height (#161427)
## Description

This PR fixes DropdownMenu arrow icon position when
`InputDecoration.isCollapsed` is set to true and
`InputDecoration.suffixConstraints` is set to a smaller value than the
min interactive height.

It makes it possible to use collapsed `DropdownMenu` such as:


![image](https://github.com/user-attachments/assets/145c2a0b-a638-4226-ae29-0e21bb9d4bb0)

_____

Before this PR and https://github.com/flutter/flutter/pull/153089,
`InputDecoration.isCollapsed` had no impact on the `DropdownMenu` height
and there was no solution to reduce the height because its minimum
height is enforced by the `IconButton` (arrow down or up) which is part
of the `DropdownMenu`.

Since https://github.com/flutter/flutter/pull/153089, the height can be
reduce with `InputDecoration.suffixIconConstraints` but it results in
the icon being misaligned:


![image](https://github.com/user-attachments/assets/2a4d99bc-c26d-454b-8e62-dd8828789ae5)


After this PR:

When `InputDecoration.suffixIconConstraints` is used the icon is
correctly aligned:


![image](https://github.com/user-attachments/assets/145c2a0b-a638-4226-ae29-0e21bb9d4bb0)


<details><summary>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(
      title: 'Flutter Demo',
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

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

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return const Scaffold(
      body: Center(
        child: Center(
          child: DropdownMenu<String>(
            dropdownMenuEntries: [
              DropdownMenuEntry(label: 'Item 1', value: '1'),
              DropdownMenuEntry(label: 'Item 2', value: '2'),
            ],
            inputDecorationTheme: InputDecorationTheme(
              contentPadding: EdgeInsets.fromLTRB(5, 0, 5, 0),
              isCollapsed: true,
              // Usable since https://github.com/flutter/flutter/pull/153089.
              suffixIconConstraints: BoxConstraints(minHeight: 24, maxHeight: 24),
              filled: true,
            ),
          ),
        ),
      ),
    );
  }
}

``` 

</details> 

## Related Issue

Fixes [DropdownMenu inputDecoration isCollapsed property does not reduce
vertical spacing](https://github.com/flutter/flutter/issues/138691)

## Tests

Adds 2 tests.
2025-01-15 15:30:51 +00:00
Jason Simmons
1e79b65ea1 Manual roll of Skia to e7b8d078851f (#161609)
The Skia->engine roller was disabled for a few weeks during the
migration to the monorepo.
2025-01-15 15:14:23 +00:00
Taha Tesser
2b34d78c23 Fix TabBar glitchy elastic Tab animation (#161514)
Fixes [M3 TabBar indicator animation broken both when swiping or
tapping](https://github.com/flutter/flutter/issues/160631)

### Description

This refactors the elastic `Tab` animation. Added additional tests that
follows the elastic animation frame by frame and generates a golden
file.

### Code Sample

<details>
<summary>expand to view the code sample</summary> 

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

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

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

  @override
  Widget build(BuildContext context) {
    // timeDilation = 10;
    return MaterialApp(
      home: ScrollConfiguration(
        behavior: ScrollConfiguration.of(context).copyWith(dragDevices: <PointerDeviceKind>{
          PointerDeviceKind.touch,
          PointerDeviceKind.mouse,
        }),
        child: Directionality(
          textDirection: TextDirection.ltr,
          child: DefaultTabController(
            length: 8,
            child: Scaffold(
              appBar: AppBar(
                bottom: const TabBar(
                  isScrollable: true,
                  tabAlignment: TabAlignment.start,
                  tabs: <Widget>[
                    Tab(text: 'Home'),
                    Tab(text: 'Search'),
                    Tab(text: 'Add'),
                    Tab(text: 'Favorite'),
                    Tab(text: 'The longest text...'),
                    Tab(text: 'Short'),
                    Tab(text: 'Longer text...'),
                    Tab(text: 'Profile'),
                  ],
                ),
              ),
              body: const TabBarView(
                children: <Widget>[
                  Center(child: Text('Page')),
                  Center(child: Text('Page')),
                  Center(child: Text('Page')),
                  Center(child: Text('Page')),
                  Center(child: Text('Page')),
                  Center(child: Text('Page')),
                  Center(child: Text('Page')),
                  Center(child: Text('Page')),
                ],
              ),
            ),
          ),
        ),
      ),
    );
  }
}

```

</details>

### Before (`timeDilation = 10`)


https://github.com/user-attachments/assets/4f69f94b-0bcf-4813-b49f-06ff411435ca


### After (`timeDilation = 10`)


https://github.com/user-attachments/assets/65801c1c-d28f-4b42-870a-7140d5d3c4c3

| Before Test Results | After Test Results |
| --------------- | --------------- |
| <img
src="https://github.com/user-attachments/assets/72ae9fbe-fef9-44a0-9b86-5a4c31fd39cf"
/> | <img
src="https://github.com/user-attachments/assets/2545f35e-ac03-495d-a33b-72b9bc71299b"
/> |

## 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].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-15 11:23:41 +00:00
flutter-pub-roller-bot
14d4abbd66 Roll pub packages (#161643)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-01-15 06:31:28 +00:00
Matan Lurey
fd1c02d301 Exclude the top-level engine directory from generate_gradle_lockfiles. (#161635)
For local development workflows, this would find directories we don't
want included in the script.

Added a simple test.
2025-01-15 03:00:59 +00:00
flutter-pub-roller-bot
97acba4df8 Roll pub packages (#161632)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-01-15 01:17:04 +00:00
Matan Lurey
e517ae3457 Refactor android_engine_test, make it easier to debug/deflake locally. (#161534)
The goal here is to have a great standalone `android_engine_test` suite
that [replaces
`scenario_app/android`](https://github.com/flutter/flutter/pull/160992).

No test is _functionally_ changed in this PR, but overview of changes:
- Finished renaming the suite `android_engine_tests` instead of
`flutter_driver_android`
- Added instructions and an environment variable for local generation of
golden-files (`UPDATE_GOLDENS=1`)
- Added explanations of the individual tests, where they live, and how
to run them locally
- Added a hybrid-composition (HC, not TLHC, which is already tested)
test
- Renamed "other_smiley" to "surface_texture_smiley" (and renamed the
original to "surface_producer_smiley")
- Removed unnecessary ".android" suffix (we will not run this on
anything but Android)
- Added a `tool/deflake.dart` to run a test suite 10x (or custom) times
locally to try and determine flakiness

After this PR, I'll add flags to let you control variants and name the
screenshots accordingly, i.e.:
- API v34 or v35
- OpenGLES or Vulkan (will require an `AndroidManifest.xml` edit during
the test instrumentation)
2025-01-15 01:05:31 +00:00
Jonah Williams
b515f829af [Impeller] null check device buffer in image encoding. (#161194)
Fixes https://github.com/flutter/flutter/issues/160652
2025-01-15 00:34:53 +00:00
NabilaWorks
e0d7b588b6 Feature/twitter keyboard (#161025)
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

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

Example :

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

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Centered TextField Example',
      theme: ThemeData(primarySwatch: Colors.blue),
      home: CenteredTextFieldScreen(),
    );
  }
}

class CenteredTextFieldScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('Centered TextField')),
      body: Center(
        child: Padding(
          padding: const EdgeInsets.all(16.0),
          child: TextField(
            keyboardType: TextInputType.twitter,
            decoration: InputDecoration(
              border: OutlineInputBorder(),
              hintText: 'Enter some text here',
            ),
          ),
        ),
      ),
    );
  }
}
```


https://github.com/user-attachments/assets/5a2a2a4a-6994-44b1-bb0e-395c24012ef8


https://github.com/user-attachments/assets/aefc7bc5-a997-4e0f-a74e-a39a4517c898

## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] 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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Jenn Magder <magder@google.com>
2025-01-15 00:15:15 +00:00
jesswrd
d8322207df Fixed XiaoMi statusBar Bug (#161271)
Updated usages of statusBar() to systemBar() to fix XiaoMi statusBar
bug.

Fixes #132831 

## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-15 00:12:58 +00:00
Michael Goderbauer
a328b36f39 Clean up engine's analysis_options.yaml (#161554)
Now that we have a monorepo we can vastly simplify the engine's
`analysis_options.yaml` file: It can just import the general rule set
(instead of recreating it) and then we can apply the engine-specific
rules on top of it. This also makes it easier to tell where the engine
rule set differs from the general one.

No more `# DIFFERENT FROM FLUTTER/FLUTTER` comments. 🥳 

Depends on https://github.com/flutter/flutter/pull/161560, which has to
be submitted first.
2025-01-15 00:08:24 +00:00
Gray Mackall
b3189905ab Remove gradle_deprecated_settings test app, and remove reference from lockfile exclusion yaml (#161622)
The test was intentionally broken by
https://github.com/flutter/flutter/pull/160947/. That PR removed the CI
configuration to run the test, but the autoroller (which was previously
turned off) runs a gradle command in all android subdirectories, so the
fact that the directory wasn't deleted is blocking turning the
autoroller back on:


https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8725731612391969937/+/u/run_roll-packages_script/stdout

```
[stderr] * What went wrong:
[stderr] A problem occurred evaluating script.
[stderr] > You are applying Flutter's main Gradle plugin imperatively using the apply script method, which is not possible anymore. Migrate to applying Gradle plugins with the declarative plugins block: https://flutter.dev/to/flutter-gradle-plugin-apply
```

## 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].
- [ ] 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] 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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

Co-authored-by: Gray Mackall <mackall@google.com>
2025-01-14 22:54:07 +00:00
Devon Carew
b53181a01d [deps] remove no-longer-used repo deps (#161605)
Remove older repo references; remove older references to `yaml_edit`,
`yaml`, `watcher`, `term_glyph`, `string_scanner`, `stream_channel`,
`stack_trace`, and `watcher`.

Done as part of https://github.com/dart-lang/sdk/issues/56591.

## 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 `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 21:50:11 +00:00
Jim Graham
bce2e22231 [DisplayList] remove obsolete use of Skia goemetry objects in DL utils (#161553)
Accomplishes the `AccumulationRect and MatrixClipTracker` task in
https://github.com/flutter/flutter/issues/161456

Remove legacy Skia geometry APIs from the DisplayList utils classes
(accumulation rect and matrix/clip state tracker) as well as the small
number of remaining uses of them (mostly from their own unit tests).
2025-01-14 21:25:42 +00:00
Tong Mu
1b7cd83b57 [Engine] Support asymmetrical rounded superellipses (#161409)
This PR allows rounded superellipses to have asymmetrical and uneven
radii, effectively supporting `BorderRadius` instead of mere `double` as
corner radius. Fixes https://github.com/flutter/flutter/issues/161207.


https://github.com/user-attachments/assets/6293028c-d14b-4ffb-b93e-d0602f5ca0ee

These features exist in SwiftUI: The `RoundedRectangle` class provides
an initializer with a `cornerSize` parameter, allowing different radii
for the horizontal and vertical directions, while the
`UnevenRoundedRectangle` class allows each corner to have a unique
radius. However, SwiftUI does not allow the corners to be asymmetrical
_and_ uneven at the same time, which is supported by this PR.

Additionally, this change allows rounded superellipses to use the same
API as rounded rectangles. This allows RSEs to be added as a style of
`RRect` (just like in SwiftUI), which will use much fewer changes than
adding it as a new shape (>1500 LOC according to my prototype).

This PR also improves performance by removing an intermediate cache for
flipping. Now the point list is only copied once for the triangle strip
rearrangement.

`RoundingRadii` is moved to a separate file, and the code to scale it
based on bounds now its method.

## 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].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] 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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 21:15:13 +00:00
Loïc Sharma
fa04f4a8d2 [SwiftPM] Make 'flutter build ios-framework' generate an empty Package.swift (#161464)
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

### Background

Flutter generates a `Package.swift` file that contains the plugins that
should be built using SwiftPM.

Since Flutter does not support Swift Package Manager in add-to-app
scenarios yet, Flutter uses CocoaPods to build plugins if you call
`flutter build ios-framework`. To ensure `pod install` is rerun, the
tool deleted the `Package.swift` file.

Unfortunately, deleting the `Package.swift` file causes the Xcode
project to no longer build if it has SwiftPM integration. This caused
the [`build_ios_framework_module_test` to fail when SwiftPM was turned
on by
default](https://ci.chromium.org/ui/p/flutter/builders/prod/Mac%20build_ios_framework_module_test/21807/overview).

### Fix

Instead of deleting the `Package.swift` file, we instead generate a
`Package.swift` file with no dependencies. This will invalidate the
fingerprint and cause `pod install` to rerun if the app had plugins that
were previously built using SwiftPM.

## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 21:13:15 +00:00
Harry Terkelsen
e5b1ab040e [canvaskit] Fix GIF decode failure (#161536)
Fixes an error when decoding GIFs to check if they are animated. The
decoder needs to be more resilient in the face of Special Purpose blocks
that are in the stream in places not specified in the GIF89a spec.

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

## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 21:07:19 +00:00
Jonah Williams
80942d520d [Impeller] fixes for AHB swapchains. (#161562)
Fixes for a variety of speculative fixes for AHB swapchain issues.
Details TBD while some tests run...


1. Even If the SurfaceControl API is supported, there is no guarantee
that we can import the AHB as there may be a mismatch in the required
memory properties and what is available. Add a validity check to the
texture pool and bail from the swapchain if any are invalid.

2. Rather than submitting a dummy cmd buffer that does a layout
transition, use the final command buffer signal semaphore.

3. Import the render ready semaphore and use it to block the onscreen
command buffer.
2025-01-14 20:58:07 +00:00
Michael Goderbauer
3da003c45e Last Engine<>Framework lint sync (#161560)
This is the last time we have to do this because in
https://github.com/flutter/flutter/pull/161554 I am refactoring the
engine's analysis_options.yaml to just import the one from the root of
the repository. When that lands, lints only have to be enabled in one
place to apply across framework and engine.

Before we can do that we have to do one last sync to make sure the
engine code base is ready. This PR implements that last sync and fixing
all lints that came up.
2025-01-14 20:51:42 +00:00
Michael Goderbauer
19a212b5ac Check that localization files of stocks app are up-to-date (#161608)
Fixes https://github.com/flutter/flutter/issues/160473
2025-01-14 20:47:08 +00:00
Camille Simon
818133b8b0 [Android] Actually remove dev dependencies from release builds (#161343)
Revises https://github.com/flutter/flutter/pull/158026 to fix
https://github.com/flutter/flutter/issues/160407.

Makes a number of fixes:

- Fixes Groovy logic that attempted to remove dev dependencies from
release builds to use `<buildType>Api` versus `api` and loop to
configure the project dependencies per build type
- Adds back dependency on embedding to plugin projects since this is
needed regardless (the plugin may not be included in a particularly
typed build but it still needs it for where it's included)
- Fixes integration test to throw and error upon failure, check right
APK for the release build it's testing, and configure the flag need for
`.flutter-plugin-dependencies` to mark plugins as dev dependencies as
expected
- Uses @matanlurey's
[patch](https://github.com/flutter/flutter/issues/160407#issuecomment-2547546038)
to remove dev dependency from the `GeneratedPluginRegistrant` in release
mode

## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 19:36:52 +00:00
Ben Konyi
0369b35640 Update package revisions to latest (#161525) 2025-01-14 18:22:42 +00:00
Christopher Fujino
40c2b86fdf update changelog for 3.27.2 release (#161569) 2025-01-14 17:59:50 +00:00
Taha Tesser
8815d0a536 Fix showLicensePage does not inherit ambient Theme (#161599)
Fixes [License page colors cannot be changed when wrapped with `Theme`
widget](https://github.com/flutter/flutter/issues/44922)

### 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(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Sample'),
        ),
        body: Center(
          child: Theme(
            data: ThemeData(colorScheme: ColorScheme.fromSeed(seedColor: Colors.green)),
            child: Column(
              spacing: 20,
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                const AboutListTile(
                  icon: Icon(Icons.info_rounded),
                  applicationIcon: Icon(Icons.info_outline), // Icon for the about dialog
                  applicationName: 'Sample Flutter App', // Name of the app
                  applicationVersion: 'v1.0.0', // Version of the app
                  applicationLegalese: '© 2025 Taha Tesser', // Legal information
                  aboutBoxChildren: <Widget>[
                    Padding(
                      padding: EdgeInsets.only(top: 10),
                      child: Text(
                        'This app is a demonstration of the AboutListTile widget in Flutter.',
                      ),
                    ),
                    Padding(
                      padding: EdgeInsets.only(top: 10),
                      child: Text(
                        'Thank you for using our app!',
                      ),
                    ),
                  ], // Icon for the leading section
                  child: Text('AboutListTile'),
                ),
                Builder(builder: (BuildContext context) {
                  return ElevatedButton(
                      onPressed: () {
                        showAboutDialog(
                          context: context,
                          applicationName: 'Sample Flutter App', // Name of the app
                          applicationVersion: 'v1.0.0', // Version of the app
                          applicationLegalese: '© 2025 Taha Tesser', // Legal information
                          children: <Widget>[
                            const Padding(
                              padding: EdgeInsets.only(top: 10),
                              child: Text(
                                'This app is a demonstration of the AboutListTile widget in Flutter.',
                              ),
                            ),
                            const Padding(
                              padding: EdgeInsets.only(top: 10),
                              child: Text(
                                'Thank you for using our app!',
                              ),
                            ),
                          ],
                        );
                      },
                      child: const Text('showAboutDialog'));
                })
              ],
            ),
          ),
        ),
      ),
    );
  }
}
```

</details>

### Before


https://github.com/user-attachments/assets/a76d19b6-a949-42a1-a349-426ad3058bc6

### After


https://github.com/user-attachments/assets/afb8b519-860e-467f-89bd-6e0a1b7be45c

## 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].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 17:01:54 +00:00
gaaclarke
e683e1031c Added special case for fat width arcs (#161255)
fixes https://github.com/flutter/flutter/issues/158567

This draws arcs as oval sectors when the stroke width is large enough.

## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 16:55:30 +00:00
Matan Lurey
836fd6e567 Replace fetch with gclient sync. (#161565)
Just continue to remove outdated instructions.
2025-01-14 16:55:08 +00:00
engine-flutter-autoroll
ed9f920662 Roll Packages from 3c3bc6832b39 to d1fd6232ec33 (4 revisions) (#161597)
3c3bc6832b...d1fd6232ec

2025-01-13 olli.helenius@codemate.com [camera] Add API support query for
image streaming (flutter/packages#8250)
2025-01-13 westracer1@gmail.com [webview_flutter_android] Add additional
WebSettings methods (flutter/packages#8270)
2025-01-13 engine-flutter-autoroll@skia.org Roll Flutter from
864d4f59dd to 72db8f69e3 (11 revisions) (flutter/packages#8421)
2025-01-13 30872003+misos1@users.noreply.github.com
[video_player_avfoundation, camera_avfoundation] never overwrite but
only upgrade audio session category (flutter/packages#7143)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-01-14 16:13:19 +00:00
Robert Ancell
c9923ca609 Remove unused method (#161572) 2025-01-14 14:35:36 +00:00
Harlen Batagelo
f2c15f9deb Fix crash when closing a window with Alt+F4 in multi-win Flutter on Windows (#161375)
Reopened from https://github.com/flutter/engine/pull/56501.

Fixes [#158450](https://github.com/flutter/flutter/issues/158450).

As mentioned in
[#158450](https://github.com/flutter/flutter/issues/158450), the crash
occurs because a destroyed object may be accessed if the window and view
have already been destroyed by the time `KeyEventCallback` is called.
This issue is not limited to the `Alt+F4` system key; it may also occur
if the window is closed using other key presses, such as pressing
`Enter` after navigating to a dialog's "Close" button.

This PR proposes a fix that checks whether the view ID is still valid
when the callback is invoked. If the view is invalid, the event is
skipped for that view.

A unit test has been added to assert that the `KeyEventCallback` is
invoked when the associated view is valid and not invoked when the view
is destroyed.

## 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] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 13:32:36 +00:00
Bruno Leroux
e23c31265d Update InputDecoration.border documentation (#161415)
## Description

This PR clarifies the InputDecoration.border documentation and fixes two
typos.

## Related Issue

Fixes [[Material] Outline TextFields don't respect
OutlineInputBorder.color](https://github.com/flutter/flutter/issues/31169)

## Tests

Documentation only
2025-01-14 07:39:39 +00:00
Tong Mu
c16b9c52e4 [Web] Allow specifying the strategy on when to use <img> element to display images (#159917)
This PR follows the discussion under
https://github.com/flutter/flutter/pull/157755 and adds a flag to
determine when `<img>` elements are used. By default the feature is
turned off.

Instead of just a boolean for on & off, I made it an enum to accept
multiple options. Notably, an `always` option can be useful when the
developer wants a unified experience regardless of the image origin
(such as when displaying an image from arbitrary URLs.)

## 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].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] 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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-01-14 06:16:18 +00:00
Siva
3f981117eb Roll Dart to Version 3.7.0-323.0.dev (#161567)
https://dart.googlesource.com/sdk.git/+log/dbe08d993b3fe700ed716fa068742e8fb80b0a0a..f6ed8d7df6bfdf6fb08b38dd93c2ee1eba476b5a


[f6ed8d7](https://dart.googlesource.com/sdk.git/+/f6ed8d7df6bfdf6fb08b38dd93c2ee1eba476b5a)
[Version
3.7.0-323.0.dev](https://dart.googlesource.com/sdk.git/+/f6ed8d7df6bfdf6fb08b38dd93c2ee1eba476b5a)
by Dart CI · 12 hours ago
[dev](https://dart.googlesource.com/sdk.git/+/refs/heads/dev)
[3.7.0-323.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-323.0.dev)

[8063ed1](https://dart.googlesource.com/sdk.git/+/8063ed194b781f4c44fe7c714b54f49654470ea4)
[[CFE] Spell checker
improvements](https://dart.googlesource.com/sdk.git/+/8063ed194b781f4c44fe7c714b54f49654470ea4)
by Jens Johansen · 14 hours ago

[86ff64c](https://dart.googlesource.com/sdk.git/+/86ff64c97d40bdcf5b5dfc114c8ed56540aa341e)
[[CFE] Fix weekly but needing
dart2js_platform_unsound.dill](https://dart.googlesource.com/sdk.git/+/86ff64c97d40bdcf5b5dfc114c8ed56540aa341e)
by Jens Johansen · 14 hours ago

[11a4a94](https://dart.googlesource.com/sdk.git/+/11a4a94b950db8d409c7c6eb7c571282c99ac0ce)
[[infra-ish] Fix compile_flutter.sh after flutter engine was merged into
flutter/flutter](https://dart.googlesource.com/sdk.git/+/11a4a94b950db8d409c7c6eb7c571282c99ac0ce)
by Jens Johansen · 15 hours ago

[c075d93](https://dart.googlesource.com/sdk.git/+/c075d939e095307c26986c599f2ecbf6748a0d4e)
[[parser/scanner] Remove ScannerConfig
`enableNonNullable`](https://dart.googlesource.com/sdk.git/+/c075d939e095307c26986c599f2ecbf6748a0d4e)
by Jens Johansen · 16 hours ago

[5dfce91](https://dart.googlesource.com/sdk.git/+/5dfce919cd04bae29ab2c002f1a38a8916ec031f)
[[parser/scanner] Remove ScannerConfig
`enableExtensionMethods`](https://dart.googlesource.com/sdk.git/+/5dfce919cd04bae29ab2c002f1a38a8916ec031f)
by Jens Johansen · 16 hours ago

[1482910](https://dart.googlesource.com/sdk.git/+/1482910747ad63ec1207d30b0d9127419f9b9f08)
[Version
3.7.0-322.0.dev](https://dart.googlesource.com/sdk.git/+/1482910747ad63ec1207d30b0d9127419f9b9f08)
by Dart CI · 28 hours ago
[3.7.0-322.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-322.0.dev)

[7d8c34c](https://dart.googlesource.com/sdk.git/+/7d8c34c42532eb2b6fc3dbda221fb5cb2063b95b)
[[analyzer] Refine type of
`InterfaceTypeImpl.element`](https://dart.googlesource.com/sdk.git/+/7d8c34c42532eb2b6fc3dbda221fb5cb2063b95b)
by Paul Berry · 32 hours ago

[2229972](https://dart.googlesource.com/sdk.git/+/2229972ec5d89c1d5abba1f369d7d6e1ba8cc98c)
[Version
3.7.0-321.0.dev](https://dart.googlesource.com/sdk.git/+/2229972ec5d89c1d5abba1f369d7d6e1ba8cc98c)
by Dart CI · 2 days ago
[3.7.0-321.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-321.0.dev)

[bdf8c21](https://dart.googlesource.com/sdk.git/+/bdf8c213fe7a53987046dc2fa1d675e3b24ca9d8)
[[analyzer] Use Impl types in
TypeProviderImpl.](https://dart.googlesource.com/sdk.git/+/bdf8c213fe7a53987046dc2fa1d675e3b24ca9d8)
by Paul Berry · 2 days ago

[adcc212](https://dart.googlesource.com/sdk.git/+/adcc21238329cb5fc70b0601b4784f05d2bc314a)
[[analyzer] Changes related to
ExecutableElementImpl._parameters.](https://dart.googlesource.com/sdk.git/+/adcc21238329cb5fc70b0601b4784f05d2bc314a)
by Paul Berry · 2 days ago

[f585c17](https://dart.googlesource.com/sdk.git/+/f585c1743efe450b89d4a69cd53fa427c72e1fdd)
[Version
3.7.0-320.0.dev](https://dart.googlesource.com/sdk.git/+/f585c1743efe450b89d4a69cd53fa427c72e1fdd)
by Dart CI · 3 days ago
[3.7.0-320.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-320.0.dev)

[082be8f](https://dart.googlesource.com/sdk.git/+/082be8f4eaf445167d15a95bdde611a9eabde1fa)
[Version
3.7.0-319.0.dev](https://dart.googlesource.com/sdk.git/+/082be8f4eaf445167d15a95bdde611a9eabde1fa)
by Dart CI · 3 days ago
[3.7.0-319.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-319.0.dev)

[8bbe6fb](https://dart.googlesource.com/sdk.git/+/8bbe6fbdfe03e31ac6773114140cd9565d88052a)
[Elements. Report analyzer_use_new_elements without any txt file, add
file
ignores.](https://dart.googlesource.com/sdk.git/+/8bbe6fbdfe03e31ac6773114140cd9565d88052a)
by Konstantin Shcheglov · 3 days ago

[dc37a77](https://dart.googlesource.com/sdk.git/+/dc37a77cf7f0f92dca6b6b595aa66a930935131b)
[[ddc] Add rejection for removed const
fields](https://dart.googlesource.com/sdk.git/+/dc37a77cf7f0f92dca6b6b595aa66a930935131b)
by Nicholas Shahan · 3 days ago

[9a47293](https://dart.googlesource.com/sdk.git/+/9a472930e5100baf0efb2d33369b7fd473b92951)
[[_fe_analyzer_shared] Renames to prepare for analyzer
refactoring.](https://dart.googlesource.com/sdk.git/+/9a472930e5100baf0efb2d33369b7fd473b92951)
by Paul Berry · 3 days ago

[357a919](https://dart.googlesource.com/sdk.git/+/357a91908bbf0f71c147ea387339380c26ca8950)
[Version
3.7.0-318.0.dev](https://dart.googlesource.com/sdk.git/+/357a91908bbf0f71c147ea387339380c26ca8950)
by Dart CI · 3 days ago
[3.7.0-318.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-318.0.dev)

[11d24d6](https://dart.googlesource.com/sdk.git/+/11d24d6d55a71656be6874218809e7007aeac589)
[Elements. TypeParameterElementImpl2.name3 is
nullable.](https://dart.googlesource.com/sdk.git/+/11d24d6d55a71656be6874218809e7007aeac589)
by Konstantin Shcheglov · 3 days ago

[f91050c](https://dart.googlesource.com/sdk.git/+/f91050ca91a9f07263b1db78706258e88d967054)
[[ddc] Add visitor for hot reload
deltas](https://dart.googlesource.com/sdk.git/+/f91050ca91a9f07263b1db78706258e88d967054)
by Nicholas Shahan · 3 days ago

[ef771d4](https://dart.googlesource.com/sdk.git/+/ef771d49537c79fccb1364ecbeca35f58116f30a)
[[tests] Enum shorthands - Import
prefixes.](https://dart.googlesource.com/sdk.git/+/ef771d49537c79fccb1364ecbeca35f58116f30a)
by Kallen Tu · 3 days ago

[912ffda](https://dart.googlesource.com/sdk.git/+/912ffda5ec8fb44472b76a353ca43f150cd36bbc)
[Version
3.7.0-317.0.dev](https://dart.googlesource.com/sdk.git/+/912ffda5ec8fb44472b76a353ca43f150cd36bbc)
by Dart CI · 3 days ago
[3.7.0-317.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-317.0.dev)

[0577ca0](https://dart.googlesource.com/sdk.git/+/0577ca064d9f782bd44918645cf93487e63990a2)
[[Migrate]
error_reporter_test.dart](https://dart.googlesource.com/sdk.git/+/0577ca064d9f782bd44918645cf93487e63990a2)
by Brian Wilkerson · 3 days ago

[04ab58b](https://dart.googlesource.com/sdk.git/+/04ab58b31902c83d4858e7f70000992ac7dbd518)
[Version
3.7.0-316.0.dev](https://dart.googlesource.com/sdk.git/+/04ab58b31902c83d4858e7f70000992ac7dbd518)
by Dart CI · 4 days ago
[3.7.0-316.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-316.0.dev)

[5862859](https://dart.googlesource.com/sdk.git/+/5862859ad86dccc4166416d4b98f133a7d28c9e4)
[[co19] Roll co19 to
2424cfed7eedf53a122f8bfdbb6319692f726ec8](https://dart.googlesource.com/sdk.git/+/5862859ad86dccc4166416d4b98f133a7d28c9e4)
by Sergey G. Grekhov · 4 days ago

[d704828](https://dart.googlesource.com/sdk.git/+/d704828c3461ad408c47800588fb802136f66bc7)
[[dart2wasm] Use Uint8List for representing
bytes](https://dart.googlesource.com/sdk.git/+/d704828c3461ad408c47800588fb802136f66bc7)
by Martin Kustermann · 4 days ago

[5d3d965](https://dart.googlesource.com/sdk.git/+/5d3d965cd357eb89c1f979a683147ff64eff70f4)
[[dart2wasm] Use Function.prototype.call.bind(Number.prototype.toString)
for small ints and
doubles](https://dart.googlesource.com/sdk.git/+/5d3d965cd357eb89c1f979a683147ff64eff70f4)
by Martin Kustermann · 4 days ago

[4bcd8c2](https://dart.googlesource.com/sdk.git/+/4bcd8c2b8ce56756dbe7dd762af7f9322a777402)
[[vm/compiler] Prune SSA during construction using
liveness](https://dart.googlesource.com/sdk.git/+/4bcd8c2b8ce56756dbe7dd762af7f9322a777402)
by Vyacheslav Egorov · 4 days ago

[c95568a](https://dart.googlesource.com/sdk.git/+/c95568aede3f26fda36b58b081ec697a74960815)
[[CFE] Fuzzer using
Dart.G](https://dart.googlesource.com/sdk.git/+/c95568aede3f26fda36b58b081ec697a74960815)
by Jens Johansen · 4 days ago

[b022eca](https://dart.googlesource.com/sdk.git/+/b022ecae7070d5e345f55f730799cd229868a85a)
[[CFE] Fix crash in
_computeOnClause](https://dart.googlesource.com/sdk.git/+/b022ecae7070d5e345f55f730799cd229868a85a)
by Jens Johansen · 4 days ago

[feb770f](https://dart.googlesource.com/sdk.git/+/feb770fdf16f87ea920c633e194b65d0db284729)
[Version
3.7.0-315.0.dev](https://dart.googlesource.com/sdk.git/+/feb770fdf16f87ea920c633e194b65d0db284729)
by Dart CI · 4 days ago
[3.7.0-315.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-315.0.dev)

[0c103f1](https://dart.googlesource.com/sdk.git/+/0c103f10398d6b0980a24d5a1a2cf8046f81fe21)
[Elements. Use TypeParameterElementImpl in
TypeParameterizedElementMixin.](https://dart.googlesource.com/sdk.git/+/0c103f10398d6b0980a24d5a1a2cf8046f81fe21)
by Konstantin Shcheglov · 4 days ago

[05e5306](https://dart.googlesource.com/sdk.git/+/05e53068f9e0b9056e47d10066cf11bf499afac8)
[Version
3.7.0-314.0.dev](https://dart.googlesource.com/sdk.git/+/05e53068f9e0b9056e47d10066cf11bf499afac8)
by Dart CI · 4 days ago
[3.7.0-314.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-314.0.dev)

[92ef752](https://dart.googlesource.com/sdk.git/+/92ef75281059f0f837fa27be9d721c6410243002)
[[dynamic-modules] Add pragma annotating implicitly extendable
types.](https://dart.googlesource.com/sdk.git/+/92ef75281059f0f837fa27be9d721c6410243002)
by Nate Biggs · 4 days ago

[2de8b5e](https://dart.googlesource.com/sdk.git/+/2de8b5efb0f8da71cc8add9a9cbd246817eb8f7e)
[Elements. Migrate
lib/src/utilities/navigation/navigation_dart.dart](https://dart.googlesource.com/sdk.git/+/2de8b5efb0f8da71cc8add9a9cbd246817eb8f7e)
by Konstantin Shcheglov · 4 days ago

[4be4ec7](https://dart.googlesource.com/sdk.git/+/4be4ec7d364984b658d99cc308e00d57d5660df3)
[Elements. Migrate
AnalyzerConverter.](https://dart.googlesource.com/sdk.git/+/4be4ec7d364984b658d99cc308e00d57d5660df3)
by Konstantin Shcheglov · 4 days ago

[5f24674](https://dart.googlesource.com/sdk.git/+/5f24674138b78a744250b518257e3d9940b6c416)
[[element model] migrate
`elements_base`](https://dart.googlesource.com/sdk.git/+/5f24674138b78a744250b518257e3d9940b6c416)
by pq · 4 days ago

[e4ce6e2](https://dart.googlesource.com/sdk.git/+/e4ce6e28d5d4fb886bd32fafc717e178e2685134)
[Drop pkg:js from "Web (Legacy)" docs
section](https://dart.googlesource.com/sdk.git/+/e4ce6e28d5d4fb886bd32fafc717e178e2685134)
by Kevin Moore · 4 days ago

[75882f9](https://dart.googlesource.com/sdk.git/+/75882f9bf73337aaef2fd73bc44a38332e6aa9b7)
[Elements. Migrate
CompletionTarget.](https://dart.googlesource.com/sdk.git/+/75882f9bf73337aaef2fd73bc44a38332e6aa9b7)
by Konstantin Shcheglov · 4 days ago

[26d9167](https://dart.googlesource.com/sdk.git/+/26d91675f92fb9116d3351660978e4d9b7fedb98)
[Elements. Migrate ElementSuggestionBuilder and
related.](https://dart.googlesource.com/sdk.git/+/26d91675f92fb9116d3351660978e4d9b7fedb98)
by Konstantin Shcheglov · 4 days ago

[7d5f0a6](https://dart.googlesource.com/sdk.git/+/7d5f0a650819da939bdfda8797852d5f7d18b6a7)
[DAS: Simplify fields in
AnalysisServer](https://dart.googlesource.com/sdk.git/+/7d5f0a650819da939bdfda8797852d5f7d18b6a7)
by Sam Rawlins · 4 days ago

[7cbec89](https://dart.googlesource.com/sdk.git/+/7cbec8916d37f17b23e0eb03d6aa215989b9043a)
[DAS: Privatize and finalize fields in
AbstractNotificationManager](https://dart.googlesource.com/sdk.git/+/7cbec8916d37f17b23e0eb03d6aa215989b9043a)
by Sam Rawlins · 4 days ago

[d8fd208](https://dart.googlesource.com/sdk.git/+/d8fd208a79f3ce7675693c1089b1a3152b797429)
[Elements. Migrate
test/src/utilities/change_builder/change_builder_dart_test.dart](https://dart.googlesource.com/sdk.git/+/d8fd208a79f3ce7675693c1089b1a3152b797429)
by Konstantin Shcheglov · 4 days ago

[4356eac](https://dart.googlesource.com/sdk.git/+/4356eacd87d9a3a6a51beffc4d73261cee3d819e)
[Elements. Migrate lib/utilities/completion/suggestion_builder.dart and
required.](https://dart.googlesource.com/sdk.git/+/4356eacd87d9a3a6a51beffc4d73261cee3d819e)
by Konstantin Shcheglov · 4 days ago

[81b1313](https://dart.googlesource.com/sdk.git/+/81b13136aa05000b07b553280533a99d1dcbda36)
[analyzer: rename docImports to docLibraryImports in a few
places](https://dart.googlesource.com/sdk.git/+/81b13136aa05000b07b553280533a99d1dcbda36)
by Sam Rawlins · 4 days ago

[83db399](https://dart.googlesource.com/sdk.git/+/83db3996f769f0993d174830c02aee9bd1fbd736)
[[dart2js] Fix DictionaryTypeMask hashCode and ==
consistency.](https://dart.googlesource.com/sdk.git/+/83db3996f769f0993d174830c02aee9bd1fbd736)
by Nate Biggs · 4 days ago

[85727ca](https://dart.googlesource.com/sdk.git/+/85727caf2a163d13aed673ccfd4e4eebb9b6526d)
[[element model] migrate
`least_greatest_closure`](https://dart.googlesource.com/sdk.git/+/85727caf2a163d13aed673ccfd4e4eebb9b6526d)
by pq · 4 days ago

[2766858](https://dart.googlesource.com/sdk.git/+/2766858fba19783eefd682fffedee8e0953bdb6e)
[Elements. Migrate
lib/utilities/change_builder/change_builder_dart.dart](https://dart.googlesource.com/sdk.git/+/2766858fba19783eefd682fffedee8e0953bdb6e)
by Konstantin Shcheglov · 4 days ago

[1790fb7](https://dart.googlesource.com/sdk.git/+/1790fb7908d5079daebdaec31b628fa3c242e955)
[DAS: Fix comment references in
refactoring/](https://dart.googlesource.com/sdk.git/+/1790fb7908d5079daebdaec31b628fa3c242e955)
by Sam Rawlins · 4 days ago

[66624da](https://dart.googlesource.com/sdk.git/+/66624dadb5482697105269e780e51f27def663b6)
[Elements. Update ExecutableElementImpl.parameters to return
List<ParameterElementImpl>.](https://dart.googlesource.com/sdk.git/+/66624dadb5482697105269e780e51f27def663b6)
by Konstantin Shcheglov · 4 days ago

[1eee8ba](https://dart.googlesource.com/sdk.git/+/1eee8bae3ad4f22d0683e3ce548d9c25365fde6e)
[[ DDS ] Allow for vm_service >=14.0.0 <16.0.0 for package:dds and
package:dds_service_extensions](https://dart.googlesource.com/sdk.git/+/1eee8bae3ad4f22d0683e3ce548d9c25365fde6e)
by Ben Konyi · 4 days ago

[9ab2316](https://dart.googlesource.com/sdk.git/+/9ab2316d32ad5fced73c6716b0b0cde9a55c2138)
[refactor dartdev
deps](https://dart.googlesource.com/sdk.git/+/9ab2316d32ad5fced73c6716b0b0cde9a55c2138)
by Devon Carew · 4 days ago

[2b1f956](https://dart.googlesource.com/sdk.git/+/2b1f956207c7ceac3723ff0b088503bffa4fe490)
[[element model] migrate
`driver`](https://dart.googlesource.com/sdk.git/+/2b1f956207c7ceac3723ff0b088503bffa4fe490)
by pq · 4 days ago

[f8f10b8](https://dart.googlesource.com/sdk.git/+/f8f10b84076e8628b893a158cc32585c75dd4176)
[[dart2wasm] Add annotations to member and static
intrinsics.](https://dart.googlesource.com/sdk.git/+/f8f10b84076e8628b893a158cc32585c75dd4176)
by Nate Biggs · 4 days ago

[3202683f](https://dart.googlesource.com/sdk.git/+/3202683fe47541d71721a73e592d1174ad28c317)
[Version
3.7.0-313.0.dev](https://dart.googlesource.com/sdk.git/+/3202683fe47541d71721a73e592d1174ad28c317)
by Dart CI · 4 days ago
[3.7.0-313.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.7.0-313.0.dev)

[f49c620](https://dart.googlesource.com/sdk.git/+/f49c620ab34d13ead00fa3bb98b651f8db44484e)
[[analyzer][cfe] Share inference-using-bounds
routines](https://dart.googlesource.com/sdk.git/+/f49c620ab34d13ead00fa3bb98b651f8db44484e)
by Chloe Stefantsova · 5 days ago

[a6b99af](https://dart.googlesource.com/sdk.git/+/a6b99afdeaff69f1ca67baf34c90d47fdc355883)
[[cfe] Create fields through
SourcePropertyBuilder](https://dart.googlesource.com/sdk.git/+/a6b99afdeaff69f1ca67baf34c90d47fdc355883)
by Johnni Winther · 5 days ago

[ad562fd](https://dart.googlesource.com/sdk.git/+/ad562fdbbe1a260afbc8aeea8c0bc9dab1f1a2e1)
[[parser] Rename accidentally committed 'allowLazyFoo'
parameter](https://dart.googlesource.com/sdk.git/+/ad562fdbbe1a260afbc8aeea8c0bc9dab1f1a2e1)
by Jens Johansen · 5 days ago

[9b631bf](https://dart.googlesource.com/sdk.git/+/9b631bf33362be3bf359896fb4b1aa58a12ea602)
[[deps] Roll
dart-lang/native](https://dart.googlesource.com/sdk.git/+/9b631bf33362be3bf359896fb4b1aa58a12ea602)
by Liam Appelbe · 5 days ago

[6a1f9ed](https://dart.googlesource.com/sdk.git/+/6a1f9ed029c7d3c949dbadf0973e688ff7366d75)
[[analysis_server] Insert new arguments before last child/children
arguments](https://dart.googlesource.com/sdk.git/+/6a1f9ed029c7d3c949dbadf0973e688ff7366d75)
by Danny Tuppeny · 5 days ago

[e9a6d62](https://dart.googlesource.com/sdk.git/+/e9a6d62fa429d92ab300c16c3e24f05838572bd4)
[[analysis_server] Return EditableArguments in parameter
order](https://dart.googlesource.com/sdk.git/+/e9a6d62fa429d92ab300c16c3e24f05838572bd4)
by Danny Tuppeny · 5 days ago

[5d5d223](https://dart.googlesource.com/sdk.git/+/5d5d223b4ae197a312d6254d97846f3a34ad758e)
[linter: fix strict_top_level_inference
registry](https://dart.googlesource.com/sdk.git/+/5d5d223b4ae197a312d6254d97846f3a34ad758e)
by Sam Rawlins · 5 days ago

[302287e](https://dart.googlesource.com/sdk.git/+/302287eed2ec5b8bddfdd90c3af93175f9e87daa)
[[tests] Enum shorthands - Selector chain tests for cascades, ??,
collections and nested
contexts.](https://dart.googlesource.com/sdk.git/+/302287eed2ec5b8bddfdd90c3af93175f9e87daa)
by Kallen Tu · 5 days ago

[b9de4ae](https://dart.googlesource.com/sdk.git/+/b9de4ae02d47ae8fecf385753c5a114643c48062)
[[CQ] remove trailing whitespace from `unnecessary_underscores_test`
source](https://dart.googlesource.com/sdk.git/+/b9de4ae02d47ae8fecf385753c5a114643c48062)
by pq · 5 days ago

[c1ce43f](https://dart.googlesource.com/sdk.git/+/c1ce43fd8342d854f841edd6dcd4074326dc9fbf)
[[ddc] Remove unsound dart2js
dependency](https://dart.googlesource.com/sdk.git/+/c1ce43fd8342d854f841edd6dcd4074326dc9fbf)
by Nicholas Shahan · 5 days ago

[b69f6c1](https://dart.googlesource.com/sdk.git/+/b69f6c129480ea14ff16075b346ec1680f894308)
[[CQ] add missing `scope_util_test` to all test
suite](https://dart.googlesource.com/sdk.git/+/b69f6c129480ea14ff16075b346ec1680f894308)
by pq · 5 days ago

[edde039](https://dart.googlesource.com/sdk.git/+/edde03955b15c6a38c58fe2637dbc52439cb8686)
[[element model] migrate
`element_visitors_test`](https://dart.googlesource.com/sdk.git/+/edde03955b15c6a38c58fe2637dbc52439cb8686)
by pq · 5 days ago

[31d8adf](https://dart.googlesource.com/sdk.git/+/31d8adf1f3b9375e5a7af9fc81f8d28738d878e7)
[Elements. Migrate
lib/src/utilities/change_builder/change_builder_core.dart](https://dart.googlesource.com/sdk.git/+/31d8adf1f3b9375e5a7af9fc81f8d28738d878e7)
by Konstantin Shcheglov · 5 days ago

[11f53fd](https://dart.googlesource.com/sdk.git/+/11f53fd7d237d17ad940e35f43a2f963b4a5ed8c)
[[analysis_server] Preserve existing quote kinds when updating string
arguments](https://dart.googlesource.com/sdk.git/+/11f53fd7d237d17ad940e35f43a2f963b4a5ed8c)
by Danny Tuppeny · 5 days ago

[fc95268](https://dart.googlesource.com/sdk.git/+/fc95268a36197a2bf9976d7f1a96e2a83753ebe4)
[[ResidentFrontendServer] Cache the compiler options that were last
used](https://dart.googlesource.com/sdk.git/+/fc95268a36197a2bf9976d7f1a96e2a83753ebe4)
by Derek Xu · 5 days ago

[337e07f](https://dart.googlesource.com/sdk.git/+/337e07fab6b415e96d3554bc23a8da69507d7745)
[[VM/Service] Use the resident frontend server for hot reload when it's
available](https://dart.googlesource.com/sdk.git/+/337e07fab6b415e96d3554bc23a8da69507d7745)
by Derek Xu · 5 days ago

[8785c4e](https://dart.googlesource.com/sdk.git/+/8785c4e000167376f57aaed7ce1d016def2b11ff)
[Elements. Migrate
lib/utilities/range_factory.dart](https://dart.googlesource.com/sdk.git/+/8785c4e000167376f57aaed7ce1d016def2b11ff)
by Konstantin Shcheglov · 5 days ago

[8121b02](https://dart.googlesource.com/sdk.git/+/8121b02725d5412394841da173fb39ca27346de2)
[Elements. Migrate
test/support/abstract_context.dart](https://dart.googlesource.com/sdk.git/+/8121b02725d5412394841da173fb39ca27346de2)
by Konstantin Shcheglov · 5 days ago

[f3e68f2](https://dart.googlesource.com/sdk.git/+/f3e68f2d76c63318ad29ebea5a81acb724f4284e)
[[Migrate]
sdk_constraint_verifier.dart](https://dart.googlesource.com/sdk.git/+/f3e68f2d76c63318ad29ebea5a81acb724f4284e)
by Brian Wilkerson · 5 days ago

[491f4f4](https://dart.googlesource.com/sdk.git/+/491f4f48139c08c0be8ee6d346fe7e07922075fb)
[[CQ] Remove dead code from
ElementLocationImpl](https://dart.googlesource.com/sdk.git/+/491f4f48139c08c0be8ee6d346fe7e07922075fb)
by Brian Wilkerson · 5 days ago
2025-01-14 05:54:34 +00:00