22483 Commits

Author SHA1 Message Date
skia-flutter-autoroll
ce41b91c3b Manual roll Dart SDK from 9d8df2a5210b to d198f84f5e4e (1 revision) (flutter/engine#42527)
Manual roll requested by aam@google.com

Cannot build log URL because revision "d198f84f5e4e" is invalid: "d198f84f5e4e7740e373bd7ba2f6d9b60298684f" doesn't follow CIPD tag format

2023-06-02 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-166.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 aam@google.com,dart-vm-team@google.com,jonahwilliams@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-06-02 22:34:33 +00:00
Jim Graham
01aeff259a Revert "Reland "add non-rendering operation culling to DisplayListBuilder" (#41463)" (flutter/engine#42525)
Reverts flutter/engine#42330

Some golden failures down the line were discovered in internal testing. See b/285539451
2023-06-02 21:59:50 +00:00
godofredoc
88018a1a5e Move benchmarks no upload to staging. (flutter/engine#42524)
With the benchmarks and upload scripts running as tests within Linux_host_engine - host_release we can move this test to staging in preparation for its deprecation.

Example:
https://ci.chromium.org/p/flutter/builders/prod/Linux%20Production%20Engine%20Drone/191822?

Bug: https://github.com/flutter/flutter/issues/127678

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 21:59:47 +00:00
Mouad Debbar
11cb3ce067 [web] Support platform view creation params (flutter/engine#42255)
1. Wire platform views' `creation params` in the engine.
2. Move acceptable factory signatures to `dart:ui_web`.
3. Don't put any JS types in `dart:ui_web`'s interface.
    -  Use type casting to check at runtime instead.
4. Tests.

Part of https://github.com/flutter/flutter/issues/127030
2023-06-02 21:53:47 +00:00
Michael Goderbauer
298dad2e13 MultiView changes for dart:ui (flutter/engine#42493)
Fixes https://github.com/flutter/flutter/issues/124991.

Framework tests are failing because I need to do a pre-migration of `flutter_test` for the Object -> int change of viewId. That's in https://github.com/flutter/flutter/pull/128092.
2023-06-02 21:29:48 +00:00
godofredoc
9e643b1c23 Use json for json blocks in docs. (flutter/engine#42521)
Some of the code blocks were using yaml even though the content was json.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 21:24:09 +00:00
Mouad Debbar
c93d8d82d6 [web] New platform view API to get view by ID (flutter/engine#41784)
In order to make `HtmlElementView` more useful, we need to expose an API for getting the created platform view element. ~~This would allow `HtmlElementView` to set attributes and styles on the element.~~

This would allow us to add a new callback to the `HtmlElementView` that would return the result of calling the registered platformViewFactory to the user, after it's been created and added to the DOM, so the user can do with it as they please.

Required by https://github.com/flutter/flutter/pull/126176
2023-06-02 21:11:29 +00:00
Jason Simmons
c7254f00aa Generate a unique temporary directory name in the iOS scenario test script (flutter/engine#42520)
This ensures that a retry of this script on CI will not collide with the output directory of a previous run.
2023-06-02 21:08:18 +00:00
Jason Simmons
ea621b65bb Wrap concurrent message loop tasks in an autorelease pool on iOS/Mac platforms (flutter/engine#42459)
See https://github.com/flutter/flutter/issues/127482
2023-06-02 19:58:43 +00:00
godofredoc
195f28dd70 Update engine build config docs. (flutter/engine#41468)
* Removed sections relevan only to a design doc.
* Remove deprecated properties.
* Add docs about default properites.
* Rephrased some sections.

## 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

---------

Co-authored-by: Zachary Anderson <zanderso@users.noreply.github.com>
2023-06-02 12:57:59 -07:00
Camille Simon
3a156b7a42 [Android] Bump unit test robolectric version to 4.10.3 (flutter/engine#42454)
Bumps robolectric version for unit tests to [4.10.3](https://github.com/robolectric/robolectric/releases/tag/robolectric-4.10.3), the latest and greatest. Should support running unit tests with API 33.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 19:45:21 +00:00
Loïc Sharma
a3ef631715 Manually roll ANGLE (flutter/engine#42169)
Rolls ANGLE to e21ecd1b59.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 19:09:02 +00:00
Jason Simmons
3e3bd3d547 [Impeller] Fix a bugprone-unchecked-optional-access warning in SurfaceMTL (flutter/engine#42518) 2023-06-02 11:59:42 -07:00
Ashish Myles
a612a1dfd1 [web] Move announcement live elements to the end of the DOM and make them divs instead of labels. (flutter/engine#42432)
- Moving them to the end prevents the screen reader from landing on them before the relevant content.
- Making them `div`s instead of `label`s prevents some screen readers (ChromeVox in particular) from landing on the live elements when the live elements are empty.

Fixes https://github.com/flutter/flutter/issues/127862.
2023-06-02 18:33:24 +00:00
godofredoc
f61e6b391f Add cpu as drone dimension to mac ios build. (flutter/engine#42514)
This is because they are using jazzy which is not currently supported in our arm64 cipd packages of ruby.

Bug: https://github.com/flutter/flutter/issues/128098

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 17:33:29 +00:00
godofredoc
648918469b Move benchmarks no upload to a test. (flutter/engine#42356)
This is moving the execution of the benchmarks script to a test inside the existing host_relese configuration. It keeps the same coverage with and removes one build.

Bug: https://github.com/flutter/flutter/issues/127678

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 17:03:58 +00:00
Camille Simon
e1214274a7 [Android] Change Linux Android Emulator Tests to run on a device running API 33 (flutter/engine#42492)
Changes Linux Android Emulator Tests to run on a device running API 33.

flutter/flutter/issues/127682

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 16:10:28 +00:00
Jason Simmons
862953134f [Impeller] clang-tidy fixes (flutter/engine#42503) 2023-06-02 14:23:24 +00:00
Jesse Seales
733739e295 Allow for optional label to trigger vuln scan on patch PRs (flutter/engine#42494)
This change introduces the ability to allow for the vulnerability scanning workflow to be triggered by the 'vulnerability scan' label on PRs. If the label is not applied, the workflow is skipped completely on PRs. This will allow those working to patch a vulnerability to check for resolution before landing the change.

Testing this change: https://github.com/flutter/engine/actions/runs/5059129544

b/283970087

*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-06-02 13:42:07 +00:00
skia-flutter-autoroll
2bafc1cb1d Roll Fuchsia Linux SDK from X4Pkixxtt3BkjRW9P... to PuYA-6NVHeHPlkCdk... (flutter/engine#42511)
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 jonahwilliams@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-06-02 09:08:10 +00:00
skia-flutter-autoroll
9068e0d490 Roll Skia from 02e706e9761b to 7777ee2bf7ef (2 revisions) (flutter/engine#42508)
https://skia.googlesource.com/skia.git/+log/02e706e9761b..7777ee2bf7ef

2023-06-02 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 4dbecc7c97a2 to e858a70c6849
2023-06-02 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 5165b1499e43 to 4dbecc7c97a2 (12 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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-02 07:52:21 +00:00
Tong Mu
dc666a37db Revert "[Rasterizer] Make resubmit information temporary" (flutter/engine#42455)
Reverts flutter/engine#42001 due to being the likely culprit to
flakiness https://github.com/flutter/flutter/issues/127936 .
2023-06-01 21:50:47 -07:00
skia-flutter-autoroll
71b934be4a Roll Skia from f4854a3d009d to 0c75f1877b37 (1 revision) (flutter/engine#42505)
https://skia.googlesource.com/skia.git/+log/f4854a3d009d..0c75f1877b37

2023-06-02 johnstiles@google.com Add WGSL support for for-loops.

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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-02 04:48:37 +00:00
skia-flutter-autoroll
859e478628 Roll Dart SDK from 0d3c310fd6d9 to 3d4d29d8f16b (3 revisions) (flutter/engine#42502)
https://dart.googlesource.com/sdk.git/+log/0d3c310fd6d9..3d4d29d8f16b

2023-06-01 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-163.0.dev
2023-06-01 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-162.0.dev
2023-06-01 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-161.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,jonahwilliams@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-06-02 00:51:22 +00:00
skia-flutter-autoroll
90caff0bbc Roll Skia from 082a7d1f72f7 to f4854a3d009d (4 revisions) (flutter/engine#42500)
https://skia.googlesource.com/skia.git/+log/082a7d1f72f7..f4854a3d009d

2023-06-01 jamesgk@google.com [ganesh] Use full-width floats when calculating dst read coords
2023-06-01 brianosman@google.com Replace skvx::bit_pun with sk_bit_cast
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from dbffa5d3af55 to e21ecd1b59f7 (3 revisions)
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from f2d6835ec116 to 01f6b3d42c73 (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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-02 00:07:10 +00:00
godofredoc
a11ac35035 Do not retry lint or clang tidy tests. (flutter/engine#42498)
Retries on lints and clang tidy were hiding the issues as timeouts rather than providing the fail signal right away.

Bug: https://github.com/flutter/flutter/issues/128083

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-01 23:48:20 +00:00
Dan Field
bc1510d361 [Impeller] Compute in Vulkan (flutter/engine#42294)
Fixes https://github.com/flutter/flutter/issues/110622

- Updates capabilities checks for support
- Fixes a bug where SSBOs were being treated as UBOs in render (and does the same work in compute).
- Fixes CommandEncoderVK::Submit so that it takes a completion callback and CommandBufferVK uses it to avoid sending a `kComplete` status to callers when it should really be `kPending`.
2023-06-01 23:40:51 +00:00
Jonah Williams
b06489fa4b [Impeller] Emplace directly into host buffer (avoid VBB) for text data (flutter/engine#42484)
From local testing, this shaves off about 0.3-4 ms of pure allocation overhead from https://github.com/flutter/flutter/issues/127760

### Before

![image](https://github.com/flutter/engine/assets/8975114/55701559-fba8-4f11-b606-f819d197626e)

### After

![image](https://github.com/flutter/engine/assets/8975114/b6843c13-d6c7-4364-86b1-c78e216307b3)
2023-06-01 22:34:58 +00:00
John McCutchan
d72aace3ef Ensure PlatformView engine life cycle callbacks are invoked (flutter/engine#42491)
- Move some code off of the message handler onto the parent class.
- Call the engine life cycle callbacks on PlatformView regardless of
which mode is used.
- Re-enable and fix test that these callbacks are invoked.

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

*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-06-01 14:51:25 -07:00
skia-flutter-autoroll
8bcecafd93 Roll Skia from c408e8e9cc96 to 082a7d1f72f7 (8 revisions) (flutter/engine#42496)
https://skia.googlesource.com/skia.git/+log/c408e8e9cc96..082a7d1f72f7

2023-06-01 cmumford@google.com [infra] temporarily remove RadeonHD8870M-x86_64-Debug-All-Graphite_Metal from CQ
2023-06-01 brianosman@google.com Some SkVx cleanup and safety checks
2023-06-01 brianosman@google.com Refine type-checking in sk_unaligned_load/store
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from 552e7468f687 to dbffa5d3af55 (2 revisions)
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from b07eb69df10e to e9d745270f47 (2 revisions)
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from 879c15fdcc06 to f2d6835ec116 (4 revisions)
2023-06-01 brianosman@google.com Workaround clang/GCC bug (attributes on re-declared constructors)
2023-06-01 johnstiles@google.com Improve sin/cos algorithm in Raster Pipeline.

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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-01 21:08:08 +00:00
Bruno Leroux
849e5fb2f6 [Windows - TextInput] Insert new line only when TextInputAction.newline (flutter/engine#42244)
## Description

This PR updates the Windows text input plugin to avoid adding a new line on a multiline text field when action is not set to `TextInputAction.newline`.

## Related Issue

Fixes https://github.com/flutter/flutter/issues/125879 as Linux and macOS implementations are merged.
Linux PR: https://github.com/flutter/engine/pull/41895
macOS PR: https://github.com/flutter/engine/pull/41977

## Tests

Adds 2 tests.
2023-06-01 20:59:13 +00:00
Zachary Anderson
8c01f4088b Revert "Move clang tidy v2 build to prod." (flutter/engine#42495)
Reverts flutter/engine#41985

This is also suffering some the same issue as the Linux clang-tidy shards reverted in https://github.com/flutter/engine/pull/42434.

e.g.
https://ci.chromium.org/ui/p/flutter/builders/try/Mac%20mac_clang_tidy/867/overview
https://ci.chromium.org/ui/p/flutter/builders/try/Mac%20Engine%20Drone/210269/overview
2023-06-01 20:54:08 +00:00
林洵锋
54b32090de Add myself to AUTHORS (flutter/engine#42406)
🎉 [PR](https://github.com/flutter/engine/pulls?q=author%3ALinXunFeng)
2023-06-01 20:22:12 +00:00
Brandon DeRosier
666563a554 [Impeller] Add Impeller Metal support in the embedder API (flutter/engine#42411)
Part of https://github.com/flutter/flutter/issues/112230.

Now seemed like the right time to sneak this in:
* We have large desktop refactors on the horizon (multi-window).
* We're starting to land optimizations that complicate the surface behavior such as wide gamut and dirty regions.
* We have plans to migrate the iOS embedder to use the embedder API (https://github.com/flutter/flutter/issues/112232).

![Screenshot 2023-05-30 at 6 59 48 PM](https://github.com/flutter/engine/assets/919017/16616be8-f94e-42ba-8a97-4ce4aa29e662)
2023-06-01 20:10:58 +00:00
toneyzeng
8c80858576 Support DisposalMethod::kRestorePrevious in MultiFrameCodec and fix the apng problem. (flutter/engine#42153)
Support DisposalMethod::kRestorePrevious in MultiFrameCodec and fix the apng problem.

![image](https://github.com/flutter/engine/assets/5031712/48bb95c1-10b3-4736-a42e-46281d355cd3)

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-01 20:07:18 +00:00
Callum Moffat
7daf5e001c Fix crash getting spell-check suggestions (flutter/engine#42466)
On some Samsung devices Flutter with spell-check enabled will crash when typing/moving near the ">" character. 

Stack trace is

```
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.textservice.SentenceSuggestionsInfo.getSuggestionsCount()' on a null object reference
       at io.flutter.plugin.editing.SpellCheckPlugin.onGetSentenceSuggestions(SpellCheckPlugin.java:26)
       at android.view.textservice.SpellCheckerSession.lambda$handleOnGetSentenceSuggestionsMultiple$1$android-view-textservice-SpellCheckerSession(SpellCheckerSession.java:224)
       at android.view.textservice.SpellCheckerSession$$ExternalSyntheticLambda0.run(:4)
       at android.os.Handler.handleCallback(Handler.java:942)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loopOnce(Looper.java:226)
       at android.os.Looper.loop(Looper.java:313)
       at android.app.ActivityThread.main(ActivityThread.java:8747)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
```
2023-06-01 19:37:16 +00:00
Brandon DeRosier
205d491371 Fix lint in rectangle packer (flutter/engine#42489) 2023-06-01 11:54:09 -07:00
Jason Simmons
d473f0d24d Wait for GL command completion in the ExternalTextureGLRefreshedTooOften test (flutter/engine#42438)
This test sometimes caused assertion failures when running on Windows with ANGLE.  The process may be unable to safely clean up global objects if GL commands are pending when the test exits.
2023-06-01 18:46:16 +00:00
Mouad Debbar
8c89ed143a Reland "[web] Remove the JS API for url strategy (#42134)" (flutter/engine#42486)
Initially landed in https://github.com/flutter/engine/pull/42134
Then reverted in https://github.com/flutter/engine/pull/42468

It failed because we changed `UrlStrategy` to an `interface` which prevents "extending".

The only change in the reland is the removal of the `interface` keyword.
2023-06-01 18:22:03 +00:00
skia-flutter-autoroll
d465bbec19 Roll Skia from f5bc3d12f0eb to c408e8e9cc96 (9 revisions) (flutter/engine#42487)
https://skia.googlesource.com/skia.git/+log/f5bc3d12f0eb..c408e8e9cc96

2023-06-01 michaelludwig@google.com [skif] Remove legacy SkBlendImageFilter impl
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from a6525fe76b4c to b07eb69df10e (1 revision)
2023-06-01 kjlubick@google.com Remove shim gni filegroups
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll SwiftShader from f549d5e6c663 to ae667fe96db9 (2 revisions)
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from b0e9bbd79fb6 to 552e7468f687 (5 revisions)
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from b251c8aeb681 to 879c15fdcc06 (7 revisions)
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from 7b0dd4803e80 to a6525fe76b4c (2 revisions)
2023-06-01 johnstiles@google.com Avoid taking the address of a vector-component in WGSL.
2023-06-01 johnstiles@google.com Make Swizzle::MaskString a public method.

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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-01 18:20:48 +00:00
Kevin Lubick
1df7a98848 Clean up Skia includes around SkSurfaceCharacterization (flutter/engine#42485)
While contemplating a change to SkSurfaceCharacterization, I was curious
who was using this. Flutter #included it, but never actually seemed to
use it. Thus, I removed includes of it and other unnecessary #includes
in those same files, as well as addressing follow-on compile errors.

## 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.
- [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.
- [ ] 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-06-01 14:08:46 -04:00
Jim Graham
a98c1eb274 Reland "add non-rendering operation culling to DisplayListBuilder" (#41463) (flutter/engine#42330)
The original PR caused some golden test failures down the line, likely due to bad analysis of when the combined BlendMode and color would result in a NOP situation.

This PR adds tests that go through every BlandMode and pair it with a variety of colors and Color/ImageFilters to verify that the operations are only omitted when they actually produce no change in the output. It also checks the validity of the "modifies_transparent_black" property of DisplayLists which can be used in place of the current CanvasSpy/DlOpSpy classes.

The description from the [previous PR](https://github.com/flutter/engine/pull/41463) updated with the new name of the DL property:

---------------------------------
This optimization avoids recording unnecessary render operations that will not affect the output and also eliminates the need for "draw detection" mechanisms like `DlOpSpy` and `CanvasSpy` by remembering if any non-transparent operations were included. The `DlOpSpy` unit tests were updated to check if the results from that object match the new `DisplayList::modifies_transparent_black()` method.

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

In addition, this change will unblock some other Issues:

- https://github.com/flutter/flutter/issues/125318
- https://github.com/flutter/flutter/issues/125403
2023-06-01 17:44:04 +00:00
skia-flutter-autoroll
02a8fa9b07 Roll Skia from 934d90ab7370 to f5bc3d12f0eb (1 revision) (flutter/engine#42482)
https://skia.googlesource.com/skia.git/+log/934d90ab7370..f5bc3d12f0eb

2023-06-01 kjlubick@google.com Move all ColorFilter subclasses to src/effects/colorfilters

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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-01 16:05:06 +00:00
skia-flutter-autoroll
9531266417 Roll Fuchsia Linux SDK from htio0wC3kDb9tB1Wd... to X4Pkixxtt3BkjRW9P... (flutter/engine#42481)
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 jonahwilliams@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-06-01 15:59:19 +00:00
skia-flutter-autoroll
e478c5e117 Roll ICU from a2961dc659b4 to 1eea59cabae0 (2 revisions) (flutter/engine#42479)
a2961dc659..1eea59caba

2023-05-30 dayeung@chromium.org [ICU 73-1] Update main to 73-1
2023-05-26 megjablon@google.com Clean up language filters

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

To file a bug in ICU: https://github.com/unicode-org/icu
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-06-01 12:43:30 +00:00
skia-flutter-autoroll
685710b2cf Roll Skia from 1573bd65a399 to 6c7e1bccb539 (2 revisions) (flutter/engine#42475)
https://skia.googlesource.com/skia.git/+log/1573bd65a399..6c7e1bccb539

2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 5165b1499e43 to 1798e4052850
2023-06-01 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from a3d885eb0ff8 to 5165b1499e43 (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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-01 07:26:25 +00:00
skia-flutter-autoroll
a1b56f1110 Roll Skia from d9f959926dad to f4f569aa5236 (7 revisions) (flutter/engine#42470)
https://skia.googlesource.com/skia.git/+log/d9f959926dad..f4f569aa5236

2023-05-31 johnstiles@google.com Add runtime-shader entrypoint to WGSL code generator.
2023-05-31 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from 29ad234a5b18 to 7b07818eb5fa (3 revisions)
2023-05-31 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from 3ee81bbacfb2 to 7cb5fc8c2da9 (4 revisions)
2023-05-31 brianosman@google.com Add default (zero) initialization to SkRect/SkIRect
2023-05-31 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from eaa5327992fd to 29ad234a5b18 (3 revisions)
2023-05-31 lovisolo@google.com [bazel] Add ANDROID_DEVICES dict, and use it everywhere.
2023-05-31 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from 80f062cd2828 to 54972d957108 (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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-06-01 02:23:08 +00:00
Jonah Williams
fd5cbcfe04 Revert "[web] Remove the JS API for url strategy" (flutter/engine#42468)
Reverts flutter/engine#42134

This is blocking the engine into framework roller:

See: https://cirrus-ci.com/task/5610586755563520

```
Analyzing 3 items...                                            
  error • The class 'UrlStrategy' can't be extended outside of its library because it's an interface class • dev/integration_tests/web_e2e_tests/test_driver/url_strategy_integration.dart:48:31 • invalid_use_of_type_outside_library
1 issue found. (ran in 321.8s)
  🙙  🙛  
  ```
2023-06-01 01:53:05 +00:00
skia-flutter-autoroll
5b4b7b7c23 Roll Fuchsia Linux SDK from lSKDoGVypQfTMYUZe... to htio0wC3kDb9tB1Wd... (flutter/engine#42463)
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 jonahwilliams@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-06-01 00:05:21 +00:00
Mouad Debbar
65b25427f0 [web] Remove the JS API for url strategy (flutter/engine#42134)
Finally, we can remove this JS global function for customizing the url strategy.

Why I think we don't need to go through an official deprecation process:

1. It was initially made for internal use in Google3, and right now there are no references to it.
2. There's no public documentation of this JS function.
3. External users customize their url strategy through `flutter_web_plugins` which has been [migrated](https://github.com/flutter/flutter/pull/123443) already.
2023-05-31 21:37:18 +00:00