41807 Commits

Author SHA1 Message Date
Mouad Debbar
8d01fe0565
Add Semantics Property linkUrl (#150639)
The new property allows the user to specify a URI for their semantics link node. On the web, it sets the `href` of the anchor element associated with semantics node.

This is going to unlock better semantics support in the Link widget on web ([PR](https://github.com/flutter/packages/pull/6711)).

Engine counterpart: https://github.com/flutter/engine/pull/53507

Fixes https://github.com/flutter/flutter/issues/150263
2024-07-09 22:02:08 +00:00
engine-flutter-autoroll
3bd29677b9
Roll Flutter Engine from 4a2ac0e51a8f to d3269d5855a7 (1 revision) (#151488)
4a2ac0e51a...d3269d5855

2024-07-09 chinmaygarde@google.com [Impeller] Disable OpenGL dithering by default. (flutter/engine#53768)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC bdero@google.com,rmistry@google.com,zra@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
2024-07-09 21:26:15 +00:00
Gray Mackall
72d75959a0
Link engine docs on AS setup in flutter/flutter docs on engine contributor setup (#151481)
Links to the docs on Android Studio setup.
2024-07-09 20:35:42 +00:00
engine-flutter-autoroll
284116c085
Roll Flutter Engine from 69075e7e87d4 to 4a2ac0e51a8f (21 revisions) (#151482)
69075e7e87...4a2ac0e51a

2024-07-09 bdero@google.com Revert 4 Dart rolls (726cb2467 -> ffc8bb004) to recover engine roll (flutter/engine#53778)
2024-07-09 skia-flutter-autoroll@skia.org Roll Dart SDK from 33b65d2fe034 to 726cb2467f27 (1 revision) (flutter/engine#53776)
2024-07-09 skia-flutter-autoroll@skia.org Roll Skia from 9a6f8dfb9102 to 46e5bf98158a (1 revision) (flutter/engine#53775)
2024-07-09 49699333+dependabot[bot]@users.noreply.github.com Bump actions/upload-artifact from 4.3.3 to 4.3.4 (flutter/engine#53774)
2024-07-09 skia-flutter-autoroll@skia.org Roll Skia from ced941fdddc4 to 9a6f8dfb9102 (1 revision) (flutter/engine#53773)
2024-07-09 skia-flutter-autoroll@skia.org Roll Dart SDK from 0ecada960645 to 33b65d2fe034 (2 revisions) (flutter/engine#53772)
2024-07-09 skia-flutter-autoroll@skia.org Roll Skia from 9edafde22cb3 to ced941fdddc4 (2 revisions) (flutter/engine#53769)
2024-07-08 skia-flutter-autoroll@skia.org Roll Dart SDK from 1679aba20a03 to 0ecada960645 (1 revision) (flutter/engine#53767)
2024-07-08 dustingreen@google.com [fuchsia][sysmem2] move to sysmem2 protocols (flutter/engine#53138)
2024-07-08 chinmaygarde@google.com [Impeller] Exploit dynamic state in OpenGL for fewer program links. (flutter/engine#53764)
2024-07-08 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from Em1nantnFXXK8xJH9... to yYs6rINJxWJ8J2vxo... (flutter/engine#53763)
2024-07-08 jonahwilliams@google.com [Impeller] fix incorrect padding/translation in drawVertices with texture coordinates. (flutter/engine#53746)
2024-07-08 skia-flutter-autoroll@skia.org Roll Skia from c65710d00047 to 9edafde22cb3 (3 revisions) (flutter/engine#53762)
2024-07-08 jonahwilliams@google.com [Impeller] implement clear color opt for experimental canvas. (flutter/engine#53749)
2024-07-08 jonahwilliams@google.com [Impeller] add experimental canvas support to screenshotter. (flutter/engine#53751)
2024-07-08 chinmaygarde@google.com Add a host_debug_unopt local engine config for Windows. (flutter/engine#53734)
2024-07-08 skia-flutter-autoroll@skia.org Roll Dart SDK from ffc8bb004a64 to 1679aba20a03 (16 revisions) (flutter/engine#53761)
2024-07-08 skia-flutter-autoroll@skia.org Roll Skia from 38b17b22312d to c65710d00047 (2 revisions) (flutter/engine#53758)
2024-07-08 skia-flutter-autoroll@skia.org Roll Skia from b2c51b2fe15f to 38b17b22312d (1 revision) (flutter/engine#53757)
2024-07-08 skia-flutter-autoroll@skia.org Roll Skia from 1f85fb9238aa to b2c51b2fe15f (3 revisions) (flutter/engine#53756)
2024-07-08 skia-flutter-autoroll@skia.org Roll Skia from f1d06de0ae87 to 1f85fb9238aa (2 revisions) (flutter/engine#53753)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from Em1nantnFXXK to yYs6rINJxWJ8

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC bdero@google.com,rmistry@google.com,zra@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
2024-07-09 20:17:23 +00:00
Taha Tesser
850d76db74
Fix Material 3 Dialog default background color (#151400)
fixes [[Material 3] Wrong `Dialog` background color from ColorScheme](https://github.com/flutter/flutter/issues/148849
)

### Code sample

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

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

/// Flutter code sample for [showDialog].

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: const DialogExample(),
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(
          seedColor: Colors.green,
          surfaceContainerHigh: Colors.amber,
        ),
      ),
    );
  }
}

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

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('showDialog Sample')),
      body: Center(
        child: OutlinedButton(
          onPressed: () => _dialogBuilder(context),
          child: const Text('Open Dialog'),
        ),
      ),
    );
  }

  Future<void> _dialogBuilder(BuildContext context) {
    return showDialog<void>(
      context: context,
      builder: (BuildContext context) {
        return AlertDialog(
          title: const Text('Basic dialog title'),
          content: const Text(
            'A dialog is a type of modal window that\n'
            'appears in front of app content to\n'
            'provide critical information, or prompt\n'
            'for a decision to be made.',
          ),
          actions: <Widget>[
            TextButton(
              style: TextButton.styleFrom(
                textStyle: Theme.of(context).textTheme.labelLarge,
              ),
              child: const Text('Disable'),
              onPressed: () {
                Navigator.of(context).pop();
              },
            ),
            TextButton(
              style: TextButton.styleFrom(
                textStyle: Theme.of(context).textTheme.labelLarge,
              ),
              child: const Text('Enable'),
              onPressed: () {
                Navigator.of(context).pop();
              },
            ),
          ],
        );
      },
    );
  }
}
```

</details>

### Before

<img width="674" alt="Screenshot 2024-07-08 at 14 26 39" src="https://github.com/flutter/flutter/assets/48603081/a95160f5-947e-4a6e-a3a5-82c94980c744">

### After

<img width="674" alt="Screenshot 2024-07-08 at 14 26 28" src="https://github.com/flutter/flutter/assets/48603081/fa912519-2a79-4fd5-a695-6e18542f0005">
2024-07-09 19:55:47 +00:00
Andrew Kolos
5103d75743
[tool] Remove some usages of deprecated usage package (#151359)
Partially addresses https://github.com/flutter/flutter/issues/150575 and https://github.com/flutter/flutter/issues/150665

Will require a g3fix.
2024-07-09 18:17:21 +00:00
Kenzie Davisson
5ebc993dff
Write the package config location to the test bootstrap. (#150440)
Work towards. This is the Flutter companion to
https://github.com/dart-lang/test/pull/2245. Work towards
https://github.com/dart-lang/test/issues/2246.
2024-07-09 09:36:19 -07:00
Daco Harkes
9ab8b6e150
[deps] Roll dart-lang/native packages (#151403)
Pass in the minimum iOS and MacOS version.

Roll dart-lang/native deps.

Related issues:

* https://github.com/flutter/flutter/issues/145104
* Relevant discussion: https://github.com/flutter/flutter/pull/148504
2024-07-09 07:41:35 +00:00
Andrew Kolos
c206a47505
[tool] make testUsingContext provide a Stdio (with hasTerminal unset) override by default (#151357)
While exploring https://github.com/flutter/flutter/issues/107607, I noticed that flutter_tools test results change based on whether `dart test` is run from a terminal or from a process (such as a Dart program). I also ran into this while writing tests for https://github.com/flutter/flutter/pull/150667.

This is due to tests that rely on the global `Stdio` instance, on which the `hasTerminal` property depends on whether the tool is being invoked from a terminal.

Ideally, `testUsingContext` would require any tests that depend on `globals.stdio` to define an override for `Stdio`, but this is not the case. Until a solution to this more general problem is figured out, I think we should have `testUsingContext` always provide a `Stdio` override by default.
2024-07-08 23:47:31 +00:00
PurplePolyhedron
f194cd3298
Make FittedBox not throw when child has zero size. (#150430)
fix https://github.com/flutter/flutter/issues/135082 , fix https://github.com/flutter/flutter/issues/139539 , fix https://github.com/flutter/flutter/issues/142910

Before, `FittedBox` would throw when child size is zero, unless the constraint is tight and fit is not `BoxFit.scaleDown`.
2024-07-08 22:51:04 +00:00
Nate Wilson
a3c7094d7d
Update DataTable documentation (#151356)
This PR resolves [some problems I was having with `DataTable`](https://github.com/flutter/flutter/issues/151005), based on advice from the style guide:

> ### Answer your own questions straight away
> If you find yourself asking a question about our systems, please place whatever answer you subsequently discover into the documentation in the same place where you first looked for the answer. That way, the documentation will consist of answers to real questions, where people would look to find them.

The `DataTable` documentation now specifies that the widget is based on the Material 2 spec, and it offers a list of useful alternatives.

<br>

Additionally, an item in the "See also" section was updated to use a reliable Go link:

```diff
- ///  * <https://material.io/design/components/data-tables.html>
+ ///  * <https://material.io/go/design-data-tables>
```
2024-07-08 22:08:19 +00:00
Nate Wilson
e1a6f763f9
MaterialStateWidgetState in documentation (#151376)
Documentation was migrated as follows:

1. did a RegEx search for `(///.*)MaterialState` and replaced with `$1WidgetState`
2. made sure that `MaterialStateOutlineInputBorder` & `MaterialStateUnderlineInputBorder` were unaffected
3. removed unused imports

<br>

The following files & directories were excluded:

- examples/
- packages/flutter/test/
- material_state.dart
- material_state_mixin.dart
- widget_state.dart

<br>

I believe this should be very straightforward, but I'd also be happy to break the PR in half to make it easier to review.

(related: #151373)
2024-07-08 21:12:04 +00:00
hellohuanlin
86ac077fb5
[ios]A typical news app benchmark with bottom ad banner (#150991)
This is a very common usage of ad so we want to make sure it's performant. 

From the video, it scrolls quite smoothly, but we want to see the numbers, and keep monitoring it in case of regression.

https://github.com/flutter/flutter/assets/41930132/c7811c15-ac07-4989-a8a9-3c128e08cbe0

*List which issues are fixed by this PR. You must list at least one issue. An issue is not required if the PR fixes something trivial like a typo.*

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

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2024-07-08 21:01:58 +00:00
Greg Spencer
c082abe629
Re-enable SemanticsAction.focus matchers (#150990)
## Description

This re-enables the `SemanticsAction.focus` matchers so that they actually do something now instead of ignoring the action.

This was so that we could land the focus action changes without causing breakages in customer tests, and now that customer tests have been updated, we can land this PR turning it on again.

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

## Related PRs
 - https://github.com/flutter/flutter/pull/149840

## Tests
 - Updates semantics tests to actually look for the focus action.
2024-07-08 21:01:56 +00:00
Hans Muller
f2be1260df
Added SliverFloatingHeader.snapMode (#151289)
When a user scroll gesture ends, Material Design floating headers snap into place by animating as far as needed and overlaying the underlying scrollable content. For example Gmail's search header works this way.  Other apps handle the snap animation by scrolling content out of the way. Instagram for example.

Added `SliverFloatingHeader.snapMode`, whose value can be `FloatingHeaderSnapMode.overlay` (the default) or `FloatingHeaderSnapMode.scroll`, so that developers can choose the snap animation style they want.

| FloatingHeaderSnapMode.overlay | FloatingHeaderSnapMode.scroll |
| --- | --- |
| <video src="https://github.com/flutter/flutter/assets/1377460/05c82ddf-05a6-4431-9b1e-88b901feea68" /> | <video src="https://github.com/flutter/flutter/assets/1377460/fedc34de-0b55-4f0d-976f-2df1965c90bc" /> |
2024-07-08 19:33:14 +00:00
Nate Wilson
b713445298
Factor out deprecated names in example code (#151374)
This PR contains:
- 3 instances of `colorScheme.background` → `colorScheme.surface`
- and a whole bunch of `MaterialState` → `WidgetState`

As of yet, no changes have been made to example test files or the [examples/api/lib/material/material_state/](0b2a8e589e/examples/api/lib/material/material_state) directory.

(related: #151373)
2024-07-08 19:06:54 +00:00
cedvdb
0a4f1a7e55
Add cedric vanden bosch to authors (#151313)
Add myself to authors.  [test-exempt]
2024-07-08 17:21:14 +00:00
engine-flutter-autoroll
1d9c42f3aa
Roll Packages from 97bad7ecf569 to 14341d1800f4 (5 revisions) (#151417)
97bad7ecf5...14341d1800

2024-07-08 49699333+dependabot[bot]@users.noreply.github.com [sign_in]: Bump com.android.tools.build:gradle from 7.2.1 to 8.5.0 in /packages/google_sign_in/google_sign_in_android/android (flutter/packages#7070)
2024-07-08 49699333+dependabot[bot]@users.noreply.github.com [path_provider]: Bump com.android.tools.build:gradle from 7.3.1 to 8.5.0 in /packages/path_provider/path_provider_android/android (flutter/packages#7068)
2024-07-07 engine-flutter-autoroll@skia.org Roll Flutter from af913a75b5d2 to fafd67d34d68 (41 revisions) (flutter/packages#7062)
2024-07-06 ian@hixie.ch [rfw] Update goldens. (flutter/packages#6941)
2024-07-06 stuartmorgan@google.com [google_maps_flutter] Moves Java->Dart calls to Pigeon (flutter/packages#7040)

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,rmistry@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
2024-07-08 16:56:25 +00:00
Sam Rawlins
00d49b20e0
Update doc-import to primary configured import, _goldens_io.dart (#151390)
There is a... restriction in dartdoc, such that a library which is
`@docImport`ed in one library, must be otherwise regularly imported in
some other library. Without this case, dartdoc gets a bit lost about
where the doc-imported library is.

Combine this restriction with analyzer's restriction that it doesn't
super duper handle configuration imports. Since `_goldens_io.dart` is
the "primary" import in all other files, and `_goldens_web.dart` is the
"configured" import, we must only doc-import `_goldens_io.dart`.
2024-07-08 09:55:55 -07:00
Taha Tesser
f080102350
[Reland] - Enable explicitChildNodes for the AlertDialog content (#149597)
Fixes the semantics of AlertDialog.
2024-07-08 09:47:20 -07:00
Valentin Vignal
3cffdf6c43
Add tests for material_state_border_side.0_test.dart (#151089)
Contributes to https://github.com/flutter/flutter/issues/130459

It adds a test for
- `examples/api/test/material/material_state/material_state_border_side.0_test.dart`
2024-07-08 11:29:38 +00:00
engine-flutter-autoroll
484cddd1a4
Roll Flutter Engine from ca79a56a66d7 to 69075e7e87d4 (1 revision) (#151393)
ca79a56a66...69075e7e87

2024-07-08 skia-flutter-autoroll@skia.org Roll Skia from c4db006ea5e2 to f1d06de0ae87 (1 revision) (flutter/engine#53752)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-08 08:09:13 +00:00
Valentin Vignal
af522e2a1f
Add tests for action_listener.0.dart (#150606)
Contributes to https://github.com/flutter/flutter/issues/130459

It adds a test for
- `examples/api/lib/widgets/actions/action_listener.0.dart`
2024-07-08 06:12:22 +00:00
engine-flutter-autoroll
ad6166a8b8
Roll Flutter Engine from 5ca3b856ee5a to ca79a56a66d7 (1 revision) (#151387)
5ca3b856ee...ca79a56a66

2024-07-07 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from RSMFdOFyLxulsvY4_... to Em1nantnFXXK8xJH9... (flutter/engine#53748)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from RSMFdOFyLxul to Em1nantnFXXK

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-07 23:58:25 +00:00
engine-flutter-autoroll
7f2fffd0b9
Roll Flutter Engine from 3600ec613a00 to 5ca3b856ee5a (1 revision) (#151378)
3600ec613a...5ca3b856ee

2024-07-06 skia-flutter-autoroll@skia.org Roll Skia from 91bef46c6cbc to c4db006ea5e2 (1 revision) (flutter/engine#53745)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-06 23:40:37 +00:00
engine-flutter-autoroll
680bccf8ef
Roll Flutter Engine from d1ebc5fde630 to 3600ec613a00 (1 revision) (#151377)
d1ebc5fde6...3600ec613a

2024-07-06 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from unavXf_l4lhu23MGg... to RSMFdOFyLxulsvY4_... (flutter/engine#53743)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from unavXf_l4lhu to RSMFdOFyLxul

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-06 20:20:22 +00:00
engine-flutter-autoroll
0b2a8e589e
Roll Flutter Engine from e6b09697df1a to d1ebc5fde630 (1 revision) (#151362)
e6b09697df...d1ebc5fde6

2024-07-06 skia-flutter-autoroll@skia.org Roll Skia from 172eb4ee4cb3 to 91bef46c6cbc (1 revision) (flutter/engine#53741)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-06 07:07:25 +00:00
dependabot[bot]
c3e45cb0c1
Bump actions/upload-artifact from 4.3.3 to 4.3.4 (#151354)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.3 to 4.3.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/actions/upload-artifact/releases">actions/upload-artifact's releases</a>.</em></p>
<blockquote>
<h2>v4.3.4</h2>
<h2>What's Changed</h2>
<ul>
<li>Update <code>@​actions/artifact</code> version, bump dependencies by <a href="https://github.com/robherley"><code>@​robherley</code></a> in <a href="https://redirect.github.com/actions/upload-artifact/pull/584">actions/upload-artifact#584</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/actions/upload-artifact/compare/v4.3.3...v4.3.4">https://github.com/actions/upload-artifact/compare/v4.3.3...v4.3.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0b2256b8c0"><code>0b2256b</code></a> Merge pull request <a href="https://redirect.github.com/actions/upload-artifact/issues/584">#584</a> from actions/robherley/bump-pkgs</li>
<li><a href="488dcefb9b"><code>488dcef</code></a> licensed cache</li>
<li><a href="04c51f5766"><code>04c51f5</code></a> ncc</li>
<li><a href="32a9e276a8"><code>32a9e27</code></a> bump <code>@​actions/artifact</code> and npm audit</li>
<li><a href="552bf3722c"><code>552bf37</code></a> new version</li>
<li><a href="79616d2ded"><code>79616d2</code></a> Merge pull request <a href="https://redirect.github.com/actions/upload-artifact/issues/565">#565</a> from actions/eggyhead/use-artifact-v2.1.6</li>
<li>See full diff in <a href="65462800fd...0b2256b8c0">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/upload-artifact&package-manager=github_actions&previous-version=4.3.3&new-version=4.3.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>
2024-07-05 22:15:30 +00:00
engine-flutter-autoroll
34ab537880
Roll Flutter Engine from 4ee09d3b7f3b to e6b09697df1a (2 revisions) (#151352)
4ee09d3b7f...e6b09697df

2024-07-05 skia-flutter-autoroll@skia.org Roll Skia from 4a27ce0f92d4 to 172eb4ee4cb3 (1 revision) (flutter/engine#53740)
2024-07-05 yjbanov@google.com [web] use semantic tags for headings (h1, h2, etc), and fix missing secondary roles (flutter/engine#53703)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-05 20:34:50 +00:00
Kostia Sokolovskyi
bff15689fd
Add tests for color_filtered.0.dart example. (#151064)
This PR contributes to https://github.com/flutter/flutter/issues/130459

### Description
- Adds tests for `examples/api/lib/widgets/color_filter/color_filtered.0.dart`
2024-07-05 20:33:20 +00:00
Christopher Fujino
55520b842c
de-duplicate code in analyze.dart (#151279)
This is just a de-duplication PR that should be a no-op.
2024-07-05 20:31:20 +00:00
engine-flutter-autoroll
1ebdbeef6c
Roll Packages from 754de1918a33 to 97bad7ecf569 (1 revision) (#151350)
754de1918a...97bad7ecf5

2024-07-05 43054281+camsim99@users.noreply.github.com [camerax] Add fix for camera preview rotation on landscape-oriented devices and set up fix for Impeller support (flutter/packages#7044)

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,rmistry@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
2024-07-05 18:54:35 +00:00
engine-flutter-autoroll
fafd67d34d
Roll Flutter Engine from 74d40c160e48 to 4ee09d3b7f3b (1 revision) (#151346)
74d40c160e...4ee09d3b7f

2024-07-05 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 5WGhpr75y_pb6u2OO... to unavXf_l4lhu23MGg... (flutter/engine#53739)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from 5WGhpr75y_pb to unavXf_l4lhu

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-05 15:55:38 +00:00
engine-flutter-autoroll
602288d370
Roll Flutter Engine from ba9c7b6336ef to 74d40c160e48 (1 revision) (#151340)
ba9c7b6336...74d40c160e

2024-07-05 skia-flutter-autoroll@skia.org Roll Skia from 92861012bcc1 to 4a27ce0f92d4 (4 revisions) (flutter/engine#53738)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-05 12:07:31 +00:00
engine-flutter-autoroll
1cec4ef20c
Roll Flutter Engine from 1f0f950ea02a to ba9c7b6336ef (1 revision) (#151331)
1f0f950ea0...ba9c7b6336

2024-07-05 skia-flutter-autoroll@skia.org Roll Skia from abda211b2753 to 92861012bcc1 (1 revision) (flutter/engine#53737)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-05 07:37:38 +00:00
engine-flutter-autoroll
ac74e26a70
Roll Flutter Engine from 3c6a373bda3e to 1f0f950ea02a (1 revision) (#151326)
3c6a373bda...1f0f950ea0

2024-07-04 skia-flutter-autoroll@skia.org Roll Skia from 72b2ea81c959 to abda211b2753 (1 revision) (flutter/engine#53732)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-05 01:46:34 +00:00
engine-flutter-autoroll
a33c5302cb
Roll Flutter Engine from 79a91e38c587 to 3c6a373bda3e (2 revisions) (#151318)
79a91e38c5...3c6a373bda

2024-07-04 skia-flutter-autoroll@skia.org Roll Skia from a2d00a28c563 to 72b2ea81c959 (1 revision) (flutter/engine#53731)
2024-07-04 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from -VgqOfoW5sf04SuJh... to 5WGhpr75y_pb6u2OO... (flutter/engine#53728)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from -VgqOfoW5sf0 to 5WGhpr75y_pb

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-04 17:36:23 +00:00
engine-flutter-autoroll
360bd54ff4
Roll Packages from d2705fb82b26 to 754de1918a33 (3 revisions) (#151315)
d2705fb82b...754de1918a

2024-07-03 49699333+dependabot[bot]@users.noreply.github.com [interactive_media_ads]: Bump com.google.ads.interactivemedia.v3:interactivemedia from 3.33.0 to 3.34.0 in /packages/interactive_media_ads/android (flutter/packages#7037)
2024-07-03 stuartmorgan@google.com [google_maps_flutter] Fix Circle update regression (flutter/packages#7056)
2024-07-03 engine-flutter-autoroll@skia.org Roll Flutter from 99bb2ff6a614 to af913a75b5d2 (30 revisions) (flutter/packages#7047)

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,rmistry@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
2024-07-04 15:48:25 +00:00
engine-flutter-autoroll
2a7fff6ab9
Roll Flutter Engine from 2b6bb516e7e6 to 79a91e38c587 (2 revisions) (#151314)
2b6bb516e7...79a91e38c5

2024-07-04 skia-flutter-autoroll@skia.org Roll Skia from 28ba3b1b0951 to a2d00a28c563 (2 revisions) (flutter/engine#53726)
2024-07-04 skia-flutter-autoroll@skia.org Roll Skia from d5f8dde714e4 to 28ba3b1b0951 (1 revision) (flutter/engine#53724)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-04 15:37:23 +00:00
engine-flutter-autoroll
36e392630b
Roll Flutter Engine from 8e2d05fa95d7 to 2b6bb516e7e6 (2 revisions) (#151299)
8e2d05fa95...2b6bb516e7

2024-07-04 98614782+auto-submit[bot]@users.noreply.github.com Reverts "fix: mask disappeared when having nested mask filter on Flutter web HTML (#45166)" (flutter/engine#53725)
2024-07-04 jonahwilliams@google.com [Impeller] mark the end of a frame boundary for system compositor interop. (flutter/engine#53722)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-04 10:29:26 +00:00
engine-flutter-autoroll
fa70e610cc
Roll Flutter Engine from 4190543cb093 to 8e2d05fa95d7 (13 revisions) (#151293)
4190543cb0...8e2d05fa95

2024-07-04 flar@google.com [Impeller] Re-enable fast blur path for elliptical rrects (flutter/engine#53704)
2024-07-03 skia-flutter-autoroll@skia.org Roll Skia from 9fd1dc779589 to d5f8dde714e4 (2 revisions) (flutter/engine#53721)
2024-07-03 yjbanov@google.com [web] ignore pointer events on plain text spans (flutter/engine#53694)
2024-07-03 mdebbar@google.com Add Semantics Property `linkUrl` (flutter/engine#53507)
2024-07-03 chinmaygarde@google.com [Embedder] Document incorrectly named field in FlutterOpenGLFramebuffer. (flutter/engine#53720)
2024-07-03 chinmaygarde@google.com [Impeller] Make storage sizes typed. (flutter/engine#53700)
2024-07-03 matanlurey@users.noreply.github.com Convert `run_ios_tests.sh` to `run_ios_tests.dart`. (flutter/engine#53645)
2024-07-03 matanlurey@users.noreply.github.com Move `//third_party/android_embedding_dependencies` to `//flutter/third_party`. (flutter/engine#53587)
2024-07-03 chinmaygarde@google.com [Impeller] Document how to debug/profile OpenGL ES on macOS. (flutter/engine#53671)
2024-07-03 kingtous@qq.com [Flutter Web(HTML)] fix: shader mask is painted incorrectly on shared offscreen canvas (flutter/engine#44998)
2024-07-03 kingtous@qq.com fix: mask disappeared when having nested mask filter on Flutter web HTML (flutter/engine#45166)
2024-07-03 skia-flutter-autoroll@skia.org Roll Skia from 86ee8cc61508 to 9fd1dc779589 (3 revisions) (flutter/engine#53715)
2024-07-03 skia-flutter-autoroll@skia.org Roll Skia from c14cce59222b to 86ee8cc61508 (1 revision) (flutter/engine#53713)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry@google.com,zra@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
2024-07-04 04:59:34 +00:00
flutter-pub-roller-bot
bf40ae3bc7
Roll pub packages (#151203)
This PR was generated by `flutter update-packages --force-upgrade`.
2024-07-03 21:47:16 +00:00
Aaron Housh
25b72bab18
Fix invalid URL suggestion for gradle incompatability (#150999)
The current URL has 2 /to, but it should only be 1. However, this url redirects to https://docs.flutter.dev/release/breaking-changes/android-java-gradle-migration-guide, so I can change it to that if it's preferred just to go to the final destination - just don't know if it's a redirect for a reason

i didn't create an issue as it's a doc change, but if that's a requirement I can do that
2024-07-03 20:38:11 +00:00
Vincent Velociter
6e246ac854
Cupertino transparent navigation bars (#149102)
This PR is making the `CupertinoNavigationBar` and `CupertinoSliverNavigationBar` appear transparent as long as the content is not scrolled under them, so they look like standard iOS apps nav bars.

https://github.com/flutter/flutter/assets/423393/eee2700b-2a91-4577-922c-6163d47cb357

https://github.com/flutter/flutter/assets/423393/3847f2b5-0dac-4d5e-aa6f-03c1d2893e30

<details>
  <summary>Demo app code</summary>
  
  ```dart
import 'package:flutter/cupertino.dart';

/// Flutter code sample for [CupertinoTabScaffold].

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

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

  @override
  State<TabScaffoldApp> createState() => _TabScaffoldAppState();
}

class _TabScaffoldAppState extends State<TabScaffoldApp> {
  Brightness _brightness = Brightness.light;

  @override
  Widget build(BuildContext context) {
    return CupertinoApp(
      theme: CupertinoThemeData(brightness: _brightness),
      home: TabScaffoldExample(
          brightness: _brightness, onBrightnessToggle: _toggleBrightness),
    );
  }

  void _toggleBrightness() {
    setState(() {
      _brightness =
          _brightness == Brightness.light ? Brightness.dark : Brightness.light;
    });
  }
}

class TabScaffoldExample extends StatefulWidget {
  const TabScaffoldExample(
      {required this.brightness, required this.onBrightnessToggle, super.key});

  final VoidCallback onBrightnessToggle;
  final Brightness brightness;

  @override
  State<TabScaffoldExample> createState() => _TabScaffoldExampleState();
}

class _TabScaffoldExampleState extends State<TabScaffoldExample> {
  @override
  Widget build(BuildContext context) {
    return CupertinoTabScaffold(
      tabBar: CupertinoTabBar(
        items: const <BottomNavigationBarItem>[
          BottomNavigationBarItem(
            icon: Icon(CupertinoIcons.home),
            label: 'Home',
          ),
          BottomNavigationBarItem(
            icon: Icon(CupertinoIcons.search_circle_fill),
            label: 'Explore',
          ),
          BottomNavigationBarItem(
            icon: Icon(CupertinoIcons.person_fill),
            label: 'Profile',
          ),
          BottomNavigationBarItem(
            icon: Icon(CupertinoIcons.settings_solid),
            label: 'Settings',
          ),
        ],
      ),
      tabBuilder: (BuildContext context, int index) {
        return CupertinoTabView(
          builder: (BuildContext context) {
            return CupertinoPageScaffold(
              backgroundColor: index == 3
                  ? CupertinoColors.secondarySystemBackground
                      .resolveFrom(context)
                  : null,
              child: CustomScrollView(
                slivers: [
                  CupertinoSliverNavigationBar(
                    largeTitle: Text('Tab $index'),
                    initiallyTransparent: index != 2,
                    trailing: CupertinoButton(
                      padding: EdgeInsets.zero,
                      onPressed: widget.onBrightnessToggle,
                      child: Icon(
                        widget.brightness == Brightness.light
                            ? CupertinoIcons.moon_stars
                            : CupertinoIcons.sun_max,
                      ),
                    ),
                  ),
                  SliverSafeArea(
                    top: false,
                    sliver: SliverList.list(
                      children: [
                        CupertinoButton(
                          child: const Text('Next page'),
                          onPressed: () {
                            Navigator.of(context).push(
                              CupertinoPageRoute<void>(
                                builder: (BuildContext context) {
                                  return CupertinoPageScaffold(
                                    navigationBar: CupertinoNavigationBar(
                                      middle: Text('Inner page of tab $index'),
                                    ),
                                    child: ListView(
                                      children: [
                                        Center(
                                          child: CupertinoButton(
                                            child: const Text('Back'),
                                            onPressed: () {
                                              Navigator.of(context).pop();
                                            },
                                          ),
                                        ),
                                        if (index == 0) const _LongList(),
                                        const SizedBox(height: 20),
                                      ],
                                    ),
                                  );
                                },
                              ),
                            );
                          },
                        ),
                        if (index == 1) const _LongList(),
                        const SizedBox(height: 20),
                      ],
                    ),
                  ),
                ],
              ),
            );
          },
        );
      },
    );
  }
}

class _LongList extends StatelessWidget {
  const _LongList();

  @override
  Widget build(BuildContext context) {
    return Column(
      children: [
        for (int i = 0; i < 50; i++) ...[
          CupertinoListTile(
            leading: const Icon(CupertinoIcons.book),
            title: Text('Bookstore item $i'),
          ),
        ],
      ],
    );
  }
}
  ```
</details>

This is the continuation of https://github.com/flutter/flutter/pull/142439.

I tried to keep the simplest API possible, so it's only introducing a new `automaticBackgroundVisibility` boolean parameter. 

In the implementation I had to use the `CupertinoPageScaffold` background color to make it look transparent instead of a 0 opacity, because of issues with route transitions.

I used an `InheritedWidget` so the nav bar is always getting the right background color from the parent scaffold, whether it is overridden or not. It would probably be better to make the inherited widget private but we'd need to move all the nav bar code to the same file as the scaffold, so for now I've just hidden it from the export. Let me know if it is okay to do that.

This PR is not dealing with the bottom tab bar, because the same [straightforward approach](dde8ec6dc7) doesn't work here. The problem is that the scroll notification is sent only when the scroll view is created or updated, so it doesn't work if one pushes a screen and navigates back.

Issues:
- #78607 
- #60411
2024-07-03 20:35:27 +00:00
Harry Terkelsen
8e44e94e22
Prepares semantics_update_test for upcoming link URL change (#151261)
Prepares for https://github.com/flutter/engine/pull/53507 by adding a missing parameter to the `updateNode` test method.

Part of https://github.com/flutter/flutter/issues/150263
2024-07-03 20:31:23 +00:00
Nate Wilson
aad381638d
Add a message about spam/brigading (#150583)
~~I decided to add this message to CODE_OF_CONDUCT.md~~ never mind 🙂 

Let me know if anything should be changed.
2024-07-03 20:18:04 +00:00
Hans Muller
abd7cd0528
PinnedHeaderSliver example based on the iOS Settings AppBar (#151205)
A relatively elaborate PinnedSliverHeader example which creates an app bar that's similar to the one that appears in the iOS Settings app. In this example the pinned header starts out transparent and the first item in the list serves as the app's "Settings" title. When the title item has been scrolled completely behind the pinned header, the header animates its opacity from 0 to 1 and its (centered) "Settings" title appears. The fact that the header's opacity depends on the height of the title item - which is unknown until the list has been laid out - necessitates monitoring its SliverConstraints.scrollExtent from a scroll NotificationListener. 

https://github.com/flutter/flutter/assets/1377460/539e2591-d0d7-4508-8ce8-4b8f587d7648
2024-07-03 20:06:16 +00:00
Kate Lovett
143847626d
Update deprecation policy (#151257)
We are pausing our cadence of removing deprecated API from the framework until we can create a new policy.
The last couple of cycles we noticed customers having more difficult migrations, and it being harder to remove the APIs in the scheduled time period. So we need to reevaluate the policy and update it.

This is the policy working as intended. Signals like flutter/tests provide feedback on how we are affecting users - so that for folks that contributed!

Related to https://github.com/flutter/website/pull/10839
2024-07-03 20:01:07 +00:00
Hans Muller
d1e150099e
SliverFloatingHeader (#151145)
A sliver that shows its [child] when the user scrolls forward and hides it when the user scrolls backwards. Similar headers can be found in  Google Photos and Facebook.

This sliver is preferable to the general purpose SliverPersistentHeader for its relatively narrow use case because there's no need to create a SliverPersistentHeaderDelegate or to predict the header's size.

https://github.com/flutter/flutter/assets/1377460/82b67dfb-5d38-4adf-9415-fc8527d0eb9f
2024-07-03 19:52:52 +00:00
Gray Mackall
f60f85abcd
Remove warning when KGP version not detected (#151254)
The Kotlin Gradle plugin isn't actually required. Assume the good case if we can't find the version (that the project doesn't need it).
2024-07-03 19:49:07 +00:00