38083 Commits

Author SHA1 Message Date
Chris Bracken
cff2f440f9 yapf: Add more detailed error message and TODO (flutter/engine#56458)
The yapf Python formatter is abandoned and only works with Python versions up to and including Python 3.11. upgraded, this will become more and more problematic. On some Linux distributions side-by-side python installations are unsupported, for example.

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-08 20:11:23 +00:00
Chris Bracken
cdc18f9d61 Add FlutterTaskRunnerDescription.destruction_callback (flutter/engine#56445)
Adds a `destruction_callback` member to `FlutterTaskRunnerDescription` that provides embedder developers a means of performing any cleanup of resources tied to the lifetime of the task runner.

In the case of the macOS embedder, the task runner holds a reference to the engine itself that is used in the `post_task_callback` and whose lifetime needs to match/exceed that of the task runner. This refactoring allows us to centralise all related retain count manipulation around task runner setup.

This is a refactor of the lifecycle bits of https://github.com/flutter/engine/pull/13300.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-08 20:07:11 +00:00
skia-flutter-autoroll
826c4a7912 Roll Skia from d0ee80612f86 to 778b21720a61 (5 revisions) (flutter/engine#56457)
https://skia.googlesource.com/skia.git/+log/d0ee80612f86..778b21720a61

2024-11-08 michaelludwig@google.com [skif] Reject SkImageFilters::MatrixTransform that aren't invertible
2024-11-08 michaelludwig@google.com [skif] Clamp magnifier zoom factor based on lens bounds dimensions
2024-11-08 bungeman@google.com [pdf] Implement sweep gradient tilemodes
2024-11-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 7363ad68f4c9 to 12e843b4aad1 (3 revisions)
2024-11-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 026ba8481087 to 2a61126bb36c (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 brianosman@google.com,jsimmons@google.com,kjlubick@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-11-08 19:19:41 +00:00
skia-flutter-autoroll
930523bd84 Manual roll Dart SDK from 50c620224f27 to cfa1826c3df1 (2 revisions) (flutter/engine#56456)
Manual roll requested by asiva@google.com

https://dart.googlesource.com/sdk.git/+log/50c620224f27..cfa1826c3df1

2024-11-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-120.0.dev
2024-11-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-119.0.dev

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter-engine
Please CC asiva@google.com,dart-vm-team@google.com,jsimmons@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-11-08 18:23:57 +00:00
Jim Graham
2fb2e3e70a [Impeller] Switch to uniform arrays for gradient data on non-SSBO hardware (flutter/engine#56441)
Currently the most generalized form of the Impeller gradient shaders uses an SSBO to store the gradient information, but SSBO data is not supported on older platforms. To make the capability more general we introduce variants of the gradient shaders that uses uniform arrays which are more widely supported.
2024-11-08 18:18:05 +00:00
Jason Simmons
ac0b5ca828 In the embedder Impeller render target, use a multisample texture for the depth buffer only if MSAA is supported (flutter/engine#56444)
Fixes https://github.com/flutter/flutter/issues/158000
2024-11-08 15:49:48 +00:00
skia-flutter-autoroll
fcfdd62005 Roll Fuchsia Linux SDK from pG2aukmcwvp71aKuS... to aLUsXLv5iMZFOgcAS... (flutter/engine#56450)
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 jsimmons@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-11-08 08:56:33 +00:00
skia-flutter-autoroll
f0e362405a Roll Skia from 7ae36ecfe93d to d0ee80612f86 (2 revisions) (flutter/engine#56448)
https://skia.googlesource.com/skia.git/+log/7ae36ecfe93d..d0ee80612f86

2024-11-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 353c8b4196e4 to 6082ccfc822c (11 revisions)
2024-11-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from b4b1d02e6e41 to b2edbc3e54d0 (13 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,jsimmons@google.com,kjlubick@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-11-08 07:54:22 +00:00
John McDole
25d011162e Move off deprecated upload-artifactv3 (flutter/engine#56439)
Looking at https://google.github.io/osv-scanner/github-action/ for v4 action
2024-11-08 05:38:18 +00:00
Jonah Williams
bc59375978 [Impeller] Add support for ImageFilter.shader (flutter/engine#53490)
Copy-pasta docs:

```
  /// Creates an image filter from a [FragmentShader].
  ///
  /// The fragment shader provided here has additional requirements to be used
  /// by the engine for filtering. The first uniform value must be a vec2, this
  /// will be set by the engine to the size of the bound texture. There must
  /// also be at least one sampler2D uniform, the first of which will be set by
  /// the engine to contain the filter input.
  ///
  /// For example, the following is a valid fragment shader that can be used
  /// with this API. Note that the uniform names are not required to have any
  /// particular value.
  ///
  /// ```glsl
  /// #include <flutter/runtime_effect.glsl>
  ///
  /// uniform vec2 u_size;
  /// uniform float u_time;
  ///
  /// uniform sampler2D u_texture_input;
  ///
  /// out vec4 frag_color;
  ///
  /// void main() {
  ///   frag_color = texture(u_texture_input, FlutterFragCoord().xy / u_size) * u_time;
  ///
  /// }
  ///
  /// ```
  ///
  /// This API is only supported when using the Impeller rendering engine. On
  /// other backends a [UnsupportedError] will be thrown. This error can be
  /// caught and used for feature detection.
  ```

Fixes https://github.com/jonahwilliams/flutter_shaders/issues/34
Fixes https://github.com/jonahwilliams/flutter_shaders/issues/26
Fixes https://github.com/flutter/flutter/issues/132099
2024-11-08 01:15:22 +00:00
skia-flutter-autoroll
9067f0eef1 Roll Skia from 2ed9606702f1 to 7ae36ecfe93d (4 revisions) (flutter/engine#56442)
https://skia.googlesource.com/skia.git/+log/2ed9606702f1..7ae36ecfe93d

2024-11-07 nscobie@google.com Revert "SkCodec: Remove the sysprop guard for SkCrabbyAvifCodec"
2024-11-07 kjlubick@google.com Guard ganesh dependency from debugger
2024-11-07 jneufeld@google.com Basic support for drawPoints point mode in SkSVGDevice using zero-length lines in a single path element.
2024-11-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 49a7b74158a6 to 7363ad68f4c9 (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,jsimmons@google.com,kjlubick@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-11-07 23:58:11 +00:00
skia-flutter-autoroll
47e1fa8f84 Roll Dart SDK from 6a3684b96121 to 50c620224f27 (1 revision) (flutter/engine#56438)
https://dart.googlesource.com/sdk.git/+log/6a3684b96121..50c620224f27

2024-11-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-118.0.dev

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter-engine
Please CC dart-vm-team@google.com,jsimmons@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-11-07 23:31:32 +00:00
skia-flutter-autoroll
22222053d1 Roll Skia from e9a7546ef3d9 to 2ed9606702f1 (1 revision) (flutter/engine#56434)
https://skia.googlesource.com/skia.git/+log/e9a7546ef3d9..2ed9606702f1

2024-11-07 jvanverth@google.com [graphite] Add scratch label when returning Resources to ResourceCache

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,jsimmons@google.com,kjlubick@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-11-07 21:11:29 +00:00
Jason Simmons
73f6b6562a [Impeller] Use Matrix::MakeTranslateScale to compute the source-to-destination mapping in DrawImageRect (flutter/engine#56433) 2024-11-07 20:41:16 +00:00
Chris Bracken
995852f467 iOS: Eliminate ScopedBlock, ScopedTypeRef, ScopedPolicy (flutter/engine#56410)
Eliminates the two remaining uses of ScopedBlock and with it, ScopedTypeRef which was only used by ScopedBlock. ARC automatically generates the necessary block copy/retain/release calls, including moving blocks to the heap during a retain so manual _Block_copy/_Block_release calls are no longer required.

No test changes since no semantic changes.

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-07 19:47:06 +00:00
Jackson Gardner
d387d0fe3b [skwasm] Make sure to include the transfer list when using postMessage. (flutter/engine#56431)
This change doesn't have unit tests, because it doesn't actually change the functional behavior of the renderer, it only changes its performance characteristics. If the transfer list is not included, the browser copies the image bitmaps instead of transfers them, which is slow, but does actually work. I am going to be adding some additional benchmarking in the framework to ensure that we detect if we regress something like this again.
2024-11-07 18:34:08 +00:00
skia-flutter-autoroll
c3d5dc1148 Roll Dart SDK from d456f613465a to 6a3684b96121 (5 revisions) (flutter/engine#56430)
https://dart.googlesource.com/sdk.git/+log/d456f613465a..6a3684b96121

2024-11-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-117.0.dev
2024-11-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-116.0.dev
2024-11-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-115.0.dev
2024-11-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-114.0.dev
2024-11-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-113.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,jsimmons@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-11-07 18:34:04 +00:00
Jonah Williams
7f0892aaeb [Impeller] disable overdraw prevention for source draws. (flutter/engine#56403)
Overdraw prevention prevents overlapping triangles in the stroke tessellator from being visible with partially opaque draws. For fully opaque draws (or usage of src blend mode) I do not believe this will be an issue - so we can disable this to speed things up a tiny bit.

This code runs after we covert opaque draws to src blend mode, so checking for src blend mode should be sufficient.
2024-11-07 16:59:21 +00:00
Chris Bracken
a6917332f8 macOS: fix leak in CurrentKeyboardLayout (flutter/engine#56420)
Previously, if `layout_data` was not nil, we failed to `CFRelease` `source`. However, if `layout_data` was nil, we dif free source, then immediately set it to a new CoreFoundation object, which we then failed to free.

We now use `fml::CFRef` which just does the right thing.

Finally, we were returning `(__brdige_transfer)CFRetain(layout_data)` but `__bridge_transfer` releases the transferred object at the end of the enclosing expression, so this is equivalent to `(__bridge)layout_data`, which is what we now do.

No tests since this is a refactor with no semantic changes, other than fixing an internal leak.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-07 16:45:19 +00:00
Chris Bracken
59da8913aa macOS: Fix use after free in FlutterViewControllerTests (flutter/engine#56418)
Previously, in `mouseAndGestureEventsAreHandledSeparately:` we were using `CGEventRef cgEventStart` after it had been `CFRelease`d. Twice. This migrates to use fml::CFRef and avoids the issue altogether.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-07 16:41:40 +00:00
skia-flutter-autoroll
f995eb61c5 Roll Skia from 6f16a8c83bf4 to e9a7546ef3d9 (3 revisions) (flutter/engine#56426)
https://skia.googlesource.com/skia.git/+log/6f16a8c83bf4..e9a7546ef3d9

2024-11-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 0262f84fa0d7 to 353c8b4196e4 (15 revisions)
2024-11-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 644b91f7e096 to 026ba8481087 (4 revisions)
2024-11-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 500e41cc1e25 to b4b1d02e6e41 (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,jsimmons@google.com,kjlubick@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-11-07 10:04:28 +00:00
skia-flutter-autoroll
e965d2c4ab Roll Skia from 8444ee0c8a76 to 6f16a8c83bf4 (1 revision) (flutter/engine#56425)
https://skia.googlesource.com/skia.git/+log/8444ee0c8a76..6f16a8c83bf4

2024-11-07 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from e154ea2ed72d to 49a7b74158a6 (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,jsimmons@google.com,kjlubick@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-11-07 08:38:28 +00:00
skia-flutter-autoroll
5e1bc7efed Roll Fuchsia Linux SDK from z1otZzn3yKuGnu1st... to pG2aukmcwvp71aKuS... (flutter/engine#56424)
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 jsimmons@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-11-07 06:17:30 +00:00
skia-flutter-autoroll
71ad8e233f Roll Skia from cf33c4e96e81 to 8444ee0c8a76 (4 revisions) (flutter/engine#56422)
https://skia.googlesource.com/skia.git/+log/cf33c4e96e81..8444ee0c8a76

2024-11-06 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from a8eb33756b22 to 500e41cc1e25 (9 revisions)
2024-11-06 robertphillips@google.com [graphite] Streamline setting of PipelineInfo flags for histograms
2024-11-06 jvanverth@google.com [graphite] Remove legacy arc support.
2024-11-06 robertphillips@google.com [graphite] Add UMA histogram for various Pipeline creation times

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,jsimmons@google.com,kjlubick@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-11-07 03:24:46 +00:00
Yegor
c799bc6196 [web:a11y] make header a <header> when non-empty and heading when empty (flutter/engine#55996)
This relands the [reverted](https://github.com/flutter/engine/pull/55993) [original PR](https://github.com/flutter/engine/pull/55747) with one important adjustment: if the header is empty and has a label, it is rendered as a heading (`<h1>`, `<h2>`, etc) instead of a `<header>`. This is to be consistent with mobile, where headers are frequently used as headings, and screen readers do indeed read it as "heading". Changing all headers to the `<header>` tag turned to out to be too disruptive to existing usages of `SemanticsProperties.header`.

Long-term, when https://github.com/flutter/flutter/issues/155928 is implemented, we could migrate the framework to use `SemanticsProperties.headingLevel` to communicate that something is a heading, and encourage our users to move from `header` to `headingLevel` as well. After that migration is done, we could make all headers proper `<header>` tags, and not special-case empty headers.

Fixes https://github.com/flutter/flutter/issues/152268
2024-11-07 00:51:19 +00:00
Jonah Williams
2edc85cc0f [Impeller] make sure binding nullptr texture does not crash. (flutter/engine#56381)
Fixes https://github.com/flutter/flutter/issues/158074

binding a nullptr texture should fail but not crash.
2024-11-06 22:14:15 +00:00
Jonah Williams
d0bb78ccaf [Impeller] keep imgui hostbuffer alive. (flutter/engine#56409)
Fixes https://github.com/flutter/flutter/issues/158275

We are now counting on the content context to keep the host buffer alive. the imgui overlay does not use a content context, so it has to manage the lifetime of the host buffer correctly, keeping it alive for as many frames as needed and destroying it in the correct order (before context destruction).
2024-11-06 21:53:55 +00:00
Jackson Gardner
fef97957af [skwasm] Fix empty backdrop drawing. (flutter/engine#56385)
If our operation affects the backdrop, the layer slice builder needs to take that into account when deciding whether to actually build a slice. In addition, we should take the content in the backdrop into account when calculating the cull rect for our picture recorders.

For this to actually work, we need a fix for https://g-issues.skia.org/issues/362552959 which I am currently working on.
2024-11-06 21:19:07 +00:00
Jonah Williams
e673b6fb32 [Impeller] generate stroke vertices into point arena. (flutter/engine#56390)
Heap allocation is extremely expensive on Android.

We can speed up the stroke tessellation by allocation a large arena and using that to write vertices. If the vertices would overflow, we switch to a dynamically allocated vector.
2024-11-06 21:17:07 +00:00
Jason Simmons
440ee21267 [Impeller] Do not capture the temporary ImpellerMapping struct pointer when storing release callbacks in libImpeller (flutter/engine#56411)
Fixes https://github.com/flutter/flutter/issues/158285
2024-11-06 21:13:46 +00:00
zijiehe@
cca1af22b2 Roll ICU from 9408c6fd4a39 to 4239b1559d11 (2 revisions) (flutter/engine#56407)
Redo #56401 with a manual license change to remove the chromeos/icudtl.dat.hash. The file was removed by https://crrev.com/83a7bd47a345137ac6081c71c2a7158f5403cd30.

Original change description:

9408c6fd4a..4239b1559d

2024-10-02 [dayeung@chromium.org](mailto:dayeung@chromium.org) Updated TZ to 2024b
2024-09-05 [andreaorru@chromium.org](mailto:andreaorru@chromium.org) Remove icudtl.dat.hash

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 [fuchsia-ui-discuss@google.com](mailto:fuchsia-ui-discuss@google.com),[jsimmons@google.com](mailto:jsimmons@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://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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-06 20:57:10 +00:00
Chris Bracken
5a3f245710 iOS,macOS: Add Obj-C cflags to all Obj-C targets (flutter/engine#56386)
Ensure that all Objective-C code in the codebase is being built with the standard set of Flutter Objective-C compiler flags with ARC enabled.

Also bumps the cflags config up to the top of the first block within each target in which Objective-C sources appear, so that the location is consistent.

Migrates The following targets to ARC, which had been missed in previous passes since they didn't declare the standard Flutter Obj-C[++] cflags:
* `//flutter/fml:fml_unittests`
* `//flutter/impeller/golden_tests:metal_screenshot`
* `//flutter/impeller/playground:playground`
* `//flutter/impeller/backend/metal:metal`
* `//flutter/impeller/backend/metal:metal_unittests`
* `//shell/gpu:gpu_surface_metal_unittests`
* `//flutter/shell/platform/embedder:embedder_unittests`

This patch includes no semantic changes.

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-06 20:17:08 +00:00
skia-flutter-autoroll
5662b172be Roll Skia from afaed8923682 to cf33c4e96e81 (5 revisions) (flutter/engine#56408)
https://skia.googlesource.com/skia.git/+log/afaed8923682..cf33c4e96e81

2024-11-06 jacksongardner@google.com Take into account the backdrop filter when calculating the bounds of a SaveLayer operation.
2024-11-06 fmalita@google.com [viewer] More path interpolation samples
2024-11-06 vigneshv@google.com SkCrabbyAvif: Remove explicit brand sniffing in IsAvif
2024-11-06 vigneshv@google.com SkCodec: Remove the sysprop guard for SkCrabbyAvifCodec
2024-11-06 robertphillips@google.com [graphite] Rename all things ForceSynchronous to ForPrecompile

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,jsimmons@google.com,kjlubick@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-11-06 19:59:20 +00:00
skia-flutter-autoroll
daf757d436 Manual roll Dart SDK from 1c1d0420539f to d456f613465a (6 revisions) (flutter/engine#56406)
Manual roll requested by asiva@google.com

https://dart.googlesource.com/sdk.git/+log/1c1d0420539f..d456f613465a

2024-11-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-112.0.dev
2024-11-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-111.0.dev
2024-11-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-110.0.dev
2024-11-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-109.0.dev
2024-11-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-108.0.dev
2024-11-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-107.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,jsimmons@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-11-06 19:55:27 +00:00
Chinmay Garde
bcb04a6ea8 [Impeller] Avoid errors due to triangle fans usage on Molten. (flutter/engine#56321)
Added the test case for https://github.com/flutter/flutter/issues/157885 to the corpus but Jonah fixed it in https://github.com/flutter/engine/pull/56310.

Fixes https://github.com/flutter/flutter/issues/158024 which is more of an inconvenience on macOS.
2024-11-06 18:36:48 +00:00
skia-flutter-autoroll
239bdb510a Roll Skia from b4df8dda7ffc to afaed8923682 (14 revisions) (flutter/engine#56404)
https://skia.googlesource.com/skia.git/+log/b4df8dda7ffc..afaed8923682

2024-11-06 jamesgk@google.com Ignore more tests in Protected configs
2024-11-06 robertphillips@google.com [graphite] Add UMA enum histogram for Pipeline creation races
2024-11-06 fmalita@google.com [viewer] Add some hardcoded vertices for mesh gradient sample
2024-11-06 fmalita@google.com [viewer] Add AE mesh gradient sample
2024-11-06 borenet@google.com [infra] Add 'patch' asset
2024-11-06 jlavrova@google.com Adding few missing #ifdefs
2024-11-06 jamesgk@google.com [graphite] Support providing clip on replay
2024-11-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 1495532f997f to 76855a9baecc (1 revision)
2024-11-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 064137920a75 to 0262f84fa0d7 (6 revisions)
2024-11-06 danieldilan@google.com Proof of concept for general path interpolation
2024-11-06 kjlubick@google.com Temporarily remove golo machines from CQ
2024-11-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 97c315f09386 to e154ea2ed72d (6 revisions)
2024-11-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 84a24a1ea6a6 to 644b91f7e096 (7 revisions)
2024-11-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 08b478b3f3a3 to a8eb33756b22 (6 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,jsimmons@google.com,kjlubick@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-11-06 18:29:19 +00:00
Jonah Williams
b2c59ea5fe [Impeller] split downsample shader into GLES variant. (flutter/engine#56376)
This fixes a crash reported on a moto g4 where the on device shader compiler fails to process the ifdef.
2024-11-06 15:56:17 +00:00
skia-flutter-autoroll
54495f86a0 Roll Skia from 82175b411c80 to b4df8dda7ffc (1 revision) (flutter/engine#56398)
https://skia.googlesource.com/skia.git/+log/82175b411c80..b4df8dda7ffc

2024-11-06 lukasza@chromium.org [rust png] Fix when `setAlphaAndRequiredFrame` is called.

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,jsimmons@google.com,kjlubick@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-11-06 14:04:34 +00:00
Matan Lurey
b60b012f51 Add and document and explicit toARGB32. (flutter/engine#56329)
Closes https://github.com/flutter/flutter/issues/157128.
2024-11-06 01:07:20 +00:00
skia-flutter-autoroll
c3a0b59fe2 Roll Fuchsia Test Scripts from _fkA2GjLQH4bc_n2p... to 6FgM4KTbxxmyYoiOs... (flutter/engine#56392)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-test-scripts-flutter-engine
Please CC chrome-fuchsia-engprod@google.com,jsimmons@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-11-06 00:16:57 +00:00
skia-flutter-autoroll
baa41e0e14 Manual roll Dart SDK from 3e840340c412 to 1c1d0420539f (2 revisions) (flutter/engine#56391)
Manual roll requested by asiva@google.com

https://dart.googlesource.com/sdk.git/+log/3e840340c412..1c1d0420539f

2024-11-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-106.0.dev
2024-11-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-105.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,jsimmons@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-11-05 23:48:59 +00:00
Robert Ancell
9df9cb0c8d Document fields in FlEngine (flutter/engine#56266)
Update documentation.
2024-11-06 12:34:19 +13:00
Matan Lurey
73c5a2be81 Add missing TOC. (flutter/engine#56389) 2024-11-05 22:55:55 +00:00
Jason Simmons
0be0d08156 Increase timeouts for Linux Fuchsia and Linux Web Framework Tests builders (flutter/engine#56387)
These builders have recently been timing out due to LUCI scheduling delays.
2024-11-05 22:17:20 +00:00
Chris Bracken
1cfe6487a6 iOS: Use standard Obj-C cflags for ios_test_flutter (flutter/engine#56384)
Previously, we had not enabled standard iOS cflags for `ios_test_flutter`, though ARC had been manually added to the cflags. This meant that the following flags were not enabled:

* -Werror=overriding-method-mismatch
* -Werror=undeclared-selector

Both of these existed in the code within this target:

* undeclared-selector: `insertionPointColor` was a non-public selector on UITextInput prior to iOS 17.
* overriding-method-mismatch: `FakeFlutterUndoManagerDelegate`, which implements the `FlutterUndoManagerDelegate` protocol, declared `initWithUndoManager:activeInputView:` with a different type for `activeInputView`. This was a hack to jam in a test mock object that didn't match the required type for the property. Conveniently we have a class (`FlutterTextInputView`) that implements the required type and protocol (`UIView<UITextInput>`).

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-05 21:51:18 +00:00
Robert Ancell
2a567cbef7 Remove unnecessary method for getting engine switches (command line). (flutter/engine#56265)
This method simply wrapped a common method, which is simpler to use
directly. The test only tested this common method, which already has
tests in common/.
2024-11-06 10:17:13 +13:00
Robert Ancell
a98f1eb4e2 Remove FlScrollingViewDelegate (flutter/engine#56270)
We can just contact the engine directly and test that by overriding the
engine API.
2024-11-06 10:16:49 +13:00
Chris Bracken
8582bd3b7a fml: delete scoped_nsobject.h,mm (flutter/engine#56382)
fml::scoped_nsobject and fml::scoped_nsprotocol classes are no longer
necessary now that the entire codebase has been migrated to ARC.

This also eliminates the fml_arc_unittests target which tests that code.
All references to that target in documentation, run_tests.py have been
removed. This target was used in various `et` build/query unit tests and
has been replaced with the fml_unittests target in those cases.

Issue: https://github.com/flutter/flutter/issues/137801
2024-11-05 12:59:05 -08:00
skia-flutter-autoroll
438bcc7173 Roll Skia from b3be9cb59fe8 to 82175b411c80 (2 revisions) (flutter/engine#56383)
https://skia.googlesource.com/skia.git/+log/b3be9cb59fe8..82175b411c80

2024-11-05 egdaniel@google.com [Graphite] Fix layout transition for DstCopy in Vulkan.
2024-11-05 jvanverth@google.com Update GPU StrikeCache to track Glyph memory as well.

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,jsimmons@google.com,kjlubick@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-11-05 20:58:17 +00:00
Jason Simmons
eae69f89fe [Impeller] Delete any remaining GL objects during destruction of the ReactorGLES (flutter/engine#56361)
At shutdown time the ReactorGLES may still be holding handles of GL objects.  These objects should be cleaned up when the reactor is deleted.

This leak can be seen by running DlGoldenTest.ShimmerTest, which takes a series of screenshots.  Each screenshot creates an AiksContext. Without this change, the textures in the AiksContext's ReactorGLES will be leaked after the AiksContext is destroyed.
2024-11-05 20:56:13 +00:00