23383 Commits

Author SHA1 Message Date
skia-flutter-autoroll
bc5e4d8934 Roll Dart SDK from 55d7c1b35902 to 452c6617ee36 (1 revision) (flutter/engine#44675)
https://dart.googlesource.com/sdk.git/+log/55d7c1b35902..452c6617ee36

2023-08-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-66.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-14 06:00:14 +00:00
skia-flutter-autoroll
7f05127f5c Roll Skia from a8715028bba1 to afec82ee6a10 (1 revision) (flutter/engine#44674)
https://skia.googlesource.com/skia.git/+log/a8715028bba1..afec82ee6a10

2023-08-14 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from b411e7b47eec to 11084ddef4cb (4 revisions)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-14 05:46:31 +00:00
skia-flutter-autoroll
fdee38e4b0 Roll Fuchsia Linux SDK from tfgOFdhH6PlJyMv3V... to UN2vSCJekPhDnlCRd... (flutter/engine#44668)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC chinmaygarde@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-13 13:49:22 +00:00
skia-flutter-autoroll
42c519cbb9 Roll Fuchsia Linux SDK from wSdqhvS1srhptT4ij... to 1-uqfjivXAYe2ue-4... (flutter/engine#44661)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC chinmaygarde@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-12 09:45:22 +00:00
skia-flutter-autoroll
3ecc497599 Roll Dart SDK from 6118ce565dc2 to 55d7c1b35902 (1 revision) (flutter/engine#44660)
https://dart.googlesource.com/sdk.git/+log/6118ce565dc2..55d7c1b35902

2023-08-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-65.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-12 08:18:02 +00:00
skia-flutter-autoroll
f5d0edad73 Roll Dart SDK from e23931233ff2 to 6118ce565dc2 (1 revision) (flutter/engine#44658)
https://dart.googlesource.com/sdk.git/+log/e23931233ff2..6118ce565dc2

2023-08-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-64.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-12 04:30:18 +00:00
skia-flutter-autoroll
66be45285d Roll Dart SDK from ade04f1beb2c to e23931233ff2 (1 revision) (flutter/engine#44657)
https://dart.googlesource.com/sdk.git/+log/ade04f1beb2c..e23931233ff2

2023-08-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-63.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-12 00:44:25 +00:00
Yegor Pomortsev
62b3a0cfa7 Remove dependencies on fuchsia.sys.* FIDL protocols (flutter/engine#44614)
The fuchsia.sys FIDL library, used to implement v1 components, is
deprecated in the Fuchsia platform and is being removed.

Flutter now implements Components v2 but still imports the old library.

Bug: https://fxbug.dev/109013
2023-08-12 10:41:38 +10:00
LongCatIsLooong
eb3946ff27 allow ParagraphBuilder.shouldDisableRoundingHack to actually be set to false in tests (flutter/engine#44647)
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-11 23:04:57 +00:00
skia-flutter-autoroll
a9978d9c83 Roll Skia from 0f0ff37af487 to dc71a424d870 (3 revisions) (flutter/engine#44654)
https://skia.googlesource.com/skia.git/+log/0f0ff37af487..dc71a424d870

2023-08-11 jamesgk@google.com Skip TestSweepGradientZeroXGanesh on RadeonR9M470X
2023-08-11 bungeman@google.com Revert "[skunicode] Consolidate SkUnicode_IcuBidi"
2023-08-11 johnstiles@google.com Rewrite matrix polyfilling logic.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 22:56:40 +00:00
skia-flutter-autoroll
76783325ce Roll Fuchsia Linux SDK from v33NyNdr6Y1sKZDze... to wSdqhvS1srhptT4ij... (flutter/engine#44648)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC chinmaygarde@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 20:47:15 +00:00
skia-flutter-autoroll
6e82eed1ce Roll Skia from 7dd695d828cf to 0f0ff37af487 (6 revisions) (flutter/engine#44649)
https://skia.googlesource.com/skia.git/+log/7dd695d828cf..0f0ff37af487

2023-08-11 robertphillips@google.com Add an SkImage::isProtected entry point
2023-08-11 bungeman@google.com [skunicode] Consolidate SkUnicode_IcuBidi
2023-08-11 lokokung@google.com [webgpu-headers] Adds macros to renames "count" fields.
2023-08-11 scroggo@google.com skia.org: Use fetch-ninja to install Ninja
2023-08-11 scroggo@google.com skia.org: Recommend against using Apple's Python
2023-08-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from ce76478186bc to 7516bd499361 (2 revisions)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 20:41:21 +00:00
John McCutchan
41331e0315 Rename impeller::TextureIntent to impeller::TextureCoordinateSystem (flutter/engine#44628) 2023-08-11 13:28:03 -07:00
stuartmorgan
0f08a911aa Allow macOS plugins to register as app delegates (flutter/engine#44587)
Adds `addApplicationDelegate:` to the macOS plugin registrar, following the corresponding iOS method, and wires it up to the existing app delegation forwarding that was recently added for use at the application level. (The actual delegate is non-trivially different between iOS and macOS, but that's not resolveable without a complex migration on the iOS side, so the APIs currently diverge after the level of the `addApplicationDelegate:` method itself.)

This doesn't add any new methods to the delegation; those will be added in a follow-up PR.

Also fixes a retain cycle in the termination handler that prevented the new test from working.

Most of https://github.com/flutter/flutter/issues/41471

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-11 19:57:06 +00:00
skia-flutter-autoroll
6d9cba6043 Roll Skia from 68ea92de8f29 to 7dd695d828cf (1 revision) (flutter/engine#44643)
https://skia.googlesource.com/skia.git/+log/68ea92de8f29..7dd695d828cf

2023-08-11 robertphillips@google.com Update GL Caps for ARM protected content and TexStorage

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 18:26:17 +00:00
skia-flutter-autoroll
8e94813368 Roll Dart SDK from 83f96a990792 to ade04f1beb2c (1 revision) (flutter/engine#44642)
https://dart.googlesource.com/sdk.git/+log/83f96a990792..ade04f1beb2c

2023-08-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-62.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 18:04:21 +00:00
skia-flutter-autoroll
60e24c795d Roll Skia from fa30af9c2b80 to 68ea92de8f29 (2 revisions) (flutter/engine#44641)
https://skia.googlesource.com/skia.git/+log/fa30af9c2b80..68ea92de8f29

2023-08-11 johnstiles@google.com Add SkTHashMap::foreach(const Pair&).
2023-08-11 brianosman@google.com Split out Swizzler opts into separate cpp files

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 17:42:20 +00:00
gaaclarke
63b74f7869 [Impeller] Added benchmark for advanced blend. (flutter/engine#44450)
fixes: https://github.com/flutter/flutter/issues/131784

## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or Hixie said the PR is test-exempt. See [testing the engine]
for instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2023-08-11 09:27:45 -07:00
Loïc Sharma
649b38752e [Embedder] Refactor how semantic updates are mapped (flutter/engine#44553)
This refactors how engine semantic updates are mapped to embedder semantic updates. There are no behavioral changes.

Part of https://github.com/flutter/flutter/issues/119970, https://github.com/flutter/flutter/issues/98948

Next PR: https://github.com/flutter/engine/pull/44616

## Background
For https://github.com/flutter/flutter/issues/119970, we will need to update the embedder API to add string attributes to semantic nodes' text values. There are multiple kinds of string attributes, and each text value can have multiple string attributes. This requires gnarly mapping code that's best kept out of `embedder.cc`.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-11 16:22:10 +00:00
skia-flutter-autoroll
bc3fc245e2 Roll Skia from cfb9844091fa to fa30af9c2b80 (1 revision) (flutter/engine#44639)
https://skia.googlesource.com/skia.git/+log/cfb9844091fa..fa30af9c2b80

2023-08-11 johnstiles@google.com Fix ambiguous evaluation order in WGSL codegen.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 16:12:34 +00:00
skia-flutter-autoroll
16b3abd655 Roll Skia from 416789a5e761 to cfb9844091fa (1 revision) (flutter/engine#44638)
https://skia.googlesource.com/skia.git/+log/416789a5e761..cfb9844091fa

2023-08-11 brianosman@google.com Reland "Remove SK_GL #ifdefs from GrBackendSurface"

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 15:24:33 +00:00
skia-flutter-autoroll
4ea5095e82 Roll Skia from 723df2275d7b to 416789a5e761 (1 revision) (flutter/engine#44637)
https://skia.googlesource.com/skia.git/+log/723df2275d7b..416789a5e761

2023-08-11 brianosman@google.com SkAnySubclass: Holds any subclass of a given type that fits in a given size

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 14:28:23 +00:00
John McCutchan
bcd2be5d8a Add support for HardwareBuffer backed Android Platform Views under Impeller/GLES (flutter/engine#44617)
- Implement Impeller/GLES code paths.
- A couple of fixes for EXTERNAL_OES textures via bdero@
2023-08-11 00:41:53 -07:00
skia-flutter-autoroll
e2129a4e3a Roll Fuchsia Linux SDK from konJQZKk2qXc276iA... to v33NyNdr6Y1sKZDze... (flutter/engine#44627)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC chinmaygarde@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 07:31:09 +00:00
skia-flutter-autoroll
f4ac8718df Roll Skia from f4080803ee69 to 41d099099095 (2 revisions) (flutter/engine#44624)
https://skia.googlesource.com/skia.git/+log/f4080803ee69..41d099099095

2023-08-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from d9b07bc44fbc to b411e7b47eec (4 revisions)
2023-08-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from c315c894b9d5 to 97bdc453fbed (1 revision)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 06:13:26 +00:00
skia-flutter-autoroll
79328a35d4 Roll Dart SDK from a2eac00da6b8 to 13317278a6fa (2 revisions) (flutter/engine#44618)
https://dart.googlesource.com/sdk.git/+log/a2eac00da6b8..13317278a6fa

2023-08-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-60.0.dev
2023-08-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-59.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-11 02:50:04 +00:00
Matan Lurey
88a116a521 Update examples/** to provide --local-engine-host. (flutter/engine#44610)
Partial work towards https://github.com/flutter/flutter/issues/132245.
2023-08-10 17:47:38 -07:00
Chris Bracken
234063b3ae [shell] Add references to VsyncWaiter docs (flutter/engine#44607)
Point users in the direction of VsyncWaiterAndroid, VsyncWaiterEmbedder.

No new tests since this patch introduces no semantic changes.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-10 22:00:07 +00:00
skia-flutter-autoroll
11b183b90a Roll Skia from b6492f5ce8c3 to b001e0a5e46f (1 revision) (flutter/engine#44606)
https://skia.googlesource.com/skia.git/+log/b6492f5ce8c3..b001e0a5e46f

2023-08-10 johnstiles@google.com Write the WGSL entrypoint function after writing all ProgramElements.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-10 22:00:05 +00:00
skia-flutter-autoroll
92ba87ea43 Roll Dart SDK from 46da53e7abe2 to a2eac00da6b8 (1 revision) (flutter/engine#44601)
https://dart.googlesource.com/sdk.git/+log/46da53e7abe2..a2eac00da6b8

2023-08-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-58.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-10 20:08:05 +00:00
LoveJello
c309b2295b Fix unexpected pointer change issue and Add test case (flutter/engine#43949)
Fix issue 129765 and Add test case, see  issue
Fixes https://github.com/flutter/flutter/issues/129765

- [✓] 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] and the [C++, Objective-C, Java style guides].
- [✓] I listed at least one issue that this PR fixes in the description above.
- [✓] I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt. See [testing the engine] for instructions on writing and running engine tests.
- [✓] I updated/added relevant documentation (doc comments with `///`).
- [✓] I signed the [CLA].
- [ ✓] All existing and new tests are passing.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-10 20:04:46 +00:00
chunhtai
e7cb4195f2 Reland "Android a11y bridge sets importantness" (flutter/engine#44589)
The previous pr was reverted due to test failures. The failure was due to API not supported in order android version. The fix is in the second commit.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-10 20:02:12 +00:00
John McCutchan
c3606872fb Support for Android Platform Views under Impeller/Vulkan (flutter/engine#44571)
- Introduce AndroidHardwareBufferTextureSourceVK.
- Enable the necessary Vulkan extensions to support
AndroidHardwareBufferTextureSourceVK.
- Refactor HardwareBufferExternalTextureGL into a base class and a GL
and VK specializations.
- Switch ImageReaderPlatformView to use the PRIVATE image format
(enables DRM'd content to be captured in the texture).
- Add a AHardwareBuffer_describe to NDKHelpers.
- Misc cleanups.
2023-08-10 12:54:47 -07:00
yaakovschectman
c2cc8508b6 Reintroduce Windows lifecycle with guard for posthumous OnWindowStateEvent (flutter/engine#44344)
Previously, destruction of `Window` called `DestroyWindow`, which may
send `WM_KILLFOCUS` to the to-be-destroyed window. Because `Window`'s
destructor is called after `FlutterWindow`'s, the `FlutterWindow` vtable
was already destroyed at this point, and the subsequent call to the
virtual method `OnWindowStateEvent` would cause a crash. This PR
reintroduces the reverted changes for Windows lifecycle with a check
before calling the virtual method that the `FlutterWindow` object has
not yet been destructed.

https://github.com/flutter/flutter/issues/131872

*If you had to change anything in the [flutter/tests] repo, include a
link to the migration guide as per the [breaking change policy].*

## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or Hixie said the PR is test-exempt. See [testing the engine]
for instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [ ] I signed the [CLA].
- [x] All existing and new tests are passing.

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat

---------

Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
2023-08-10 15:37:04 -04:00
Matt2D
68dccebb48 Flutter iOS Interactive Keyboard: Fixing Behavior Issue (flutter/engine#44586)
This PR addresses an issue with the behavior of the keyboard. Originally the behavior of the keyboard was to see if the pointer was above or below the middle of the keyboards full size and then animate appropriately. However we found that the behavior is instead based on velocity. This PR adjust the code to match this behavior.

Design Document:
https://docs.google.com/document/d/1-T7_0mSkXzPaWxveeypIzzzAdyo-EEuP5V84161foL4/edit?pli=1

Issues Address:
https://github.com/flutter/flutter/issues/57609

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-10 19:02:08 +00:00
Brandon DeRosier
491ce39b6d [Impeller] Flutter GPU: Add context override. (flutter/engine#44566)
Adds a way to inject a context override, which allows us to test the API
in the Dart playground without spinning up an Engine/Shell.
2023-08-10 11:54:56 -07:00
Brandon DeRosier
046361c1cb [Impeller] External OpenGLES texture sampling. (flutter/engine#44559)
Allows for sampling from external textures in the OpenGLES backend.
DrawImageRect should Just Work if external textures are wrapped with the
new `kTextureExternalOES` type.
2023-08-10 11:54:37 -07:00
skia-flutter-autoroll
7c2dd21178 Roll Skia from 364900538771 to 92e6f52b0fa8 (1 revision) (flutter/engine#44592)
https://skia.googlesource.com/skia.git/+log/364900538771..92e6f52b0fa8

2023-08-10 bungeman@google.com [skunicode] Remove unused LEN define

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-10 18:24:46 +00:00
skia-flutter-autoroll
11e1510420 Roll Skia from f39fd2de8f10 to 364900538771 (1 revision) (flutter/engine#44590)
https://skia.googlesource.com/skia.git/+log/f39fd2de8f10..364900538771

2023-08-10 kjlubick@google.com Remove deprecated emcc flags, and update emsdk to 2.1.44.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-10 17:29:10 +00:00
skia-flutter-autoroll
df0e7d967f Roll Skia from a3975f2a9e79 to 7a1fec6b197f (1 revision) (flutter/engine#44580)
https://skia.googlesource.com/skia.git/+log/a3975f2a9e79..7a1fec6b197f

2023-08-10 brianosman@google.com Split out BlitRow opts into separate cpp files

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-10 14:30:55 +00:00
skia-flutter-autoroll
c1c144eb63 Roll Skia from 7c5f6b17a998 to d9e9b7073171 (1 revision) (flutter/engine#44573)
https://skia.googlesource.com/skia.git/+log/7c5f6b17a998..d9e9b7073171

2023-08-10 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 6449131d4768 to d9b07bc44fbc (5 revisions)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-10 05:51:52 +00:00
skia-flutter-autoroll
36c2089a89 Roll Fuchsia Linux SDK from ZCP8LDbKF4LTBFz_W... to 961_tJawsbLMdy5i0... (flutter/engine#44572)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC chinmaygarde@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-10 05:40:00 +00:00
Zachary Anderson
2ecdda61fa Revert "Android a11y bridge sets importantness" (flutter/engine#44569)
Reverts flutter/engine#44452

Failing the roll to the framework on FTL tests:
https://ci.chromium.org/ui/p/flutter/builders/try/Linux%20firebase_android_embedding_v2_smoke_test/58307/overview
2023-08-09 19:51:22 -07:00
Matan Lurey
839d63312c [Impeller] Replace Vulkan rotation checks with polling (flutter/engine#44361)
tl;dr: Reverts https://github.com/flutter/engine/pull/43214. closes
https://github.com/flutter/flutter/issues/129459.


![7v5zfd](https://github.com/flutter/engine/assets/168174/b87a0726-cddd-415e-a46c-2c65d6f5c9d5)

---

In https://github.com/flutter/engine/pull/43214, @jonahwilliams used
`vkQueuePresentKHR`[^1] [to
check](a0df46add1/impeller/renderer/backend/vulkan/swapchain_impl_vk.cc (L465-L467))
if device orientations had changed, and if so, the swap-chain was torn
down and replaced with a new instance (that would now have a correct
rotation for ... compositing reasons I don't quite understand).

Unfortunately `vkQueuePresentKHR` is (a) only present on Android 10+
_and_ (b) ... isn't implemented consistently across Android devices. For
example, the popular Samsung Galaxy S10 doesn't return
`VK_SUBOPTIMAL_KHR`, leading to the same rotation bugs described in
https://github.com/flutter/flutter/issues/129459 (i.e. even with
https://github.com/flutter/engine/pull/43214).

This PR implements the polling technique recommended by Android[^2], in
this case on every frame. We should expect this to have a performance
penalty of ~`0.2`ms per frame, but should at least give us consistent
fidelity on Vulkan + Android for the time-being.


![flutter_04](https://github.com/flutter/engine/assets/168174/969f5c5e-7f6a-4156-8de8-1351b32f2a2f)

<details>
<summary>
Some additional screenshots generated while debugging
</summary>
<img src
="https://github.com/flutter/engine/assets/168174/900e02a8-aa51-4592-9690-c650092130a2"
/>
<img
src="https://github.com/flutter/engine/assets/168174/e7b9e5c0-86b0-407f-aa51-2f76afda4f03)"
/>
<img
src="https://github.com/flutter/engine/assets/168174/6b611090-97f5-4589-9ef9-6ba778efc6b7"
/>
</details>


[^1]:
https://developer.android.com/games/optimize/vulkan-prerotation#detect_device_orientation_changes
[^2]:
https://developer.android.com/games/optimize/vulkan-prerotation#using_polling
2023-08-09 19:14:35 -07:00
LongCatIsLooong
e156901deb Disable text rounding hack by default (flutter/engine#44544)
This depends on https://github.com/flutter/flutter/pull/132094 and customer_testing migration.

I'll announce this change and add a g3 fix after this lands.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-10 01:44:23 +00:00
skia-flutter-autoroll
8e687347b3 Roll Skia from 3d5a6138b7e5 to 491f67637e6e (4 revisions) (flutter/engine#44563)
https://skia.googlesource.com/skia.git/+log/3d5a6138b7e5..491f67637e6e

2023-08-09 johnstiles@google.com Disable sequence-expression test on old Adreno drivers.
2023-08-09 johnstiles@google.com Add layout flags for pixel formats.
2023-08-09 johnstiles@google.com Update SkSL memory layout for WGSL 1.0 limitations.
2023-08-09 johnstiles@google.com Revert "Speculative fix for Adreno shader error."

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-09 23:28:06 +00:00
skia-flutter-autoroll
e98deaae7e Manual roll Dart SDK from f664f4b9c50d to d89e4ead966d (11 revisions) (flutter/engine#44560)
Manual roll requested by zra@google.com

https://dart.googlesource.com/sdk.git/+log/f664f4b9c50d..d89e4ead966d

2023-08-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-53.0.dev
2023-08-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-52.0.dev
2023-08-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-51.0.dev
2023-08-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-50.0.dev
2023-08-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-49.0.dev
2023-08-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-48.0.dev
2023-08-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-47.0.dev
2023-08-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-46.0.dev
2023-08-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-45.0.dev
2023-08-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-44.0.dev
2023-08-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-43.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-08-09 22:40:22 +00:00
Srujan Gaddam
b76eb03600 Make toJS'd function use JS types (flutter/engine#44469)
JSFunction's should only accept and return JS types.

Allows landing of external restrictions here:
https://dart-review.googlesource.com/c/sdk/+/316867/9
2023-08-09 14:39:12 -07:00
xuty
0c708f040f [web] Fix rendering of gradients in html mode (flutter/engine#40345)
![CleanShot 2023-03-16 at 20 44 01@2x](https://user-images.githubusercontent.com/15033141/225620947-18fe19aa-c5e2-45a5-a0cc-151275844af7.png)

<details>
<summary> Code  Example</summary>

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

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

class DemoGradientTransform implements GradientTransform {
  @override
  Matrix4? transform(Rect bounds, {TextDirection? textDirection}) {
    return Matrix4.identity()
      ..scale(1.2, 1.7)
      ..rotateZ(0.25);
  }
}

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

  @override
  Widget build(BuildContext context) {
    var colors = <Color>[
      Colors.red,
      Colors.green,
      Colors.blue,
      Colors.yellow,
    ];

    const stops = <double>[0.0, 0.25, 0.5, 1.0];

    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: GridView(
        gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
          crossAxisCount: TileMode.values.length,
        ),
        children: <Widget>[
          for (final mode in TileMode.values)
            DecoratedBox(
              decoration: BoxDecoration(
                gradient: LinearGradient(
                  colors: colors,
                  stops: stops,
                  tileMode: mode,
                  transform: DemoGradientTransform(),
                ),
              ),
            ),
          for (final mode in TileMode.values)
            DecoratedBox(
              decoration: BoxDecoration(
                gradient: RadialGradient(
                  center: Alignment.topLeft,
                  radius: 0.5,
                  colors: colors,
                  stops: stops,
                  tileMode: mode,
                  transform: DemoGradientTransform(),
                ),
              ),
            ),
          for (final mode in TileMode.values)
            DecoratedBox(
              decoration: BoxDecoration(
                gradient: SweepGradient(
                  center: Alignment.topLeft,
                  startAngle: 0.0,
                  endAngle: 3.14,
                  colors: colors,
                  stops: stops,
                  tileMode: mode,
                  transform: DemoGradientTransform(),
                ),
              ),
            ),
        ],
      ),
    );
  }
}
```
</details>

Fixes: https://github.com/flutter/flutter/issues/84245
2023-08-09 21:38:59 +00:00
Matt2D
9fb889d3a8 Flutter iOS Interactive Keyboard: Fixing Animation Issue (flutter/engine#44514)
This PR addresses an issue with the animation of the keyboard. In iOS 16.0 a delay was included in UIView becomeFirstResponder where the areAnimationsEnabled boolean is no longer immediately read. In response to this issue a delay is added that allows for the animation to be properly disabled. 

Design Document:
https://docs.google.com/document/d/1-T7_0mSkXzPaWxveeypIzzzAdyo-EEuP5V84161foL4/edit?pli=1

Issues Address:
https://github.com/flutter/flutter/issues/57609

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-08-09 21:22:05 +00:00