23113 Commits

Author SHA1 Message Date
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
XuanTung95
3079f40c36 Fix missing dispose VirtualDisplayController (flutter/engine#43807)
VirtualDisplayController.dispose() is missing when dispose Android view.

*List which issues are fixed by this PR. You must list at least one
issue.*
https://github.com/flutter/flutter/issues/130870

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or Hixie said the PR is test-exempt. See [testing the engine]
for instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat

---------

Co-authored-by: John McCutchan <john@johnmccutchan.com>
2023-07-24 11:32:58 -07:00
Jonah Williams
79237f839b [Impeller] provide cull rect to Canvas in GL/Vulakn impeller backend. (flutter/engine#43961)
This was missing compared to the metal version. Doesn't matter on flutter/gallery but might matter elsewhere once platform views are working.
2023-07-24 18:15:52 +00:00
Brandon DeRosier
cf07a16665 [Impeller] Fix clip pipeline validation failure; add dedicated clip shaders. (flutter/engine#43946)
Turns out removing the color attachment is failing Metal validation on iOS due to the pipeline color attachments mismatching the framebuffer (even though it winds up rendering correctly).

So this patch replaces the mechanism with a better default config, including:
* dedicated shaders that are less expensive than Solid Fill
* destination blending

I'll take another swing at trying to get it to work if the iOS benchmarks pop back up a bit from this. For now, this fixes the validation failure and should make clips a tad faster on Vulkan and GLES.
2023-07-24 18:09:56 +00:00
skia-flutter-autoroll
58b01e24fd Roll Skia from a56bc23bfec7 to 99e8dc51ba53 (5 revisions) (flutter/engine#43963)
https://skia.googlesource.com/skia.git/+log/a56bc23bfec7..99e8dc51ba53

2023-07-24 johnstiles@google.com Move SkBitmaskEnum out of include/private/.
2023-07-24 kjlubick@google.com Remove ganesh code from SkImageFilter_Base
2023-07-24 johnstiles@google.com Add accessor functions to Modifiers for readability.
2023-07-24 johnstiles@google.com Pack 4- and 8-stop gradient offsets into float4s.
2023-07-24 michaelludwig@google.com [graphite] Fix key generation for SkWorkingFormatColorFilter

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 17:53:56 +00:00
Zachary Anderson
ef7a6e324b Revert "Remove more calls to SkCanvas::flush() and SkSurface::flush()" (flutter/engine#43957)
Reverts flutter/engine#43902

Speculative revert for Fuchsia tests that began failing/timing-out on
this commit:
https://ci.chromium.org/ui/p/flutter/builders/prod/Linux%20Fuchsia%20FEMU/16871/overview
2023-07-24 09:09:51 -07:00
Kevin Lubick
ec84f26d46 Remove more calls to SkCanvas::flush() and SkSurface::flush() (flutter/engine#43902)
Skia has removed flushing from both
[SkCanvas](https://skia-review.googlesource.com/c/skia/+/716476) and
[SkSurface](https://skia-review.googlesource.com/c/skia/+/698237). This
migrates the calls to use GrDirectContext directly (or removing no-op
flushes for Raster canvases/surfaces).

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or Hixie said the PR is test-exempt. See [testing the engine]
for instructions on writing and running engine tests.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [ ] 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-24 08:54:25 -04:00
skia-flutter-autoroll
4a28374e34 Roll Skia from f512e7eedaef to db314e2867bc (1 revision) (flutter/engine#43945)
https://skia.googlesource.com/skia.git/+log/f512e7eedaef..db314e2867bc

2023-07-24 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from ac6948eb5d9f to 1de81d2a1fc2 (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 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 06:04:46 +00:00
Chinmay Garde
5e366e8cbf [Impeller] Fix typo in help for compiler switches. (flutter/engine#43937)
This typo was just present in the help text. The actual switch name was correct.
2023-07-24 01:31:19 +00:00
Brandon DeRosier
6b147dc9c3 [Impeller] Fix text glyph bounds on Android. (flutter/engine#43919)
Resolves https://github.com/flutter/flutter/issues/128624.

It turns out that `SkFont::getBounds()` snaps results to integers on
Android, but not iOS. By scaling the font up and scaling the resulting
per-glyph bounds back down, we can ensure that the results are always
precise enough.

I also found errors with our usage of the computed bounds, but those
were comparatively minor fixes.
2023-07-22 14:28:29 -07:00
skia-flutter-autoroll
58ce2c8962 Roll Skia from 0d3c35804162 to 6f9ee612c32e (1 revision) (flutter/engine#43926)
https://skia.googlesource.com/skia.git/+log/0d3c35804162..6f9ee612c32e

2023-07-22 briansalomon@gmail.com Add asyncRescaleAndReadPixeksYUVA420 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 bdero@google.com,brianosman@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-22 19:14:06 +00:00
Brandon DeRosier
c0d3d65c06 [Impeller] Propagate PopulateGlyphAtlas through filters. (flutter/engine#43920)
Resolves https://github.com/flutter/flutter/issues/131012.
2023-07-22 11:47:10 -07:00
skia-flutter-autoroll
b85c732e5d Roll Fuchsia Linux SDK from gpjF3QRGg_KH0guW5... to LZJYHQeLdXALTMMmj... (flutter/engine#43917)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC bdero@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

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

To report a problem with the AutoRoller itself, please file a bug:
https://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-22 04:59:30 +00:00
Jonah Williams
4d98fca2df [Impeller] size command pools to npot of command count. (flutter/engine#43903)
Also removes pools for eSampledImage and eSampler as they appear to be unused in our generated headers.

This may have a minor impact on performance as from experimentation we will re-allocate fewer command pools.
2023-07-22 02:48:37 +00:00
skia-flutter-autoroll
82bc5a47e8 Roll Skia from 359d4726e423 to c79c781a3ce3 (2 revisions) (flutter/engine#43913)
https://skia.googlesource.com/skia.git/+log/359d4726e423..c79c781a3ce3

2023-07-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 7db08a9e0a29 to cde04d0cde8e (8 revisions)
2023-07-21 satcom1600@hanmail.net Add Blender of RuntimeEffect to canvaskit

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC bdero@google.com,brianosman@google.com,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-22 00:06:21 +00:00
Jason Simmons
80d0d121cd [Impeller] Do not use clear color optimization if the subpass is being collapsed into its parent (flutter/engine#43878)
The InlinePassContext will not apply the clear color within a parent pass that is already in progress.

Fixes https://github.com/flutter/flutter/issues/130824
2023-07-21 20:34:58 +00:00
skia-flutter-autoroll
6830d49f3d Roll Skia from 2e28fe9de378 to 359d4726e423 (1 revision) (flutter/engine#43906)
https://skia.googlesource.com/skia.git/+log/2e28fe9de378..359d4726e423

2023-07-21 johnstiles@google.com Add `flat` modifier to SSBO index varying.

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,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-21 20:33:19 +00:00
Brandon DeRosier
b5ee961e4f [Impeller] Disable color attachment removal for clips on VK (flutter/engine#43905)
This is causing a validation failure on the Vulkan backend at ToT, as discovered by @jonahwilliams.

Need to figure out why this isn't getting hit in the Vulkan goldens.
2023-07-21 20:17:05 +00:00
Brandon DeRosier
61b006d0ed [Impeller] Add a way to query the gfx backend type. (flutter/engine#43837)
I've been trying to avoid this, but since the context type may vary
through runtime decisions, we just need something like this to select
which shader data to pull from the Dart GPU bundle at runtime. One
alternative would be to add a special omni shader concept to the HAL,
but that seems worse than just letting renderers key with a backend enum
sometimes.

Cautioned against using it for cap checks in the doc string.
2023-07-21 13:11:32 -07:00
skia-flutter-autoroll
6bccb3cf4c Roll Skia from 497326dc66cd to 2e28fe9de378 (2 revisions) (flutter/engine#43900)
https://skia.googlesource.com/skia.git/+log/497326dc66cd..2e28fe9de378

2023-07-21 cmumford@google.com [infra] Add debugger_app_container Bazel config
2023-07-21 lovisolo@google.com [bazel] //gm/vias/SimpleVias.cpp: Delete redundant out.data() call.

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,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-21 18:55:19 +00:00
skia-flutter-autoroll
b7b6090762 Roll Skia from 1f84e9d51bba to 497326dc66cd (1 revision) (flutter/engine#43899)
https://skia.googlesource.com/skia.git/+log/1f84e9d51bba..497326dc66cd

2023-07-21 johnstiles@google.com Fix WGSL codegen for intrinsics that might overflow.

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,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-21 17:58:21 +00:00
Chris Yang
eacae26086 Refactor: fix typo "setup" -> "set up" (flutter/engine#43824)
There are several places in the engine using the word "setup" incorrectly. I have changed them to "set up"

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-07-21 17:06:34 +00:00
Jonah Williams
c309bebb03 [engine] disable picture complexity raster caching (flutter/engine#43897)
Test removing picture complexity based raster caching.
2023-07-21 16:42:09 +00:00
skia-flutter-autoroll
8e24b623e8 Roll Skia from e3d13d1b1c42 to 1f84e9d51bba (1 revision) (flutter/engine#43896)
https://skia.googlesource.com/skia.git/+log/e3d13d1b1c42..1f84e9d51bba

2023-07-21 kjlubick@google.com Allow Ganesh Mesh factories to take nullptr ctx

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,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-21 16:35:47 +00:00
Zachary Anderson
c985c25882 Revert Dart (flutter/engine#43895)
For analyzer failures starting in
https://github.com/flutter/flutter/pull/131050
2023-07-21 09:09:18 -07:00
skia-flutter-autoroll
61d063717c Roll Fuchsia Linux SDK from CWNVmH6f_iryKU05E... to gpjF3QRGg_KH0guW5... (flutter/engine#43894)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC bdero@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

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

To report a problem with the AutoRoller itself, please file a bug:
https://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-21 15:42:19 +00:00
skia-flutter-autoroll
340b50386e Roll Skia from 8388ec4d242c to e3d13d1b1c42 (1 revision) (flutter/engine#43893)
https://skia.googlesource.com/skia.git/+log/8388ec4d242c..e3d13d1b1c42

2023-07-21 kjlubick@google.com Merge SkGpuBlurUtils into GrBlurUtils

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,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-21 15:25:02 +00:00
skia-flutter-autoroll
56a8802593 Roll Dart SDK from 8662af7d9aa3 to 6e79151ce988 (2 revisions) (flutter/engine#43885)
https://dart.googlesource.com/sdk.git/+log/8662af7d9aa3..6e79151ce988

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://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-21 10:24:53 +00:00
skia-flutter-autoroll
bf1080e3b0 Roll Skia from 3dce2d4ee4f3 to 4857e876d8cf (1 revision) (flutter/engine#43882)
https://skia.googlesource.com/skia.git/+log/3dce2d4ee4f3..4857e876d8cf

2023-07-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from a1951225a465 to ac6948eb5d9f (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 bdero@google.com,brianosman@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-21 06:28:16 +00:00
skia-flutter-autoroll
0a24baa004 Roll Dart SDK from 1df95f328d0c to 8662af7d9aa3 (1 revision) (flutter/engine#43876)
https://dart.googlesource.com/sdk.git/+log/1df95f328d0c..8662af7d9aa3

2023-07-20 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.1.0-333.0.dev

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

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

To report a problem with the AutoRoller itself, please file a bug:
https://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-21 02:38:21 +00:00