23142 Commits

Author SHA1 Message Date
skia-flutter-autoroll
bb37c0eb12 Roll Skia from b522808eb0af to 20108acef7d2 (3 revisions) (flutter/engine#44079)
https://skia.googlesource.com/skia.git/+log/b522808eb0af..20108acef7d2

2023-07-27 mike@reedtribe.org Unfriend main scalercontext subclasses
2023-07-27 nscobie@google.com Fix CtsEnforcement for U tests marked as T
2023-07-27 kjlubick@google.com Remove legacy SkImage and SkSurface methods

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-27 20:39:30 +00:00
Jonah Williams
cbc409cfdf Revert "[engine] disable picture complexity raster caching" (flutter/engine#44026)
Reverts flutter/engine#43897
2023-07-27 20:27:39 +00:00
Jonah Williams
077440458f [Impeller] Move glyph atlas state from context into lazy glyph atlas. (flutter/engine#43748)
No impact on behavior. Rather that separately cache the lazy glyph atlas and the underlying state (bitmap, atlas, texture), move the state into the lazy glyph atlas. To do make this behave correctly, we need to "reset" the lazy glyph atlas instead of deleting it on each frame. Reseting it clears out the text runs and cached atlas, which has the same impact as deleting it in the previous behavior.

This refactor is required in order to move to platform specific glyph atlases, to solve issues such as https://github.com/flutter/flutter/issues/126104
2023-07-27 20:27:37 +00:00
Ian Hickson
1f46e61e01 Hide some log lines from release builds (flutter/engine#44073)
These lines are appearing in framework tests but do not appear to have significant diagnostic value.
2023-07-27 20:27:35 +00:00
skia-flutter-autoroll
1b9f36c699 Roll Dart SDK from dcbaffbd09dd to e851b8e49ade (2 revisions) (flutter/engine#44072)
https://dart.googlesource.com/sdk.git/+log/dcbaffbd09dd..e851b8e49ade

2023-07-27 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-8.0.dev
2023-07-27 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-7.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-07-27 17:56:13 +00:00
skia-flutter-autoroll
ec8d0e164d Roll Skia from 90048a938eb5 to 26ec2772960b (2 revisions) (flutter/engine#44070)
https://skia.googlesource.com/skia.git/+log/90048a938eb5..26ec2772960b

2023-07-27 jvanverth@google.com [graphite] Move rescale code to separate utility function.
2023-07-27 cmumford@google.com [canvaskit] create version.js locally

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-27 17:11:04 +00:00
gaaclarke
392516cb99 [Impeller] trimmed 3 bytes off of each Glyph (flutter/engine#44054)
While profiling Impeller I saw that we were allocating ~80MB/s of `GlyphPosition`s.  This should shave off 13MB/s by making Glyphs 20 bytes instead of 24.

<img width="1220" alt="Screenshot 2023-07-26 at 4 51 24 PM" src="https://github.com/flutter/engine/assets/30870216/9e65e8bf-9333-4dd1-aa0b-be771412d07b">

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-07-27 16:16:13 +00:00
skia-flutter-autoroll
6e579f7089 Roll Dart SDK from b6747a06be06 to dcbaffbd09dd (1 revision) (flutter/engine#44064)
https://dart.googlesource.com/sdk.git/+log/b6747a06be06..dcbaffbd09dd

2023-07-27 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-6.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-07-27 10:32:21 +00:00
skia-flutter-autoroll
760b398ce6 Roll Skia from e85c64d63787 to 26ed0d2ab04c (3 revisions) (flutter/engine#44061)
https://skia.googlesource.com/skia.git/+log/e85c64d63787..26ed0d2ab04c

2023-07-27 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from c2d7f25c79c8 to 3fc36175ddcf (3 revisions)
2023-07-27 lovisolo@google.com Roll back Nvidia drivers on Skolo Linux machines with RTX 3060.
2023-07-27 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 97696b1bbd4f to 85945fc1283e (10 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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-27 06:57:04 +00:00
skia-flutter-autoroll
2c2fbe6654 Roll Fuchsia Linux SDK from DOxjABQZ-mA_9Lllw... to FwIA6BaHtZg2mRS-0... (flutter/engine#44060)
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-07-27 05:52:37 +00:00
Jason Simmons
067f782825 Ignore the NOTICE.fuchsia file in the new license script (flutter/engine#44021)
See https://github.com/flutter/engine/pull/34038
2023-07-27 04:37:19 +00:00
Dan Field
c1314cc717 Embed a license readme in every zip archive (flutter/engine#43974)
fixes https://github.com/flutter/flutter/issues/130682

This patch makes all zip files created via the zip_bundle rule have an embedded LICENSE that points to a permalink to the LICENSE for that SDK commit hash. Previously we only did this for a few tools, but it was pointed out that some of the zip files we generate that are meant for consumption in the tool are otherwise missing a stand-alone license file (the tool downloads the full license file separately from the individual zips, as it would be costly to include it with each and every one).
2023-07-27 03:56:09 +00:00
skia-flutter-autoroll
b2e1da2a54 Roll Skia from 750d7f8ed4d7 to e85c64d63787 (4 revisions) (flutter/engine#44056)
https://skia.googlesource.com/skia.git/+log/750d7f8ed4d7..e85c64d63787

2023-07-27 lovisolo@google.com Update Windows RTX3060 and GTA960 drivers from 31.0.15.3179 to 31.0.15.3667.
2023-07-26 armansito@google.com [sksl] Use indent option for SPIR-V disassembly
2023-07-26 armansito@google.com [sksl][compute][spirv] Support barrier intrinsics
2023-07-26 mike@reedtribe.org Revert "Revert "Return POD from generateMetrics() rather than mutate SkGlyph""

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-27 01:50:20 +00:00
skia-flutter-autoroll
182185a505 Roll Skia from fdf224be4f98 to 750d7f8ed4d7 (3 revisions) (flutter/engine#44049)
https://skia.googlesource.com/skia.git/+log/fdf224be4f98..750d7f8ed4d7

2023-07-26 armansito@google.com [sksl][compute][spirv] Support atomicUint
2023-07-26 het@google.com [canvaskit] Add ImageFilter.getOutputBounds
2023-07-26 rmistry@google.com Change bug prefix to point to issue tracker

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 21:56:18 +00:00
skia-flutter-autoroll
ea93164a1c Roll Skia from 990aa6016ff6 to fdf224be4f98 (3 revisions) (flutter/engine#44046)
https://skia.googlesource.com/skia.git/+log/990aa6016ff6..fdf224be4f98

2023-07-26 whesse@google.com Update index of contour start point correctly in addPath
2023-07-26 michaelludwig@google.com Revert "Return POD from generateMetrics() rather than mutate SkGlyph"
2023-07-26 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from c2d7f25c79c8 to 78cd9d710ab4

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 20:34:22 +00:00
skia-flutter-autoroll
55ccb3afcb Roll Skia from d76a9c3bb3fd to 990aa6016ff6 (4 revisions) (flutter/engine#44043)
https://skia.googlesource.com/skia.git/+log/d76a9c3bb3fd..990aa6016ff6

2023-07-26 michaelludwig@google.com Don't overflow when inverting scale matrices with small scales
2023-07-26 kjlubick@google.com Fix missing includes for iOS build
2023-07-26 kjlubick@google.com Remove one straggling slug #ifdef from SkRecordDraw
2023-07-26 kjlubick@google.com Decouple Graphite and Shaders

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 19:13:22 +00:00
skia-flutter-autoroll
953c5a5bbc Roll Skia from ca48e45a0262 to d76a9c3bb3fd (1 revision) (flutter/engine#44042)
https://skia.googlesource.com/skia.git/+log/ca48e45a0262..d76a9c3bb3fd

2023-07-26 mike@reedtribe.org Return POD from generateMetrics() rather than mutate SkGlyph

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 17:27:20 +00:00
skia-flutter-autoroll
026adb5571 Roll Dart SDK from b1e82e2e55b2 to b5710782b91c (4 revisions) (flutter/engine#44040)
https://dart.googlesource.com/sdk.git/+log/b1e82e2e55b2..b5710782b91c

2023-07-26 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-3.0.dev
2023-07-26 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-2.0.dev
2023-07-26 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-1.0.dev
2023-07-25 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.2.0-0.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-07-26 16:55:28 +00:00
skia-flutter-autoroll
c9f0c67e30 Roll Skia from 5ace549dfae6 to ca48e45a0262 (4 revisions) (flutter/engine#44038)
https://skia.googlesource.com/skia.git/+log/5ace549dfae6..ca48e45a0262

2023-07-26 johnstiles@google.com Enforce layout offsets and types for WGSL interface blocks.
2023-07-26 kjlubick@google.com Remove some straggling calls to SkCanvas::flush()
2023-07-26 kjlubick@google.com Remove legacy defines in SkCanvas
2023-07-26 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 46bff0d3d3cf to 97696b1bbd4f (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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 15:50:16 +00:00
Mouad Debbar
b542cbb21c [web] Provide convenient default factories for platform views (flutter/engine#43828)
Convenient default factories for creating DOM element from a given tag name.

Required by https://github.com/flutter/flutter/pull/130513

Part of https://github.com/flutter/flutter/issues/127030
2023-07-26 15:15:55 +00:00
skia-flutter-autoroll
955035a892 Roll Skia from 826e38ba8db3 to 5ace549dfae6 (2 revisions) (flutter/engine#44034)
https://skia.googlesource.com/skia.git/+log/826e38ba8db3..5ace549dfae6

2023-07-26 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 2d999f744809 to a09773110c4a (12 revisions)
2023-07-26 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 2ca55949153a to c2d7f25c79c8 (4 revisions)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 08:39:10 +00:00
Bruno Leroux
ae000cbf8c [macOS] Return keyboard pressed state (flutter/engine#42878)
## Description

This PR updates the macOS engine in order to answer to keyboard pressed state queries from the framework (as implemented in https://github.com/flutter/flutter/pull/122885).

## Related Issue

macOS engine implementation for https://github.com/flutter/flutter/issues/87391
Similar to:
- Linux: https://github.com/flutter/engine/pull/42346
- Android: https://github.com/flutter/engine/pull/42758

## Tests

Adds 2 tests.
2023-07-26 07:14:19 +00:00
Dan Field
dee698f80c [Impeller] Remove duplicated code. (flutter/engine#44024)
Contents::ShouldRender already checks whether the stencil_coverage.has_value.
2023-07-26 05:37:23 +00:00
Brandon DeRosier
17530e0b22 [Impeller] Only strip the translation from backdrop filter effect transforms. (flutter/engine#44029)
Resolves https://github.com/flutter/flutter/issues/131305.
2023-07-26 05:17:08 +00:00
David Iglesias
1d2593d09f [web] Preserve canvaskit variant during tests. (flutter/engine#43868)
A ~~simpler~~ very similar version of https://github.com/flutter/engine/pull/43854

* Makes it harder for users to accidentally remove default configuration values, while still allowing them to do so if needed (configuration is now overridden with a subset of values, rather than passing a full configuration object).
  * Moves `merge` from the configuration object and into the override method.
* Removes a test-only configuration option:
  * `window._flutter_canvaskit_variant_for_test_only`

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-07-26 05:04:16 +00:00
skia-flutter-autoroll
84b7d1efc0 Roll Skia from 28773cec6e8d to 826e38ba8db3 (5 revisions) (flutter/engine#44031)
https://skia.googlesource.com/skia.git/+log/28773cec6e8d..826e38ba8db3

2023-07-26 armansito@google.com [sksl][compute] Enable SPIR-V compute test outputs
2023-07-25 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 6f1c3384ecb6 to 46bff0d3d3cf (6 revisions)
2023-07-25 armansito@google.com [sksl][compute] Move compute tests to common filegroup
2023-07-25 michaelludwig@google.com [skif] Don't overload empty bounds in internalSaveLayer
2023-07-25 kjlubick@google.com Decouple SkSpecialSurface and GPU backends

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 04:32:30 +00:00
Jackson Gardner
8b46c33ac4 Roll fallback fonts. (flutter/engine#44000)
Update our fallback fonts data along with the CIPD package
2023-07-26 01:07:02 +00:00
skia-flutter-autoroll
838b6c6118 Roll Skia from 12d41b6f66ed to 28773cec6e8d (2 revisions) (flutter/engine#44011)
https://skia.googlesource.com/skia.git/+log/12d41b6f66ed..28773cec6e8d

2023-07-25 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 2ca55949153a to 983f600aab02
2023-07-25 johnstiles@google.com Add support for storage buffers in WGSL.

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-26 01:05:42 +00:00
Paul Berry
db661a120d Prepare flutter engine for enabling private final field promotion. (flutter/engine#43959)
Some parts of the flutter engine are built using the latest version of the Dart SDK, ignoring SDK constraints in `pubspec.yaml` files. Therefore, before the Dart SDK can switch on the "private field promotion" feature (https://github.com/dart-lang/language/issues/2020), these parts of the flutter engine need to be modified so that they won't have any "unnecessary `!`" warnings after field private field promotion is enabled. This PR makes the necessary changes.

This PR doesn't introduce any functional change. In principle it might improve performance slightly (by avoiding redundant memory accesses), but in practice the difference is unlikely to rise out of the measurement noise.

Issue fixed by this PR: https://github.com/flutter/flutter/issues/131198

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-07-26 01:04:09 +00:00
skia-flutter-autoroll
971c360087 Manual roll Dart SDK from 61ab5422fb7b to b1e82e2e55b2 (3 revisions) (flutter/engine#44018)
Manual roll requested by asiva@google.com

https://dart.googlesource.com/sdk.git/+log/61ab5422fb7b..b1e82e2e55b2

2023-07-25 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-348.0.dev
2023-07-25 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-347.0.dev
2023-07-25 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-346.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 asiva@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-07-26 01:04:08 +00:00
Matan Lurey
15373f50d3 [Impeller] ToColor should produce a DlColor, not SkColor. (flutter/engine#43987)
Closes https://github.com/flutter/flutter/issues/124455.
2023-07-26 01:00:16 +00:00
Callum Moffat
3b22bd4442 Uncap framerate for iOSAppOnMac (flutter/engine#43840)
Right now framerate when platform views are on screen is capped to 80 fps on iOS devices. I tried uncapping the framerate and ran the test app in https://github.com/flutter/flutter/issues/116640 on my M1 Max MBP and didn't notice any of the same slowdowns. `iOSAppOnMac` is only available on Apple Silicon Macs, so the performance baseline is really high. I think it's safe to remove the cap here.

### 120 Hz / ProMotion minimum specs

| Category | Device | SoC | CPU | GPU |
|--|--|--|--|--|
iOS | iPhone 13 Pro | A15 | 2P+4e | 5 EU |
Mac with built-in ProMotion | MacBook Pro 2021 | M1 Pro | 6P+2e |  14 EU |
Mac with external 120Hz display | MacBook Air 2020 | M1 | 4P+4e | 7 EU |

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-07-25 21:29:13 +00:00
skia-flutter-autoroll
20e6f3f007 Roll Skia from 7cec4e4e6f6e to 12d41b6f66ed (2 revisions) (flutter/engine#44008)
https://skia.googlesource.com/skia.git/+log/7cec4e4e6f6e..12d41b6f66ed

2023-07-25 kjlubick@google.com Remove graphite code from src/effects
2023-07-25 kjlubick@google.com Move SkBlenderBase::addToKey -> graphite/KeyHelpers

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-25 18:53:44 +00:00
skia-flutter-autoroll
712cd70b0f Manual roll Dart SDK from 8662af7d9aa3 to 61ab5422fb7b (12 revisions) (flutter/engine#44007)
Manual roll requested by asiva@google.com

https://dart.googlesource.com/sdk.git/+log/8662af7d9aa3..61ab5422fb7b

2023-07-25 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-345.0.dev
2023-07-24 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-344.0.dev
2023-07-24 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-343.0.dev
2023-07-24 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-342.0.dev
2023-07-23 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-341.0.dev
2023-07-22 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-340.0.dev
2023-07-22 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-339.0.dev
2023-07-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-338.0.dev
2023-07-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-337.0.dev
2023-07-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-336.0.dev
2023-07-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-335.0.dev
2023-07-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-334.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 asiva@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-07-25 18:34:20 +00:00
skia-flutter-autoroll
004871b97b Roll Skia from eb5b5bc4fb86 to 7cec4e4e6f6e (1 revision) (flutter/engine#44003)
https://skia.googlesource.com/skia.git/+log/eb5b5bc4fb86..7cec4e4e6f6e

2023-07-25 armansito@google.com [graphite][vulkan][dawn] Use std140 layout in SSBOs

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-25 18:08:06 +00:00
Kevin Lubick
778cc2a363 Reland "Remove more calls to SkCanvas::flush() and SkSurface::flush()" (flutter/engine#43965)
Relanding https://github.com/flutter/engine/pull/43902 without the
copy-pasta return statements which did not seem to cause a compile
issue, but caused Fuchsia tests to hang.

## 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.
- [ ] 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-07-25 14:05:44 -04:00
Jonah Williams
013333b1e7 [Impeller] round scale for glyph atlas cache to 2 decimal places. (flutter/engine#43752)
Fixes https://github.com/flutter/flutter/issues/130750
2023-07-25 17:51:04 +00:00
skia-flutter-autoroll
1bf804b7da Roll Skia from 04ab62b4f8c9 to eb5b5bc4fb86 (2 revisions) (flutter/engine#44001)
https://skia.googlesource.com/skia.git/+log/04ab62b4f8c9..eb5b5bc4fb86

2023-07-25 johnstiles@google.com Eliminate fInterfaceBlockMap from Metal codegen.
2023-07-25 nicolettep@google.com [graphite] Add inline uniform block support for Vulkan

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-25 16:36:47 +00:00
Brandon DeRosier
a9297af32e [Impeller] Use basis of effect transform in MatrixFilter. (flutter/engine#43990)
Follow-up/reland of https://github.com/flutter/engine/pull/43943.

Issue https://github.com/flutter/flutter/issues/130355.

I've updated the golden to better reproduce the problem at hand; the
second circle is a scaled down copy of the backdrop. If the matrix
filter is handling the transform correctly, the circle is centered over
the bottom-right-most edge (4:30) of the circle:

![image](https://github.com/flutter/engine/assets/919017/3f2e099d-9d43-4ee6-8efe-3203edad47ad)
2023-07-25 09:32:57 -07:00
skia-flutter-autoroll
e0aaf2f758 Roll Skia from 4bfaf9944a68 to 1d55f968ca23 (1 revision) (flutter/engine#43991)
https://skia.googlesource.com/skia.git/+log/4bfaf9944a68..1d55f968ca23

2023-07-25 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 1de81d2a1fc2 to 2ca55949153a (1 revision)

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-25 06:29:34 +00:00
skia-flutter-autoroll
63b093aa5c Roll Skia from e99aea2cffef to 4bfaf9944a68 (2 revisions) (flutter/engine#43989)
https://skia.googlesource.com/skia.git/+log/e99aea2cffef..4bfaf9944a68

2023-07-25 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 66d6b0dd0c39 to 9fbca2df22a8 (2 revisions)
2023-07-24 bungeman@google.com Avoid sk_sp to static local variable

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-25 05:33:32 +00:00
skia-flutter-autoroll
b479f9fc76 Roll Skia from 4554d1b35b6e to e99aea2cffef (2 revisions) (flutter/engine#43980)
https://skia.googlesource.com/skia.git/+log/4554d1b35b6e..e99aea2cffef

2023-07-24 michaelludwig@google.com [skif] Use isEmpty64() instead of isEmpty() for layerspace irects
2023-07-24 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 18e535f0ebf3 to 4c8d1ddb012a (8 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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-25 00:09:51 +00:00
Brandon DeRosier
716c6afba4 [Impeller] Skip rect clips that do nothing. (flutter/engine#43948)
Resolves https://github.com/flutter/flutter/issues/131100

* Skip rect clips that we know won't further restrict the clip shape.
* Don't append clips to enforce subpass bounds. We currently don't collapse passes when subpass clips are added anyhow, so just a restriction to subpass collapsing in order to keep the current behavior intact.
* Small refactor to reduce confusion: Just place the subpass bounds limit into `EntityPass` itself instead of the delegate.

Built on https://github.com/flutter/engine/pull/43946 (because iOS currently fails validation without it).

Gallery home screen before/after:

![compare](https://github.com/flutter/engine/assets/919017/34608633-6b3b-4979-be2b-f2685b32168f)
2023-07-25 00:02:10 +00:00
Jonah Williams
0e489f3f86 [Impeller] presentKHR from background worker. (flutter/engine#43976)
Testing with validation enabled shows no crashes or validation warnings on Pixel 6 or S10. I believe this is safe since we are correctly synchronized in the acquireNextImage via the presentation semaphore. The only loss is that we will finish the raster task before we know that presentation is failed.

Having said that, we can end up waiting multiple ms for the layout transition and presentation, so that doesn't seem worth it.
2023-07-24 23:29:17 +00:00
Brandon DeRosier
3622aba393 Revert "[Impeller] Fix MatrixFilter multiplication ordering for subpasses." (flutter/engine#43978)
Reverts flutter/engine#43943

Closes https://github.com/flutter/flutter/issues/131182.
Opens https://github.com/flutter/flutter/issues/130355.

Regression spotted in https://github.com/flutter/flutter/issues/131182
2023-07-24 22:57:26 +00:00
skia-flutter-autoroll
cf6887fbc3 Roll Skia from 6c219acc30a5 to 4554d1b35b6e (4 revisions) (flutter/engine#43973)
https://skia.googlesource.com/skia.git/+log/6c219acc30a5..4554d1b35b6e

2023-07-24 jvanverth@google.com [graphite] Add ContextOption to set default MSAA samples.
2023-07-24 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 1de81d2a1fc2 to 2ca55949153a
2023-07-24 kjlubick@google.com Remove legacy SkMesh functions
2023-07-24 kjlubick@google.com Remove code guarded by SK_SUPPORT_LEGACY_STRIKE_SERIALIZATION

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-24 21:45:17 +00:00
Brandon DeRosier
5f3456773c [Impeller] Fix MatrixFilter multiplication ordering for subpasses. (flutter/engine#43943)
Resolves https://github.com/flutter/flutter/issues/130355.

When drawing a backdrop filter, we offset the backdrop entity with
`-local_pass_position` in order to align the backdrop texture with the
position of the pass it's being drawn to. When rendering the filter,
this transform propagates to the filter snapshot. Prior to this change,
that offset was being applied within the space of the backdrop filter's
matrix, which is wrong! It needs to be applied in screen space.

We didn't notice this prior to the coverage hint optimization because we
were previously forcing subpass sizes to match the parent whenever a
backdrop filter was present.

This one was very difficult to reason through at first, and so I added a
detailed comment to explain the rationale behind the behavioral
differences between the backdrop filter and non-backdrop filter cases of
the matrix filter.
2023-07-24 14:07:43 -07:00
Ann Marie Mossman
351ef7a0ce Replace deprecated [UIScreen mainScreen] in FlutterViewController.mm and FlutterViewControllerTest.mm (flutter/engine#43690)
Issue: https://github.com/flutter/flutter/issues/128260

## 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.
2023-07-24 13:29:27 -07:00
skia-flutter-autoroll
5118b659a9 Roll Skia from 99e8dc51ba53 to 6c219acc30a5 (4 revisions) (flutter/engine#43970)
https://skia.googlesource.com/skia.git/+log/99e8dc51ba53..6c219acc30a5

2023-07-24 jmbetancourt@google.com replace SlotManager return types with optional values
2023-07-24 robertphillips@google.com [graphite] Support textureSize queries prior to instantiation
2023-07-24 johnstiles@google.com Move SkEnumBitMask from src/core/ to src/base/.
2023-07-24 nicolettep@google.com [graphite] Implement ability to set and cache blend constants in Vulkan

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,michaelludwig@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-07-24 20:03:21 +00:00
Ian Hickson
8125aa1d19 add ColorFilter.toString to web_ui (flutter/engine#43874) 2023-07-24 19:21:13 +00:00