26344 Commits

Author SHA1 Message Date
skia-flutter-autoroll
0b1158bdb7 Roll Skia from 54ecc23acf31 to 11b1a958c2ac (1 revision) (flutter/engine#51440)
https://skia.googlesource.com/skia.git/+log/54ecc23acf31..11b1a958c2ac

2024-03-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from bd8fc9f85c40 to 50284718beca (21 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 bdero@google.com,brianosman@google.com,fmalita@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-15 18:02:21 +00:00
Jim Graham
3942f01773 [DisplayList] Pre-Compute saveLayer bounds in DLBuilder (flutter/engine#50935)
Previously the DisplayListBuilder would only pass along bounds for a saveLayer when they were supplied by the caller that was building the DisplayList. This would require Impeller to use post-processing of the EntityPass lists to compute them on its own.

DisplayList can now compute those bounds as it builds the DisplayList to save dispatch clients from having to do so on their own. It will also provide an indicator in the case when the caller supplied bounds that ended up being too small to capture all of the content, causing clipping by the layer render target.
2024-03-15 17:45:05 +00:00
skia-flutter-autoroll
29b329e44a Roll Fuchsia Linux SDK from da-siZ7wPDA0Z0wXJ... to nTth7xxzAfENAJjMH... (flutter/engine#51446)
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 bdero@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-15 17:43:07 +00:00
skia-flutter-autoroll
132d712fcd Roll Dart SDK from 406955fe6950 to 03cc4d817056 (1 revision) (flutter/engine#51441)
https://dart.googlesource.com/sdk.git/+log/406955fe6950..03cc4d817056

2024-03-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-236.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 bdero@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-15 17:43:05 +00:00
Dan Field
bc4ed312b3 Add a pixel test to cover multiple clips with a BDF (flutter/engine#51431)
Same test as in https://github.com/flutter/engine/pull/51416.

This test should pass without the revert here because the StC related changes make the optimized path work again.
2024-03-15 17:39:08 +00:00
Tomasz Gucio
1767a8c6d6 Add missing baseline check in text layout tests (flutter/engine#51444)
This PR adds a check for the `baseline` value in text layout service tests that appears to be missing.

Test-exempt: increasing test coverage only.
2024-03-15 17:39:06 +00:00
skia-flutter-autoroll
d432c7ce04 Roll Skia from 52bb1539c5cf to 54ecc23acf31 (11 revisions) (flutter/engine#51438)
https://skia.googlesource.com/skia.git/+log/52bb1539c5cf..54ecc23acf31

2024-03-14 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 14272f958e34 to c73858de2cb7 (6 revisions)
2024-03-14 kjlubick@google.com Remove flutter_defines
2024-03-14 bungeman@google.com Remove SkTypeface::onGetAdvancedMetrics base implementation
2024-03-14 robertphillips@google.com [graphite] Fix ImageWrapTextureMipmapsTest Protected handling
2024-03-14 bungeman@google.com Remove Sfntly support
2024-03-14 lehoangquyen@chromium.org Graphite/Dawn: increase max cached textures' bind groups to 4096.
2024-03-14 fmalita@chromium.org Add GrGLCoreFunctions.h to public.bzl
2024-03-14 kjlubick@google.com Avoid shadowing fStream in SkWuffsCodec
2024-03-14 fmalita@chromium.org [skottie] SkottieTool missing header
2024-03-14 kjlubick@google.com Avoid copying data multiple times in SkCodecImageGenerator
2024-03-14 kjlubick@google.com Fix skottie dependency for canvaskit

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 bdero@google.com,brianosman@google.com,fmalita@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-15 03:54:12 +00:00
Matan Lurey
898ffe5b14 Add android_debug_unopt_arm64 to local_engine.json. (flutter/engine#51427)
As written:

```sh
flutter % et query builders | grep unopt_arm64                           
   "android_debug_unopt_arm64" config
   "host_debug_unopt_arm64" config
```

Yay!
2024-03-15 03:18:23 +00:00
Matan Lurey
f223f5044b Remove the Android-drawn surface rendering from scenario_app. (flutter/engine#51433)
Closes https://github.com/flutter/flutter/issues/144365.

Wasn't able to delete as much as I wanted (it's used by the video-rendering code path), but it should fix the problem we're seeing. I expect this change to remove the bottom (Android-rendered) image from our golden files for `ExternalTexturesTests`.
2024-03-15 03:18:21 +00:00
zijiehe@
fb4d1819e7 [Fuchsia] Remove the use of //build/ in fuchsia (flutter/engine#51072)
### Motivation of the change:

Both dart and flutter are using fairly outdated gn-sdk without properly maintained. Currently @hjfreyer is working on version'ed IDK / SDK libs which requires changes in gn-sdk to use the right version of the libs in fuchsia/sdk/obj/{arch}-api-{level} rather than the one in the fuchsia/sdk/arch. But current implementation does not support choosing the right version.

### Blocking issue:

The new gn-sdk (in flutter/tools/fuchsia/gn-sdk) generates multiple BUILD.gn files rather than a large BUILD.gn the previous version created. So most of the build rules need to switch from the old `fidl:{api}` build rule to `fidl/{api}` rule. The same change will happen in the dart/sdk, i.e. http://go/dart-reviews/356924. But since the two repos cannot have one single atomic change, changing either side first will cause flutter to break. E.g. the linkage error caused by duplicated symbols will happen if we change the dart/sdk first, since in flutter, it will still refer to the old build rules in the middle.

### Solutions:

Ideally we can create redirect rules in the current `build/fuchsia` buildroot tree to redirect the old rules into the new one, so we can make the change in the flutter first then dart/sdk. But creating the rules is not trivial and will only be used once.

So an alternative solution is

- pause the dart/sdk -> flutter roll
- submit dart/sdk change (http://go/dart-reviews/356924)
- update this change to manually bring the dart/sdk change, namely the `dart_revision` in the DEPS file and signatures in the ci/licences.
- resume the dart/sdk -> flutter roll.

But it requires this change itself to be reviewed first, and I'd like to know your opinion before moving forward.

See corresponding dart/sdk change at http://go/dart-reviews/356924.

### //build/fuchsia/ from buildroot should be removed after this change.

Bug: [b/40935282](https://issues.chromium.org/issues/40935282?pli=1&authuser=0)

FYI: @hjfreyer 

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-03-15 02:52:21 +00:00
Matan Lurey
9daf9265d9 Add some header-goodies for et. (flutter/engine#51434)
I.e. a "open issues" and "file an issue" link.

---------

Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
2024-03-14 16:38:46 -07:00
Jonah Williams
d2ecc4e431 [Impeller] revert glyph atlas texture recycling. (flutter/engine#51428)
This is a speculative fix for https://github.com/flutter/flutter/issues/144331 . I don't have a repro, but I think this may be due to https://github.com/flutter/flutter/issues/144498 , wherein setting the contents of a texture is unsynchronized.
2024-03-14 23:22:24 +00:00
auto-submit[bot]
3f6a94fb39 Reverts "Add DisplayList Region and Transform benchmarks to CI (#51429)" (flutter/engine#51432)
Reverts: flutter/engine#51429
Initiated by: bdero
Reason for reverting: Engine tree breakage

```
+ /b/s/w/ir/cache/builder/src/out/host_release/display_list_region_benchmarks --benchmark_format=json
/b/s/w/ir/cache/builder/src/flutter/testing/benchmark/generate_metrics.sh: line 17: /b/s/w/ir/cache/builder/src/out/host_release/display_list_region_benchmarks: No such file or directory
```
Original PR Author: flar

Reviewed By: {godofredoc}

This change reverts the following previous change:
These benchmark results aren't shown in Skia perf because they were never added to the CI tasks to run.
2024-03-14 23:06:26 +00:00
Jim Graham
48d118fb05 Add DisplayList Region and Transform benchmarks to CI (flutter/engine#51429)
These benchmark results aren't shown in Skia perf because they were never added to the CI tasks to run.
2024-03-14 22:41:31 +00:00
Matan Lurey
d4cb8de3ba Reduce code-duplication a bit and add more error context across SkiaGoldClient. (flutter/engine#51426)
- Replaced manual `StringBuffer()..writeln('stdout: ...')` with a single
`SkiaGoldProcessError` constructor.
- Updated tests to make sure it's working.

_/cc @dnfield @jonahwilliams FYI only._
2024-03-14 14:55:40 -07:00
Zachary Anderson
da1a3b464c [et] build and run commands disable RBE with a flag or when not available (flutter/engine#51404) 2024-03-14 14:30:41 -07:00
Matej Knopp
4bd6cb188b Fix flakiness in FlutterVSyncWaiterTest.VSyncWorks and FlutterDisplayLinkTest.WorkaroundForFB13482573 (flutter/engine#51405)
- Removes potential source of flakiness where the tests assumes that
scheduled block will be performed within certain time period, which,
despite the tolerances may not be the case on test runner.

- Ensures that `viewDidChangeWindow` notification is not received while
invalidating the displayLink and removing the display link view, which
could deadlock at the end of `WorkaroundForFB13482573` test because the
notification would come while `FlutterDisplayLink` is in `@synchronized`
block.

*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 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
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[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
2024-03-14 22:00:34 +01:00
Jonah Williams
0ffd546a8a [Impeller] revert round out. (flutter/engine#51395)
This isn't exactly the right fix, but it is a straight revert to fix https://github.com/flutter/flutter/issues/144213
2024-03-14 20:01:10 +00:00
K Lubick
14255b337b Remove always-true skia_enable_flutter_defines (flutter/engine#51423)
Now that Flutter owns the list of defines to add to Skia's build, we don't need to toggle it on or off. This allows Skia to delete the setting (https://skia-review.googlesource.com/c/skia/+/826398)

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-03-14 18:57:20 +00:00
Hassan Toor
5ca890f401 [web] - fix text editing IME composition interruption on geometry updates (flutter/engine#51323)
This change fixes an issue where IME composition gets interrupted when the `setEditableSizeAndTransform` platform message is received mid-composition.  This occurs when a multiline input expands and needs to inform the underlying `textarea` to update its size.  

Fixes https://github.com/flutter/flutter/issues/134797
Fixes https://github.com/flutter/flutter/issues/98817
2024-03-14 16:58:45 +00:00
Jim Graham
8459af91d6 Avoid unnecessary transform resets for pixel snapping (flutter/engine#51337)
During some new development work that might make transform resets more expensive we realized that the resets were mostly coming from the calls to snap the transform to a pixel translate value and many of those were NOPs since the transform was already on a pixel translate value. This PR will avoid those trivially unnecessary reset operations.
2024-03-14 16:33:13 +00:00
gaaclarke
74ed8ebed6 [Impeller] started asserting golden test runner has fatal impeller validations (flutter/engine#51357)
fixes https://github.com/flutter/flutter/issues/145017

This works by removing the conditional compilation for validation and
turning them to be fatal in the test runner's main.

## 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 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
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[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
2024-03-14 09:05:34 -07:00
Matan Lurey
31b0fb1ea3 Remove or replaced unused or duplicate code in SkiaGoldClient. (flutter/engine#51399)
- `get isAvailable` -> `SkiaGoldClient.isAvailable()`
- `get isLuciEnv` -> `SkiaGoldClient.isLuciEnv()`
- Remove unused `SkiaGoldHttpOverrides`
2024-03-14 08:45:34 -07:00
skia-flutter-autoroll
4ae115f220 Roll Skia from f4ce9fc2ec45 to 52bb1539c5cf (1 revision) (flutter/engine#51415)
https://skia.googlesource.com/skia.git/+log/f4ce9fc2ec45..52bb1539c5cf

2024-03-14 aperez@igalia.com Add Epoxy support for GrGLMakeNativeInterface

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 bdero@google.com,brianosman@google.com,fmalita@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-14 14:51:38 +00:00
skia-flutter-autoroll
9921e91c3f Roll Fuchsia Linux SDK from mYZPzdM3hCE1TA91s... to da-siZ7wPDA0Z0wXJ... (flutter/engine#51411)
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 bdero@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-14 08:04:12 +00:00
skia-flutter-autoroll
dc11dbc5e9 Roll Skia from cac09f152d9b to e175e61d6259 (2 revisions) (flutter/engine#51408)
https://skia.googlesource.com/skia.git/+log/cac09f152d9b..e175e61d6259

2024-03-14 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from bd8fc9f85c40 to 41b9b1d692c7
2024-03-14 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 7456bed4cecf to bd8fc9f85c40 (15 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 bdero@google.com,brianosman@google.com,fmalita@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-14 06:55:39 +00:00
skia-flutter-autoroll
bf466b6b65 Roll Dart SDK from b1e31a41fb17 to d006b668dcb2 (1 revision) (flutter/engine#51409)
https://dart.googlesource.com/sdk.git/+log/b1e31a41fb17..d006b668dcb2

2024-03-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-231.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 bdero@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-14 06:47:14 +00:00
Matan Lurey
a954d2cfd4 Remove --enable-impeller-{backend} flags (always True). (flutter/engine#51402)
Closes https://github.com/flutter/flutter/issues/142725.
2024-03-13 22:13:29 -07:00
skia-flutter-autoroll
b1f62928d5 Roll Dart SDK from abc8988e9dac to b1e31a41fb17 (1 revision) (flutter/engine#51403)
https://dart.googlesource.com/sdk.git/+log/abc8988e9dac..b1e31a41fb17

2024-03-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-230.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 bdero@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-14 02:18:24 +00:00
Loïc Sharma
fbfbc4393f [Embedder API] Add multi-view present callback (flutter/engine#51267)
Adds `FlutterCompositor.present_view_callback` to the embedder API. This new present callback adds a `view_id` member to allow embedders know which view is being presented.

The embedder API does not allow embedders to create multiple views yet. This will be added in a future  pull request.

Design doc: https://flutter.dev/go/multi-view-embedder-apis

Pull request that migrates the Windows embedder to this new embedder API: https://github.com/flutter/engine/pull/51293

Part of https://github.com/flutter/flutter/issues/144806
Part of https://github.com/flutter/flutter/issues/142845

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-03-14 00:22:22 +00:00
skia-flutter-autoroll
7a710c28dd Roll Skia from a315e4572f4e to cac09f152d9b (10 revisions) (flutter/engine#51398)
https://skia.googlesource.com/skia.git/+log/a315e4572f4e..cac09f152d9b

2024-03-13 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from b440ca2fa89c to d52adb9ccd98 (1 revision)
2024-03-13 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 91aab7b7e25f to e6550748fb1e (4 revisions)
2024-03-13 jlavrova@google.com Fix SkTypeface_Fuchsia creation
2024-03-13 fmalita@google.com Revert "Use Chromium's abseil-cpp to unblock the Dawn roll"
2024-03-13 fmalita@chromium.org Use Chromium's abseil-cpp to unblock the Dawn roll
2024-03-13 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from f16eea308ae1 to 66bc9cfa0014 (21 revisions)
2024-03-13 drott@chromium.org [Fontations-backend] Part 2 of getAdvancedMetrics()
2024-03-13 jlavrova@google.com Creating named instances for each variation in a variable font
2024-03-13 bungeman@google.com Ensure generated ICC profiles have non-empty descriptions
2024-03-13 kjlubick@google.com Remove SK_METAL defines from GrBackendSemaphore

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 bdero@google.com,brianosman@google.com,fmalita@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-14 00:06:27 +00:00
Tong Mu
ba26f6ee8b Multi-view View Metrics (flutter/engine#46174)
This PR adds `FlutterWindowMetricsEvent.viewId` to the embedder API.

This PR only tests the ability to send metrics event for the implicit
view. Once multiple views can be added via embedder API, we should test
the ability to send different IDs.

Part of https://github.com/flutter/flutter/issues/144806
Part of https://github.com/flutter/flutter/issues/142845

## Pre-launch Checklist

- [ ] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [ ] I read and followed the [Flutter Style Guide] 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 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.

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
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[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
2024-03-13 17:00:17 -07:00
Yegor
826074672d [web] make text more crawlable; fix a JAWS bug (flutter/engine#50794)
On Windows, where JAWS is a popular screen reader and, [unfortunately](https://github.com/FreedomScientific/standards-support/issues/759), ignores `aria-label` on empty elements, and for user agents that are known web crawlers (that also ignore `aria-label`), render semantic text into the DOM using an additional `<span>` element.

Fixes https://github.com/flutter/flutter/issues/122607
2024-03-13 23:03:00 +00:00
John McCutchan
2520e4615c Disable cleaning up ImageReaders in memory pressure callback (flutter/engine#51391)
We originally added this cleanup code to work around a Samsung-specific
Android 14 bug where after resuming an application any ImageReaders are
busted. According to the Android team what Samsung is doing is a
violation of the "spec".

The fix ended up breaking VirtualDisplay platform views after a
suspend/resume because the surface we pass to the VirtualDisplay is no
longer valid after the resume and we have no way of fixing that.

This PR removes the Samsung-specific hacky fix, restoring the behaviour
of VirtualDisplay backed platform views.

We have an internal bug with Samsung to address the root cause.
2024-03-13 15:40:11 -07:00
skia-flutter-autoroll
caacbc4f1b Roll Dart SDK from 18ec60df0774 to abc8988e9dac (1 revision) (flutter/engine#51388)
https://dart.googlesource.com/sdk.git/+log/18ec60df0774..abc8988e9dac

2024-03-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-229.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 bdero@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-13 22:05:04 +00:00
John McCutchan
aba108f662 Small improvements to et lint command (flutter/engine#51372)
- Default to dumping out lint logs (can be disabled with `--quiet`
flag).
- Add Logger.fatal which logs an error and throws a FatalError which is
caught in main.
- Simplify `findDartBinDirectory` implementation.
- Make JSON serialized process artifacts more human readable.
2024-03-13 13:39:08 -07:00
Jonah Williams
b5e86684b0 [Impeller] cleanup and test vk image usage flags. (flutter/engine#51301)
Cleanups to the vk::ImageUsageFlagBits

* add unit tests
* remove input attachment from depth stencil
* remove defensive checks
2024-03-13 19:39:01 +00:00
skia-flutter-autoroll
8f4cbc1831 Roll Skia from 1ad0d0fabe7a to a315e4572f4e (7 revisions) (flutter/engine#51377)
https://skia.googlesource.com/skia.git/+log/1ad0d0fabe7a..a315e4572f4e

2024-03-13 brianosman@google.com Remove SkSerialProcs and SkDeserialProcs from Slug serialization
2024-03-13 robertphillips@google.com [graphite] Add Perlin noise shader to Precompilation system
2024-03-13 robertphillips@google.com Add CoordClampShader to Precompilation system
2024-03-13 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from e649d06fbad1 to d9ecf127ac94
2024-03-13 briansalomon@gmail.com [graphite] SkImage::WrapTexture allows client to request mipmap gen
2024-03-13 drott@chromium.org [Fontations-backend] Initial implementation of onGetAdvancedMetrics()
2024-03-13 drott@chromium.org [Fontations-backend] rustfmt ffi.rs

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 bdero@google.com,brianosman@google.com,fmalita@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-13 18:53:12 +00:00
Matej Knopp
9fac4c3db6 Reland "Reland: [macOS] Use CVDisplayLink to drive repaint" (flutter/engine#51210)
[Original reland](https://github.com/flutter/engine/pull/51126) was
[reverted](f29d809efb)
because of skiaperf regressions. The regressions are caused by runner
machines running display at 30hz.

## 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 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
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[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
2024-03-13 19:20:16 +01:00
Jonah Williams
0cdb8526d2 [Impeller] fix heap selection process for YUV textures. (flutter/engine#51262)
This does not fix the emulator weirdness!

Today we automatically select the first memory type index requested by an AHB. The device in question may lack that memory type index, so we can then fail to import the AHB. Additionally, if we do fail we need to ensure that we don't attempt to display the texture.
2024-03-13 18:18:48 +00:00
zijiehe@
224b7f08ff [Fuchsia] Enable sound null safety everywhere (flutter/engine#51355)
This change enables null_safety on fuchsia everywhere and remove the legacy conditions.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-03-13 17:56:05 +00:00
gaaclarke
0c6a230ad2 [Impeller] added missing golden test for DrawScaledTextWithPerspectiveSaveLayer (flutter/engine#51368)
related:
 - https://github.com/flutter/flutter/issues/130633
 - https://github.com/flutter/engine/pull/51343

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-03-13 17:49:49 +00:00
Juanjo Tugores
db857bd325 Implement PlatformDispatcher.requestViewFocusChange on web. (flutter/engine#50535)
Implement PlatformDispatcher.requestViewFocusChange on web. 

Relevant Issues are:

* Design doc: https://flutter.dev/go/focus-management 
* Focus in web multiview: https://github.com/flutter/flutter/issues/137443
* Platform dispatcher changes: https://github.com/flutter/engine/pull/49841

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-03-13 17:37:44 +00:00
Jonah Williams
674874e613 [Impeller] attempt to get validation errors from CI unittests. (flutter/engine#51341)
Enables Vulkan validation layers for macOS and linux builds, enables macOS validation for macOS builds.

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

There may still be remaining issues with macOS validation, I need to verify I can reproduce https://github.com/flutter/flutter/issues/143324 . I plan to do that separately
2024-03-13 17:35:58 +00:00
skia-flutter-autoroll
38d2c40d8d Roll Dart SDK from b19e0995f317 to 18ec60df0774 (1 revision) (flutter/engine#51374)
https://dart.googlesource.com/sdk.git/+log/b19e0995f317..18ec60df0774

2024-03-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-228.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 bdero@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-13 17:33:54 +00:00
Jonah Williams
3b105855ac [scenario app] make image matching fuzzier. (flutter/engine#51376)
Attempt to work around the minor 1px differences from
https://github.com/flutter/flutter/issues/145058
2024-03-13 09:50:50 -07:00
skia-flutter-autoroll
fd1b1e383b Roll Skia from bbe453e3525d to dc7443fa4d88 (1 revision) (flutter/engine#51371)
https://skia.googlesource.com/skia.git/+log/bbe453e3525d..dc7443fa4d88

2024-03-13 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 38c0aeb0143f to 7456bed4cecf (11 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 bdero@google.com,brianosman@google.com,fmalita@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://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-13 07:01:04 +00:00
skia-flutter-autoroll
92baa406b2 Roll Fuchsia Linux SDK from UR-nKoLidl7cVLrrN... to mYZPzdM3hCE1TA91s... (flutter/engine#51370)
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 bdero@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-03-13 06:55:12 +00:00
Jim Graham
3485a463a9 Add a comparative benchmark for SkM44 vs SkMatrix vs impeller::Matrix (flutter/engine#51332)
In preparation for converting the DisplayList and engine Layer code to using Impeller data structures the performance differential for the various transform objects is important information. According to this benchmark, the performance of Impeller's data structure is sometimes faster and never significantly worse than the Skia objects.
2024-03-13 06:55:10 +00:00
John McCutchan
c2d3e6ce09 Add et lint command (flutter/engine#51238)
- Invokes lints for dart, python, c, and java.
- Captures all output of executions into an artifacts file (a json
file).
- Runs lints concurrently.
- Cool status display while running.
- Tests.
2024-03-12 23:29:25 -07:00