28950 Commits

Author SHA1 Message Date
Kevin Chisholm
0c46b09bbf Add configuration for automating release notes (flutter/engine#42132)
GitHub's automated changelog generation allows teams to setup a configuration file to determine how these changelogs will be generated.  

A similar file is available in flutter/flutter for release note generation.  As tags have been added to flutter/engine, we now have the ability to generate release notes in the same fashion.
2023-05-18 18:01:06 +00:00
skia-flutter-autoroll
fa4aa93e8d Roll Skia from 62841fa33e95 to ac47a05bf253 (9 revisions) (flutter/engine#42131)
https://skia.googlesource.com/skia.git/+log/62841fa33e95..ac47a05bf253

2023-05-18 jamesgk@google.com [graphite] Enable dual-src blending in Metal
2023-05-18 lovisolo@google.com [bazel] Add skia_android_unit_test macro.
2023-05-18 lovisolo@google.com [bazel] Reland reverted CLs due to broken G3 roll.
2023-05-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from b35367eac089 to f7b24ac464f9 (4 revisions)
2023-05-18 brianosman@google.com Fix SkString's move constructor
2023-05-18 ccameron@chromium.org HDR gainmaps: Require Version 1.0
2023-05-18 herb@google.com Split the cubic and quad into separate fuzzers
2023-05-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 588114bc957f to 64efc3ca9c0e
2023-05-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 9de2cfb06593 to bcbf23c5f184 (7 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,johnstiles@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 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-05-18 17:59:18 +00:00
skia-flutter-autoroll
34f1cfb7e2 Roll Fuchsia Mac SDK from jNFpQ1gTCMNbzSZCw... to Tl371NrGBEHFYPxHQ... (flutter/engine#42128)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-mac-sdk-flutter-engine
Please CC 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-05-18 16:38:16 +00:00
Jesse Seales
6e5c919f89 Vuln scan github actions permissions (flutter/engine#42099)
The lack of permissions on the vulnerability scanning github actions
yaml will cause all runs to fail at the upload SARIF to security tab
stage. This change adds the permissions for that stage to succeed.

A successful test run is can be seen here:
https://github.com/flutter/engine/actions/runs/5006551387/jobs/8971979211

*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 `///`).
- [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-05-18 12:08:56 -04:00
skia-flutter-autoroll
23016509fe Roll Dart SDK from 1991015ad460 to 7bc022c51215 (1 revision) (flutter/engine#42125)
https://dart.googlesource.com/sdk.git/+log/1991015ad460..7bc022c51215

2023-05-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-123.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 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-05-18 16:07:11 +00:00
skia-flutter-autoroll
b761a2d297 Roll Skia from ad8fa4a38668 to 62841fa33e95 (2 revisions) (flutter/engine#42123)
https://skia.googlesource.com/skia.git/+log/ad8fa4a38668..62841fa33e95

2023-05-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 28718d8b4108 to f549d5e6c663 (1 revision)
2023-05-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 8e2c784328a9 to 588114bc957f (7 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,johnstiles@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 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-05-18 16:05:51 +00:00
skia-flutter-autoroll
e8059895ca Roll Fuchsia Linux SDK from SDKw1RvH0dWiJXERo... to zqkH0qb9GQ3jO24Bh... (flutter/engine#42124)
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 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-05-18 16:04:47 +00:00
skia-flutter-autoroll
4d6655dd51 Roll Skia from a3a9fb5f4a31 to ad8fa4a38668 (1 revision) (flutter/engine#42121)
https://skia.googlesource.com/skia.git/+log/a3a9fb5f4a31..ad8fa4a38668

2023-05-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 83c5c8b15157 to 97ab6a3a7061 (36 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,johnstiles@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 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-05-18 05:38:22 +00:00
skia-flutter-autoroll
43091842f1 Roll Dart SDK from 7f6fabbe9fba to 1991015ad460 (4 revisions) (flutter/engine#42120)
https://dart.googlesource.com/sdk.git/+log/7f6fabbe9fba..1991015ad460

2023-05-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-122.0.dev
2023-05-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-121.0.dev
2023-05-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-120.0.dev
2023-05-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-119.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 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-05-18 04:24:22 +00:00
skia-flutter-autoroll
b3447d9c05 Roll Fuchsia Mac SDK from wNfsef5we4l8hxEII... to jNFpQ1gTCMNbzSZCw... (flutter/engine#42118)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-mac-sdk-flutter-engine
Please CC 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-05-18 03:54:07 +00:00
skia-flutter-autoroll
ba7ce87738 Roll Skia from caff30d16ae7 to a3a9fb5f4a31 (1 revision) (flutter/engine#42117)
https://skia.googlesource.com/skia.git/+log/caff30d16ae7..a3a9fb5f4a31

2023-05-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 7d17e63c2439 to b35367eac089 (9 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,johnstiles@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 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-05-18 03:25:04 +00:00
skia-flutter-autoroll
c3335ebe05 Roll Skia from ffa425bacfc4 to caff30d16ae7 (29 revisions) (flutter/engine#42116)
https://skia.googlesource.com/skia.git/+log/ffa425bacfc4..caff30d16ae7

2023-05-17 johnstiles@google.com Simplify if-else chain in releaseProgram.
2023-05-17 johnstiles@google.com Move Parser::Checkpoint out of the header.
2023-05-17 bungeman@google.com Regularize DirectWrite format handling
2023-05-17 bungeman@google.com Reorganize DirectWrite glyph representation selection
2023-05-17 michaelludwig@google.com [skif] Don't intersect against desired output unnecessarily
2023-05-17 johnstiles@google.com Migrate DSLCore::ReleaseProgram into Compiler.
2023-05-17 johnstiles@google.com Remove Declare(DSLGlobalVar) from DSLCore.
2023-05-17 johnstiles@google.com Eliminate src/sksl/dsl/priv directory.
2023-05-17 johnstiles@google.com Eliminate DSLWriter entirely.
2023-05-17 johnstiles@google.com Migrate DSLWriter::Var to VarDeclaration::Convert.
2023-05-17 nicolettep@google.com [graphite] Create & cache descriptor sets
2023-05-17 michaelludwig@google.com [skif] Update SkShaderImageFilter to use FilterResult
2023-05-17 jmbetancourt@google.com [skottie] add proxy to PropertyObserver
2023-05-17 brianosman@google.com Revert "Add src/cityhash"
2023-05-17 johnstiles@google.com Remove unreferenced header DSL.h.
2023-05-17 jamesgk@google.com [graphite] Enable framebuffer fetch on Metal
2023-05-17 jamesgk@google.com [graphite] Use framebuffer fetch when available
2023-05-17 kjlubick@google.com Move SkStrikeSpec::MakeSDFT to src/text/gpu
2023-05-17 kjlubick@google.com Enforce IWYU on SkStrike* and src/text/*
2023-05-17 brianosman@google.com Add src/cityhash
2023-05-17 jvanverth@google.com [graphite] Fix YV12 colors.
2023-05-17 johnstiles@google.com Disallow calling DSLWriter::Var more than once.
2023-05-17 jmbetancourt@google.com [skottie] accept a proxy for SlotManager's ResourceProvider
2023-05-17 johnstiles@google.com Delete dead code in DSLWriter.
2023-05-17 brianosman@google.com Move SkChecksum.h from include/private to src/core
2023-05-17 johnstiles@google.com Add TArray::reserve_exact for exact-fit sizing.
2023-05-17 kjlubick@google.com Delete unused shim image factory code
2023-05-17 jvanverth@google.com [graphite] Fix encoded origin for YUVA textures.
2023-05-17 johnstiles@google.com Move symbol-table parameter setup inside FunctionDeclaration.

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,johnstiles@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 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-05-18 02:25:22 +00:00
Chris Bracken
871632b29b [macOS] Clean up PlatformView mutator scaling (flutter/engine#42110)
When applying platform view mutators, the mutations array includes a
transform from logical to physical coordinates. Since Cocoa deals only
in logical points, we inject a physical to logical coordinate transform
to counteract this.

Rather than applying this multiple times throughout the
`[FlutterMutatorView applyFlutterLayer]` method we gather a list of
transforms that includes the additional physical to logical scale
transform.

This change is a cleanup change for readability and makes no semantic
changes to how mutator views are applied. Existing unit tests in
[FlutterMutatorViewTest.mm](https://github.com/flutter/engine/blob/main/shell/platform/darwin/macos/framework/Source/FlutterMutatorViewTest.mm)
are expected to pass without changes.

## 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].
- [ ] 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.
- [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-05-17 17:11:51 -07:00
Xilai Zhang
3b3f315061 [g3 roll] Revert "add non-rendering operation culling to DisplayListBuilder" (flutter/engine#42097)
temporary revert of flutter/engine#41463

context: b/283038609
2023-05-17 23:48:04 +00:00
skia-flutter-autoroll
be1a1d5cfe Roll Fuchsia Linux SDK from YrEDYUB9NKhirgo5s... to SDKw1RvH0dWiJXERo... (flutter/engine#42100)
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 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-05-17 19:56:04 +00:00
Jonah Williams
0b212a6348 [Impelller] fix flickering due to synchronization issues in compute tessellator. (flutter/engine#42076)
We must wait until the compute command buffer has completed before its safe to use the contents of that buffer. THis fixes the flickering I've observed when running the unit test locally.

Test only change, no impact to shipped code.
2023-05-17 18:57:15 +00:00
Renzo Olivares
79df264a52 [Android] Do not collapse text selection on shift key up (flutter/engine#42075)
Fixes https://github.com/flutter/flutter/issues/101569

This block of code was originally introduced in https://github.com/flutter/engine/pull/15560 , but removing it does not have any affect on the software text editing controls in GBoard.

Before this change
* shift + arrow right/left selection would collapse after releasing the shift key. 
* shift + mouse click to expand selection would collapse after releasing the shift key.

After this change
* shift key up no longer collapses the selection.
2023-05-17 18:53:03 +00:00
Mouad Debbar
46598122f7 [web] Simplify handling of custom url strategy (flutter/engine#42043)
Issue: https://github.com/flutter/flutter/issues/126831
2023-05-17 18:27:14 +00:00
Dan Field
ae728938fc Report displays for macOS (flutter/engine#41998)
https://github.com/flutter/flutter/issues/125939 and https://github.com/flutter/flutter/issues/125938 for macOS

fixes https://github.com/flutter/flutter/issues/121352
2023-05-17 17:17:23 +00:00
Dan Field
85ba96cbbb Fix bounds when painting style is stroke width for image shaders (flutter/engine#42052)
Fixes https://github.com/flutter/flutter/issues/126739

When we're sampling from the texture, we need to sample from its origin regardless of how much offset the stroke width gives to the path.
2023-05-17 17:02:18 +00:00
Jesse Seales
d41a0690bc Re-Enable Vulnerability 3p Scanning Workflow (flutter/engine#42049)
After migrating to standalone yaml (rather than included as a part of the scorecards yaml), the vuln scanning workflow needs to be re-enabled with sarif results uploading to the dashboard under the security tab. A successful test run of this workflow can be seen at https://github.com/flutter/engine/actions/runs/4982210161 (in linked run, fails to upload SARIF file given lack of permissions on any branch besides default)

This change also adds use of cwd in python subprocess commands rather than using directory prefix in command string.

Addresses b/280294707

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-17 16:22:58 +00:00
skia-flutter-autoroll
d0f2fadc93 Roll Skia from c3473c32bb35 to ffa425bacfc4 (14 revisions) (flutter/engine#42095)
https://skia.googlesource.com/skia.git/+log/c3473c32bb35..ffa425bacfc4

2023-05-17 robertphillips@google.com Create Protected EGL contexts when possible on Android
2023-05-17 johnstiles@google.com Delete dead code in DSLStatement.
2023-05-17 johnstiles@google.com Add Block::MakeCompoundStatement.
2023-05-17 jvanverth@google.com [graphite] Remove spurious text method.
2023-05-17 kjlubick@google.com Manually Roll Dawn from 89a3dac88297 to 83c5c8b15157 (41 revisions)
2023-05-17 johnstiles@google.com Remove unnecessary return value from Parser::structVarDeclaration.
2023-05-17 johnstiles@google.com Restructure AddVarDeclaration to not require friendship.
2023-05-17 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 32a999c86b9c to 7d17e63c2439 (11 revisions)
2023-05-17 michaelludwig@google.com [skif] Shore up getOutputLayerBounds() for old filter definitions
2023-05-17 johnstiles@google.com Move force-noinline support out of DSL.
2023-05-17 michaelludwig@google.com [skif] Update SkPictureImageFilter to use FilterResult
2023-05-17 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 25def1a0da1c to 9de2cfb06593 (17 revisions)
2023-05-17 jvanverth@google.com [graphite] Add YUVA shader.
2023-05-17 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from a62e8dbc3467 to 28718d8b4108 (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,johnstiles@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 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-05-17 16:20:09 +00:00
gaaclarke
837b7df872 [Impeller] Turned on wide gamut support by default. (#39801) (flutter/engine#41965)
relands flutter/engine#39801

forward fix for internal customers at cl/531288297

## 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].
- [ ] 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.
- [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-05-17 09:11:42 -07:00
skia-flutter-autoroll
bfb1029c9d Roll Fuchsia Mac SDK from dIATtSiPf8KE25MMF... to wNfsef5we4l8hxEII... (flutter/engine#42094)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-mac-sdk-flutter-engine
Please CC 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-05-17 15:04:08 +00:00
skia-flutter-autoroll
8bda466119 Roll Skia from 88d7a68694d9 to c3473c32bb35 (2 revisions) (flutter/engine#42093)
https://skia.googlesource.com/skia.git/+log/88d7a68694d9..c3473c32bb35

2023-05-17 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 8e2c784328a9 to ee89bbd2db69
2023-05-17 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from cbe6e1312c42 to 8e2c784328a9 (22 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,johnstiles@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 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-05-17 14:24:10 +00:00
skia-flutter-autoroll
e3d34d9192 Roll Dart SDK from 2fc9f4dd9623 to 7f6fabbe9fba (1 revision) (flutter/engine#42090)
https://dart.googlesource.com/sdk.git/+log/2fc9f4dd9623..7f6fabbe9fba

2023-05-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-118.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 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-05-17 07:12:34 +00:00
skia-flutter-autoroll
a9dec00215 Roll Fuchsia Linux SDK from D_EOM3rJ8AMk3-Wex... to YrEDYUB9NKhirgo5s... (flutter/engine#42086)
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 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-05-17 03:50:24 +00:00
skia-flutter-autoroll
31b74077a0 Roll Dart SDK from dbbb8a6d79a3 to 2fc9f4dd9623 (1 revision) (flutter/engine#42085)
https://dart.googlesource.com/sdk.git/+log/dbbb8a6d79a3..2fc9f4dd9623

2023-05-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-117.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 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-05-17 03:20:02 +00:00
skia-flutter-autoroll
b857c60048 Roll Fuchsia Mac SDK from N4LwCRxg0oIevhQ_O... to dIATtSiPf8KE25MMF... (flutter/engine#42084)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-mac-sdk-flutter-engine
Please CC 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-05-17 02:17:33 +00:00
skia-flutter-autoroll
2db17d72bc Roll Dart SDK from d2b2ac829842 to dbbb8a6d79a3 (3 revisions) (flutter/engine#42082)
https://dart.googlesource.com/sdk.git/+log/d2b2ac829842..dbbb8a6d79a3

2023-05-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-116.0.dev
2023-05-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-115.0.dev
2023-05-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-114.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 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-05-16 23:27:23 +00:00
Brandon DeRosier
88c5ed3106 [Impeller] Use 32 bit Gaussian function in the 2-pass blur (flutter/engine#42069)
Resolves https://github.com/flutter/flutter/issues/126487.

Increases the 2-pass blur quality and distribution limit.

It turns out sigma was breaking down beyond ~255 (moderately high, but
not unreasonable for users to rely on). The Gaussian function computes
sigma^2, and half precision floats only have 5 bit exponents and
overflow for numbers above 65k.

Coincidentally, this also returns us to a state where we look a lot more
like Skia's blurs for larger blur sigmas. Medium blurs have much less
visual banding (although it's still there if you look closely). I
suspect half precision isn't really enough for tracking the integral.

Unfortunately, this means our SIMD pipelining isn't going to be as good.
I'll be interested in watching the blur-driven benchmarks for the perf
hit.
2023-05-16 15:56:03 -07:00
skia-flutter-autoroll
ec7495484c Roll Skia from 9b0e912a1cb9 to 88d7a68694d9 (13 revisions) (flutter/engine#42081)
https://skia.googlesource.com/skia.git/+log/9b0e912a1cb9..88d7a68694d9

2023-05-16 brianosman@google.com Revert "Reland "Add third_party/cityhash""
2023-05-16 johnstiles@google.com Switch parameter list from vector<> to TArray and SkSpan.
2023-05-16 brianosman@google.com Move ProxyHash implementation to cpp
2023-05-16 sunnyps@chromium.org graphite: Implement drawSlug
2023-05-16 johnstiles@google.com Remove unused DSLExpression ctors.
2023-05-16 penghuang@chromium.org Fix link errors in component build
2023-05-16 brianosman@google.com Reland "Add third_party/cityhash"
2023-05-16 brianosman@google.com Remove SkDrawable::newPictureSnapshot entirely
2023-05-16 johnstiles@google.com Reduce usage of ThreadContext when easy alternatives exist.
2023-05-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from f3e8446466d8 to 32a999c86b9c (2 revisions)
2023-05-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from e0fb1f506c8b to c9c8d1cba3dc
2023-05-16 kjlubick@google.com Add include to fix client
2023-05-16 johnstiles@google.com Remove DSLCore handling of Interface Blocks.

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,johnstiles@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 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-05-16 22:49:07 +00:00
Jackson Gardner
9d87a21795 Use client ICU data with skwasm. (flutter/engine#42018)
This implements https://github.com/flutter/flutter/issues/126340

For now, I am keeping this implementation simple without any extra caching. I may add caching later based on profiling results.
2023-05-16 22:07:16 +00:00
Zachary Anderson
df51526b1d Revert "[ios_platform_view] only recycle maskView when the view is applying mutators" (flutter/engine#42080)
Reverts flutter/engine#41573

Crashing on Framework CI
2023-05-16 14:32:18 -07:00
Greg Spencer
f4ac622197 [macOS] Wait for binding to be ready before requesting exits from framework (flutter/engine#41753)
Similar to https://github.com/flutter/engine/pull/41733 and
https://github.com/flutter/engine/pull/41782, this causes the macos
embedding to wait until it hears that the scheduler binding has
registered itself before proceeding to send termination requests to the
framework.

This allows applications that don't use the framework (just use
`dart:ui` directly) to exit automatically when the last window is
closed. Without this change, the last window closes, but the app does
not exit.

Depends on framework PR https://github.com/flutter/flutter/pull/126075
landing first.
2023-05-16 14:29:32 -07:00
Greg Spencer
4eebfb2246 [linux] Wait for binding to be ready before requesting exits from framework (flutter/engine#41782)
## Description

Similar to https://github.com/flutter/engine/pull/41733 and https://github.com/flutter/engine/pull/41753 this causes the linux embedding to wait until it hears that the scheduler binding has registered itself before proceeding to send termination requests to the framework.

This allows applications that don't use the framework (just use `dart:ui` directly) to exit automatically when the last window is closed.  Without this change, the app does not exit when the window is closed.

Depends on framework PR https://github.com/flutter/flutter/pull/126075 landing first.

## Related PRs
 - https://github.com/flutter/engine/pull/41733
 - https://github.com/flutter/engine/pull/41753

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

## Tests
 - Added a test to make sure that it doesn't send a termination request if the binding hasn't notified that it is ready yet.
2023-05-16 20:34:05 +00:00
Jackson Gardner
d159d6cfc8 Initial support for images in Skwasm (flutter/engine#42019)
This partially implements https://github.com/flutter/flutter/issues/126341

It does not implement image codecs, because they are going to get complicated with transferring video frames to the web worker and so on. I am going to deal with image codecs in a subsequent change.
2023-05-16 18:35:17 +00:00
Jackson Gardner
148b626638 Use new unresolvedCodePoints API from skia. (flutter/engine#41991)
NOTE: this works off of a skia CL that is not merged yet, so we shouldn't merge this until it actually lands in skia and rolls into the engine. See https://skia-review.googlesource.com/c/skia/+/695716
2023-05-16 18:33:12 +00:00
Jason Simmons
6d1e5ca312 Convert public API NativeFieldWrapper classes to abstract interfaces (flutter/engine#41945)
See https://github.com/flutter/flutter/issues/123756
2023-05-16 18:13:07 +00:00
Loïc Sharma
ac25948dcc [Windows] Add force redraw to the C++ client wrapper (flutter/engine#42061)
This change adds a C++ client wrapper to Windows's "force redraw" C API. This API can be used to schedule a frame.

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

## Background

The Windows runner has a race at startup:

1. **Platform thread**: creates a hidden window
2. **Platform thread**: launches the Flutter engine
3. **UI/Raster threads**: renders the first frame
4. **Platform thread**: Registers a callback to show the window once the next frame has been rendered.

Steps 3 and 4 happen in parallel and it is possible for step 3 to complete before step 4 starts. In this scenario, the next frame callback is never called and the window is never shown.

The Windows runner will be updated to call the "force redraw" API after it registers the next frame callback. If step 3 hasn't completed yet, the "force redraw" will no-op as a frame is already scheduled. If step 3 has already completed, the "force redraw" will schedule another frame, which will call the next frame callback and show the window.

See this discussion below on why we cannot avoid changing the Windows runner to fix this issue: https://github.com/flutter/engine/pull/42061#issuecomment-1550080722

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-16 18:07:15 +00:00
godofredoc
61d8ffe27c Fix drone_dimension host_engine_builder. (flutter/engine#42068)
The host engine was using a top level dimension instead of a drone dimension and was causing the dart-internal build to fail.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-16 17:12:12 +00:00
godofredoc
530243affb Add linux_clang_tidy builder. (flutter/engine#41990)
This builder run android and host clang tidy in an engine v2 build.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-16 16:37:36 +00:00
Chris Yang
259217c7aa [ios_platform_view] only recycle maskView when the view is applying mutators (flutter/engine#41573)
A mistake was introduced in https://github.com/flutter/engine/pull/39498  where the maskViews are already recycles each frame. 

Sometimes a PlatformView does not need to be re-composite: (https://github.com/flutter/engine/blob/main/shell/platform/darwin/ios/framework/Source/FlutterPlatformViews.mm#L398-L401), so the mask view for such PlatformView should not be recycled.

This PR changed the `recycleMaskViews` API to allow individual maskviews to be recycled. `ApplyMutator` then only recycle the maskView for that particular PlatformView.

The MaskViewPool is also reworked to be simpler. 

- The pool now contains a single set of mask views, there is no index counter needed.
- When a maskView is needed, try to get it from the pool. 
  - If pool is empty, create a new view.
  - If pool has an available maskview, remove it from the pool.
- When a PlatformView starts to `applyMutator`, it removes current the maskView, insert the maskView to the pool.
- When the above PlatformView needs to a maskView, it grabs one from the pool. 

fixes: https://github.com/flutter/flutter/issues/125620

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-16 16:24:05 +00:00
skia-flutter-autoroll
2752fe57eb Roll Skia from 24bebce2d9a1 to 9b0e912a1cb9 (12 revisions) (flutter/engine#42072)
https://skia.googlesource.com/skia.git/+log/24bebce2d9a1..9b0e912a1cb9

2023-05-16 michaelludwig@google.com Turn on flushBeforeWritePixels for PowerVR B-Series on ANGLE
2023-05-16 johnstiles@google.com Revert "Add third_party/cityhash"
2023-05-16 johnstiles@google.com Revert "[bazel] Android build: Remove hard dependency on a GPU backend."
2023-05-16 lovisolo@google.com Revert "[bazel] Android build: Add missing Android-specific GPU dependency."
2023-05-16 johnstiles@google.com Revert "[g3] Fix broken build."
2023-05-16 michaelludwig@google.com Match legacy start index for directly drawn dashed RRects
2023-05-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from 9e876585de8c to 6140cf9c51a5 (2 revisions)
2023-05-16 brianosman@google.com Add third_party/cityhash
2023-05-16 kjlubick@google.com Remove one more legacy SkSurface factory
2023-05-15 lovisolo@google.com [g3] Fix broken build.
2023-05-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from eca6699311e8 to 9e876585de8c (1 revision)
2023-05-15 drott@chromium.org Implement font name calls for Fontations-backed typeface

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,johnstiles@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 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-05-16 15:00:17 +00:00
skia-flutter-autoroll
d67e595f1e Roll Fuchsia Linux SDK from 38Oyy28qgYCdt7fEV... to D_EOM3rJ8AMk3-Wex... (flutter/engine#42071)
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 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-05-16 14:58:24 +00:00
skia-flutter-autoroll
9b8245910f Roll Fuchsia Mac SDK from JCoP2Fekj3MBIqskE... to N4LwCRxg0oIevhQ_O... (flutter/engine#42070)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-mac-sdk-flutter-engine
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://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-05-16 13:32:28 +00:00
ColdPaleLight
b2846ca26e [Impeller] Fix issue about saveLayer ignoring opacity of paint with advanced blend mode (flutter/engine#41972)
fix https://github.com/flutter/flutter/issues/126532

without patch
![56V3vfllrj](https://github.com/flutter/engine/assets/31977171/ec51dd6d-6ae0-4dcd-b18f-c023d3a2ad5e)

with patch
![StzXmubqcV](https://github.com/flutter/engine/assets/31977171/232a2de7-05c3-4bbe-93d2-5daa2f8d64b5)
2023-05-16 08:05:16 +00:00
Chris Yang
9640e89255 [ios_platform_view] Only remove platform views from flutter view in reset. (flutter/engine#41709)
Add a class type check during reset when removing the PlatformViews.

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-16 04:21:04 +00:00
godofredoc
1befe22a0a Add drone_dimensions as top level target property. (flutter/engine#42064)
This is to make the configs easier to use for builders running from a drone.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-16 03:13:23 +00:00
Chris Yang
e82760c0ff Fix upload xcresult script in run_tests.py (flutter/engine#42056)
The original PR https://github.com/flutter/engine/pull/41647 forgot to add try-except-raise

fixes https://github.com/flutter/flutter/issues/125823

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-15 23:11:04 +00:00