29204 Commits

Author SHA1 Message Date
Jason Simmons
f03f05b51a [Impeller] In canvas_unittests, only create an MSAA offscreen texture if the platform supports MSAA (flutter/engine#56542) 2024-11-12 21:09:50 +00:00
Bruno Leroux
157b28e3a9 [iOS] Fix slider semantics node answer to accessibility activate (flutter/engine#56427)
## Description

iOS fix [[A11y] Double Tap brings the Slider thumb to the center of the widget.](https://github.com/flutter/flutter/issues/156427) per instruction from https://github.com/flutter/flutter/pull/157601#discussion_r1829992890

I don't have a physical iOS device to double check, but using the iOS Simulator and accessibility tools, the behavior seems ok. Without this PR, the slider thumb goes to the center when clicking 'Activate', with this PR it does not :

https://github.com/user-attachments/assets/697acadd-7fb1-40a5-ba5a-b549cac381a1

## Related Issue

iOS fix for [[A11y] Double Tap brings the Slider thumb to the center of the widget.](https://github.com/flutter/flutter/issues/156427)

## Tests

Adds 1 test.
2024-11-12 11:21:23 +00:00
skia-flutter-autoroll
34b684d470 Roll Skia from 75230dbc93e6 to aa099ff91e2f (3 revisions) (flutter/engine#56525)
https://skia.googlesource.com/skia.git/+log/75230dbc93e6..aa099ff91e2f

2024-11-12 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from cf848e50c100 to 4448a7219f6d (7 revisions)
2024-11-12 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 76855a9baecc to d5c428477411 (1 revision)
2024-11-12 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 2a86250e561c to 04483c84503c (5 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brettos@google.com,brianosman@google.com,jsimmons@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-12 06:55:38 +00:00
Chinmay Garde
e6c61d2570 [Impeller] Add OpenGL debugging utilities. (flutter/engine#56515)
* CheckFramebufferStatus needs to be called with the enum for the target type and not the target itself.
* Fix dumping the framebuffer type and object name.

The results should be the following for the default FBO0.
```
[IMPORTANT:flutter/impeller/renderer/backend/gles/render_pass_gles.cc(281)] The default framebuffer (FBO0) was bound.
```

and the following for an offscreen framebuffer:
```
[IMPORTANT:flutter/impeller/renderer/backend/gles/render_pass_gles.cc(281)] The default framebuffer (FBO0) was bound.
[IMPORTANT:flutter/impeller/renderer/backend/gles/render_pass_gles.cc(281)] FBO 1: GL_FRAMEBUFFER_COMPLETE
Framebuffer is complete.
Description: 
Color Attachment: GL_TEXTURE(5)
Depth Attachment: GL_RENDERBUFFER(1)
Stencil Attachment: GL_RENDERBUFFER(1)

```

cc @lyceel
2024-11-12 04:58:26 +00:00
Robert Ancell
99c0b7b50d Add FlPointerManager to process pointer events from GTK in a form suitable for Flutter. (flutter/engine#56443)
This matches FlScrollingManager and FlKeyboardManager.

Add tests for this behaviour that was previously missing.
2024-11-12 14:29:42 +13:00
skia-flutter-autoroll
336c6750ec Roll Skia from 11046fd10394 to 75230dbc93e6 (1 revision) (flutter/engine#56517)
https://skia.googlesource.com/skia.git/+log/11046fd10394..75230dbc93e6

2024-11-11 lukasza@chromium.org [rust png] New API: `SkCodec::hasHighBitDepthEncodedData`.

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 brettos@google.com,brianosman@google.com,jsimmons@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-12 01:04:34 +00:00
Jenn Magder
67eb4ae000 Add dependabot github-actions group (flutter/engine#56468)
`.github/dependabot.yml` configures dependabot to update the `uses` dependencies needed to run github actions.  

For example, dependabot opened https://github.com/flutter/engine/pull/56191 and updated all the `.github/workflows/` yaml files to point to the latest version of `actions/checkout`

Add a dependabot `group` so all github action dependencies are updated in the same PR, instead of one-per-dependency.  For example, if there were an update for `actions/checkout` and `actions/setup-python`, dependabot will send out one PR updating both instead of one PR per dependency.
0d965cb949/.github/workflows/third_party_scan.yml (L23-L28)

New PRs from dependenabot will look like:
__________

<img width="400" alt="Screenshot 2024-11-08 at 11 08 52 AM" src="https://github.com/user-attachments/assets/eebedf69-3fae-409b-9c88-c3afc8036c52">

__________

See also https://github.com/flutter/packages/pull/8044 and https://github.com/flutter/flutter/pull/158408

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-11 23:32:05 +00:00
skia-flutter-autoroll
0d965cb949 Roll Dart SDK from a393f3ed040a to 69170fac244c (1 revision) (flutter/engine#56513)
https://dart.googlesource.com/sdk.git/+log/a393f3ed040a..69170fac244c

2024-11-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-132.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-11 22:38:08 +00:00
Chris Bracken
b773005a98 iOS,macOS: Refactor TestMetalContext for ARC (flutter/engine#56510)
`TestMetalContext` cannot include any Objective-C types in its header file since that header is included in pure C++ translation units. Previously, we declared these fields as `void*`, which then requires manual `__bridge_retained` and `__bridge_transfer` casts to perform the necessary retain/relase manipulation while opting the object in and out of ARC management.

Instead, we extract these to a struct in the implementation file and allow the fields to be managed by ARC. This is an interim measure consistent with the approach we've taken [elsewhere][1] until we implement the proper long-term solution.

The proper long-term solution is to refactor `EmbedderTest` (see: https://github.com/flutter/flutter/issues/157942) and other related code to split out backends into separate translation units, with the Metal backend code in Objective-C++ implementation files, which would then mean the headers could include Objective-C ivars.

No changes to tests, since this change introduces no behaviour changes.

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-11 21:57:04 +00:00
Jonah Williams
6bef907a09 [Impeller] geometry changes to support line/point style. (flutter/engine#56340)
Split off from https://github.com/flutter/engine/pull/55230 . Adds getter that tracks if a Path is a single contour.

################################

https://github.com/flutter/flutter/issues/152702
2024-11-11 21:11:07 +00:00
skia-flutter-autoroll
4184445a91 Roll Skia from af6a4f9a85ee to 11046fd10394 (9 revisions) (flutter/engine#56508)
https://skia.googlesource.com/skia.git/+log/af6a4f9a85ee..11046fd10394

2024-11-11 kjlubick@google.com Revert "Temporarily remove golo machines from CQ"
2024-11-11 lukasza@chromium.org [rust png] Fix memory safety issue by copying `iCCP` chunk data.
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from bb7983730f24 to a049ff55ff14
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll shaders-base from e6fc8c4f0ad2 to 99b73d05cdae
2024-11-11 jamesgk@google.com Use tiled draws to draw bitmaps in tall_streched_bitmaps
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll jsfiddle-base from c6ebdc72f397 to 034839b9814b
2024-11-11 jlavrova@google.com Android typeface: small simplification
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll debugger-app-base from a168d86bd1fd to 931df19ec335
2024-11-11 jamesgk@google.com Don't assume command line flags in Android Viewer

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 brettos@google.com,brianosman@google.com,jsimmons@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-11 21:08:58 +00:00
Jonah Williams
c93a57dfd0 [Impeller] dont unnecessarily copy point data out of display list. (flutter/engine#56492)
Display list now stores impeller::Point objects, so have the PointFieldGeometry reference these points directly. As the dispatching/recording is immediate, there is no need to copy to secondary storage.
2024-11-11 21:07:11 +00:00
Jonah Williams
0489b6bbab [Impeller] fix line/polygon depth and GLES scissor state. (flutter/engine#56494)
Two problems:

1. We were incorrectly clearing scissor state in the GLES render pass. I suspect this is the cause of all of the clipping problems in wonderous.

2. We were incrementing the depth value in drawPoints with line/polygon mode: these actually need to use the same depth values.

Fixed in the same PR because the golden actually demonstrates both problems with GLES, and luckily I found 2. when I noticed 1.

## Before

### Metal/Vulkan

![image](https://github.com/user-attachments/assets/a5541a51-bdf6-4a47-9638-610d9562df6f)

### GLES

![image](https://github.com/user-attachments/assets/9f3ad7e1-8193-405d-98c0-49141c8ab662)
2024-11-11 19:59:53 +00:00
Jason Simmons
ef5c2fc014 Do not stop flutter_tester if microtasks are still pending (flutter/engine#56432)
Flutter_tester has a task observer that checks whether the test's Dart code has finished execution.  If Dart no longer has live ports but does have pending microtasks, then flutter_tester should continue running and force a drain of the microtask queue.

Fixes https://github.com/flutter/flutter/issues/158129
2024-11-11 19:22:07 +00:00
skia-flutter-autoroll
d83dc6bdae Roll Skia from 261316c10484 to af6a4f9a85ee (5 revisions) (flutter/engine#56505)
https://skia.googlesource.com/skia.git/+log/261316c10484..af6a4f9a85ee

2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from a049ff55ff14 to bb7983730f24
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll shaders-base from 99b73d05cdae to e6fc8c4f0ad2
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll jsfiddle-base from 034839b9814b to c6ebdc72f397
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll debugger-app-base from 931df19ec335 to a168d86bd1fd
2024-11-11 kjlubick@google.com Move SkPathEffect::Dash* out of public API

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 brettos@google.com,brianosman@google.com,jsimmons@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-11 19:20:08 +00:00
skia-flutter-autoroll
f5cda5a89a Roll Dart SDK from 4ea43aa234a4 to a393f3ed040a (1 revision) (flutter/engine#56506)
https://dart.googlesource.com/sdk.git/+log/4ea43aa234a4..a393f3ed040a

2024-11-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-131.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-11 18:24:23 +00:00
Robert Ancell
e9012014c0 Remove unused FlMockTextInputHandler (flutter/engine#56495)
This was the only thing that required FlTextInputHandler to be derivable, so also simplify the class.
2024-11-11 17:47:05 +00:00
Mouad Debbar
a13bd21ce9 [web] Bump Firefox version to 132.0 (flutter/engine#56435)
A firefox upgrade is long overdue. This upgrade fixes some failing tests in https://github.com/flutter/engine/pull/54786
2024-11-11 15:14:06 +00:00
skia-flutter-autoroll
8a29542b73 Roll Dart SDK from cde0e0dc084a to 4ea43aa234a4 (1 revision) (flutter/engine#56502)
https://dart.googlesource.com/sdk.git/+log/cde0e0dc084a..4ea43aa234a4

2024-11-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-130.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-11 14:12:15 +00:00
skia-flutter-autoroll
f3fc0a65f3 Roll Dart SDK from ed9a5b1110ae to cde0e0dc084a (6 revisions) (flutter/engine#56500)
https://dart.googlesource.com/sdk.git/+log/ed9a5b1110ae..cde0e0dc084a

2024-11-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-129.0.dev
2024-11-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-128.0.dev
2024-11-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-127.0.dev
2024-11-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-126.0.dev
2024-11-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-125.0.dev
2024-11-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-124.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-11 09:52:22 +00:00
skia-flutter-autoroll
140366b6fc Roll Skia from 3333292a62c1 to 676b3b1a41be (2 revisions) (flutter/engine#56499)
https://skia.googlesource.com/skia.git/+log/3333292a62c1..676b3b1a41be

2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 13a9bd9ccb6d to 2a86250e561c (1 revision)
2024-11-11 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 6082ccfc822c to cf848e50c100 (18 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 brettos@google.com,brianosman@google.com,jsimmons@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-11 07:40:17 +00:00
skia-flutter-autoroll
286a2df0d6 Roll Fuchsia Linux SDK from TZVo85tD5mpzhcafg... to BajfrJuYeyWvnBhuM... (flutter/engine#56497)
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-11 02:05:23 +00:00
skia-flutter-autoroll
a782136ddc Roll Skia from 778b21720a61 to 3333292a62c1 (7 revisions) (flutter/engine#56496)
https://skia.googlesource.com/skia.git/+log/778b21720a61..3333292a62c1

2024-11-10 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from 2a61126bb36c to 7fea539cc99b (6 revisions)
2024-11-10 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from 1e8c53194ceb to 695916e164c9 (3 revisions)
2024-11-10 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from b2edbc3e54d0 to 13a9bd9ccb6d (8 revisions)
2024-11-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 12e843b4aad1 to 1e8c53194ceb (1 revision)
2024-11-08 michaelludwig@google.com [skif] Check for failed blur algorithm output
2024-11-08 michaelludwig@google.com [skif] Check for empty srcRect in float coords
2024-11-08 michaelludwig@google.com [skif] Handle non-finite net downscale factors

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 brettos@google.com,brianosman@google.com,jsimmons@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-11 00:42:22 +00:00
Chris Bracken
aed9a9d3fa fml: Improve CFTest.SupportsCustomRetainRelease test (flutter/engine#56480)
Eliminates the use of statics in CFTest.SupportsCustomRetainRelease (introduced in https://github.com/flutter/engine/pull/56463), "clever" as it was.

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-10 19:59:27 +00:00
Jason Simmons
d4446c079b Remove the unsafe_html analysis rule (flutter/engine#56479)
This rule was deleted from the Dart SDK.

See https://dart.googlesource.com/sdk/+/cb5c73e06fba5f9a795df532480e3d02028696bd
2024-11-09 17:31:36 +00:00
skia-flutter-autoroll
64ef436b93 Roll Fuchsia Linux SDK from aLUsXLv5iMZFOgcAS... to TZVo85tD5mpzhcafg... (flutter/engine#56478)
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-09 14:29:34 +00:00
Chris Bracken
b6b45b19a6 iOS: Use fml::CFRef in place of Scoped (flutter/engine#56463)
`fml::CFRef` implements the bulk of the operations implemented in the one-off `Scoped` class except with better safety guarantees such as `[[nodiscard]]` on the `Release` method. It doesn't implement the `handle()` method that allows direct writing into the internal storage of the wrapper, but that method is effectively an escape hatch for all the safety guarantees provided by the wrapper, so it seems safer to avoid adding it.

No changes to tests since this 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-09 00:51:34 +00:00
skia-flutter-autoroll
d40731706f Roll Dart SDK from 307869c696e8 to ed9a5b1110ae (2 revisions) (flutter/engine#56465)
https://dart.googlesource.com/sdk.git/+log/307869c696e8..ed9a5b1110ae

2024-11-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-123.0.dev
2024-11-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-122.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-09 00:20:19 +00:00
Chris Bracken
3b69a8add8 fml: delete unused scoped_policy (flutter/engine#56462)
The last usage of this was in fml::ScopedBlock which was deleted in
flutter/engine#56410.

No test changes since this just deletes dead code.

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-08 23:27:56 +00:00
Siva
5e7994be0c Manual roll Dart SDK from cfa1826c3df1 to 307869c696e8 (1 revision) (flutter/engine#56460)
https://dart.googlesource.com/sdk.git/+log/cfa1826c3df1..307869c696e8

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

---------

Co-authored-by: skia-flutter-autoroll <skia-flutter-autoroll@skia.org>
2024-11-08 13:57:39 -08:00
Tristan Ross
84300e4029 [Linux] Replace deprecated macros in fl_application_test.cc (flutter/engine#56257)
Fixes this compile error:
```
[211/451] CXX obj/flutter/shell/platform/linux/flutter_linux_unittests.fl_application_test.o
FAILED: obj/flutter/shell/platform/linux/flutter_linux_unittests.fl_application_test.o
../../flutter/buildtools/linux-arm64/clang/bin/clang++ -MMD -MFobj/flutter/shell/platform/linux/flutter_linux_unittests.fl_application_test.o.d -DFLUTTER_ENGINE_NO_PROTOTYPES -DFLUTTER_LINUX_COMPILATION -DUSE_OPENSSL=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_DISABLE_AVAILABILITY=1 -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DSK_FONTMGR_ANDROID_AVAILABLE -DSK_TYPEFACE_FACTORY_FREETYPE -DSK_FONTMGR_FREETYPE_DIRECTORY_AVAILABLE -DSK_FONTMGR_FREETYPE_EMBEDDED_AVAILABLE -DSK_FONTMGR_FREETYPE_EMPTY_AVAILABLE -DSK_GL -DSK_VULKAN -DSK_CODEC_DECODES_JPEG -DSK_CODEC_DECODES_PNG -DSK_CODEC_DECODES_ICO -DSK_CODEC_DECODES_WEBP -DSK_HAS_WUFFS_LIBRARY -DSK_CODEC_DECODES_GIF -DSK_XML -DFLUTTER_RUNTIME_MODE_DEBUG=1 -DFLUTTER_RUNTIME_MODE_PROFILE=2 -DFLUTTER_RUNTIME_MODE_RELEASE=3 -DFLUTTER_RUNTIME_MODE_JIT_RELEASE=4 -DDART_LEGACY_API=\[\[deprecated\]\] -DFLUTTER_RUNTIME_MODE=1 -DFLUTTER_JIT_RUNTIME=1 -DIMPELLER_DEBUG=1 -DIMPELLER_SUPPORTS_RENDERING=1 -DIMPELLER_ENABLE_OPENGLES=1 -DIMPELLER_ENABLE_VULKAN=1 -DSK_CODEC_DECODES_BMP -DSK_CODEC_DECODES_WBMP -DSK_ENABLE_DUMP_GPU -DSK_FORCE_AAA -DSK_LEGACY_IGNORE_DRAW_VERTICES_BLEND_WITH_NO_SHADER -DSK_DISABLE_LEGACY_METAL_BACKEND_SURFACE -DSK_DISABLE_LEGACY_PARAGRAPH_UNICODE -DSK_USE_LEGACY_BLUR_RASTER -DSK_DISABLE_LEGACY_SHADERCONTEXT -DSK_DISABLE_LOWP_RASTER_PIPELINE -DSK_FORCE_RASTER_PIPELINE_BLITTER -DSK_METAL_WAIT_UNTIL_SCHEDULED -DSK_DISABLE_EFFECT_DESERIALIZATION -DSK_R32_SHIFT=16 -DSK_ENABLE_PRECOMPILE -DSK_GANESH -DSK_USE_PERFETTO -I../.. -Igen -I../../flutter/third_party/libcxx/include -I../../flutter/third_party/libcxxabi/include -I../../flutter/build/secondary/flutter/third_party/libcxx/config -I../../flutter -I../../flutter/third_party/dart/runtime -I../../flutter/third_party/dart/runtime/include -Igen/flutter -Igen/flutter/impeller/runtime_stage -I../../flutter/third_party/flatbuffers/include -I../../flutter/third_party/skia -I../../flutter/third_party/googletest/googlemock/include -I../../flutter/third_party/googletest/googletest/include -fno-strict-aliasing -fstack-protector --param=ssp-buffer-size=8 -fPIC -pipe -pthread --target=aarch64-linux-gnu -DBORINGSSL_CLANG_SUPPORTS_DOT_ARCH -fcolor-diagnostics -Wall -Wextra -Wendif-labels -Werror -Wno-missing-field-initializers -Wno-unused-parameter -Wno-unused-but-set-parameter -Wno-unused-but-set-variable -Wno-implicit-int-float-conversion -Wno-deprecated-copy -Wno-psabi -Wno-deprecated-literal-operator -Wno-unqualified-std-cast-call -Wno-non-c-typedef-for-linkage -Wno-range-loop-construct -fdebug-prefix-map=/home/ross/flutter-engine/src/= -no-canonical-prefixes -fvisibility=hidden --sysroot=/nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f -Wstring-conversion -Wnewline-eof -O2 -fno-ident -fdata-sections -ffunction-sections -g0 -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/x56wmsqb0cwv09iqivb7i9fx9iy5zlkf-gtk+3-3.24.43-dev/include/gtk-3.0 -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/as8vpbnch4a9n70x0v22pbmdp0zy0bj5-pango-1.52.2-dev/include/pango-1.0 -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/9n0d1issr9pmaqix7jgzp214mlnz4sw7-harfbuzz-9.0.0-dev/include/harfbuzz -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/22xgw9djkc5jrmm08f8qx8ki8a3yghy5-at-spi2-core-2.52.0-dev/include/atk-1.0 -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/xya3gcnd2ald7yqw1chvfsbrvfdivykh-cairo-1.18.2-dev/include/cairo -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/sd61i6hj14jvf83brrih1irmg7r0vb3v-freetype-2.13.3-dev/include/freetype2 -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/sd61i6hj14jvf83brrih1irmg7r0vb3v-freetype-2.13.3-dev/include -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/i2n1y998igf66wlz6b5yyc5fg1mjp5g7-gdk-pixbuf-2.42.12-dev/include/gdk-pixbuf-2.0 -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0 -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/cw9qz08zwd1li8vd8lm0laywa6rsi3gs-glib-2.80.4/lib/glib-2.0/include -isystem../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/60vanm346k9kjx9adzpsqgci7m0z1b3n-libepoxy-1.5.10-dev/include -Wunreachable-code -Wno-newline-eof -fvisibility-inlines-hidden -std=c++17 -fno-rtti -nostdinc++ -nostdinc++ -fvisibility=hidden -fno-exceptions -Wno-inconsistent-missing-override   -c ../../flutter/shell/platform/linux/fl_application_test.cc -o obj/flutter/shell/platform/linux/flutter_linux_unittests.fl_application_test.o
../../flutter/shell/platform/linux/fl_application_test.cc:11:38: error: 'G_APPLICATION_FLAGS_NONE' is deprecated: Use 'G_APPLICATION_DEFAULT_FLAGS' instead [-Werror,-Wdeprecated-declarations]
   11 |       "com.example.TestApplication", G_APPLICATION_FLAGS_NONE);
      |                                      ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/gio/gioenums.h:1545:28: note: 'G_APPLICATION_FLAGS_NONE' has been explicitly marked deprecated here
 1545 |   G_APPLICATION_FLAGS_NONE GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR(G_APPLICATION_DEFAULT_FLAGS),
      |                            ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/gio/gio-visibility.h:858:50: note: expanded from macro 'GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR'
  858 | #define GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
      |                                                  ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/glib/gmacros.h:1313:43: note: expanded from macro 'GLIB_DEPRECATED_ENUMERATOR_FOR'
 1313 | #define GLIB_DEPRECATED_ENUMERATOR_FOR(f) G_DEPRECATED_FOR(f)
      |                                           ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/glib/gmacros.h:1273:44: note: expanded from macro 'G_DEPRECATED_FOR'
 1273 | #define G_DEPRECATED_FOR(f) __attribute__((__deprecated__("Use '" #f "' instead")))
      |                                            ^
../../flutter/shell/platform/linux/fl_application_test.cc:16:13: error: 'G_APPLICATION_FLAGS_NONE' is deprecated: Use 'G_APPLICATION_DEFAULT_FLAGS' instead [-Werror,-Wdeprecated-declarations]
   16 |             G_APPLICATION_FLAGS_NONE);
      |             ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/gio/gioenums.h:1545:28: note: 'G_APPLICATION_FLAGS_NONE' has been explicitly marked deprecated here
 1545 |   G_APPLICATION_FLAGS_NONE GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR(G_APPLICATION_DEFAULT_FLAGS),
      |                            ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/gio/gio-visibility.h:858:50: note: expanded from macro 'GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR'
  858 | #define GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
      |                                                  ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/glib/gmacros.h:1313:43: note: expanded from macro 'GLIB_DEPRECATED_ENUMERATOR_FOR'
 1313 | #define GLIB_DEPRECATED_ENUMERATOR_FOR(f) G_DEPRECATED_FOR(f)
      |                                           ^
../../../../../../nix/store/l8f409nhbvgl4xgd3ka5bvqjqdr39l6w-flutter-engine-toolchain-af0f0d559c8a87d912a20971bbd84afc80a54b0f/nix/store/5bhcbbcl7p77zv5hx5bdnfggjlpmqzbq-glib-2.80.4-dev/include/glib-2.0/glib/gmacros.h:1273:44: note: expanded from macro 'G_DEPRECATED_FOR'
 1273 | #define G_DEPRECATED_FOR(f) __attribute__((__deprecated__("Use '" #f "' instead")))
      |                                            ^
2 errors generated.
[218/451] CXX obj/flutter/shell/platform/embedder/tests/embedder_unittests.embedder_gl_unittests.o
ninja: build stopped: subcommand failed.
```

*List which issues are fixed by this PR. You must list at least one issue.*

- https://github.com/flutter/flutter/issues/157906

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-08 21:31:19 +00:00
Jonah Williams
c8b4197db3 [iOS] fix tracking of previous platform views. (flutter/engine#56461)
We need to track all previous platform views, even if some component of the hierarchy is missing.
2024-11-08 21:01:32 +00:00
Chris Bracken
88185e0b3e fml: Use CFRef where possible and add docs (flutter/engine#56436)
Document where CFRef takes over or hands back ownership of the underlying CoreFoundation object memory.

Migrates manual CoreFoundation object management to CFRef in:
* impeller/golden_tests/metal_screenshot.mm
* shell/platform/darwin/graphics/FlutterDarwinContextMetalSkia.mm
* shell/platform/darwin/graphics/FlutterDarwinExternalTextureMetal.mm
* shell/platform/darwin/ios/framework/Source/FlutterView.mm
* shell/platform/darwin/macos/framework/Source/FlutterSurface.mm

Adds a `Retain()` method to take shared ownership of the underlying object, as opposed to Reset, where ownership is transferred to the CFRef wrapper.

Adds a `Get()` method to make dealing with bridged Objective-C casts more convenient:
```objc
  fml::CFRef<CFStringRef> cfString(...);
  NSString* aString = (__bridge NSString*)cfString.Get();
```
as opposed to:
```objc
  fml::CFRef<CFStringRef> cfString(...);
  NSString* aString = (__bridge NSString*)static_cast<CFStringRef>(cfString);
```

I considered making use of `fml::scoped_policy::OwnershipPolicy` to add a second parameter to the ctor and `Reset` but, but I think documentation and addition of a `Retain()` method makes things a little clearer at the call site. It's also more consistent with `sk_cfp`, which we use in some Skia bits of the codebase.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-11-08 20:55:23 +00:00
Mouad Debbar
efe78cfd00 [web] Split all 1MB+ fallback fonts (including CJK) (flutter/engine#56388)
By splitting all large fallback fonts (1MB+) into smaller parts, we get faster downloads and fast decoding.

Some fonts are split into 100+ parts, and that's causing `main.dart.js`'s size to grow by ~47KB (Brotli-compressed). The increase in size is due to the extra data we have to store about all the parts of these fonts.

The PR also makes  changes to ensure we don't download the same license file 100 times (once for each part of the split font).

Fixes https://github.com/flutter/flutter/issues/138288
Part of https://github.com/flutter/flutter/issues/153974
2024-11-08 20:44:08 +00:00
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