22432 Commits

Author SHA1 Message Date
Kevin Lubick
8666e1af8f Register codecs with Skia explicitly (flutter/engine#42320)
In http://review.skia.org/689016, Skia added an option to explicitly
register codecs to use (instead of relying on #defines set by BUILD.gn
rules.

This uses that mechanism to explicitly register all the codecs that
Flutter was currently using from Skia (at least by my read of
[tools/gn](fee0534882/tools/gn (L292)).

I'm not sure if there is another place I need to put this sort of code,
e.g. for Fuchsia things.

To really test this out, we would want to add a define of
SK_DISABLE_LEGACY_INIT_DECODERS when compiling Skia, but I'm not sure
the best place to do this.

## 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-05-31 14:15:18 -04:00
Kevin Lubick
16737de589 Replace use of Skia's private GrRectanizer with a copy of the equivalent code (flutter/engine#42430)
Skia would like clients to not use their private types. This ports the
same functionality into Flutter's codebase with tests.

The implementation was copied from
[Skia](fa87b7c5ba/src/gpu/RectanizerSkyline.cpp)
and then modified to match Flutter's style and have a unit test.

## 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.
- [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
2023-05-31 14:10:33 -04:00
skia-flutter-autoroll
e7d8ac98fd Roll Skia from f475d4f5e080 to cb883f64681b (6 revisions) (flutter/engine#42452)
https://skia.googlesource.com/skia.git/+log/f475d4f5e080..cb883f64681b

2023-05-31 hitawala@chromium.org Change to kAllFlags for RG8Unorm in Dawn/Mtl caps
2023-05-31 johnstiles@google.com Include WGSL source in the error message when validation fails.
2023-05-31 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from baa9940928e0 to 80f062cd2828 (2 revisions)
2023-05-31 johnstiles@google.com Add WGSL support for struct constructors.
2023-05-31 michaelludwig@google.com [skif] Remove SkImageFilters::Image factory that did not take SkSamplingOptions
2023-05-31 johnstiles@google.com Fix precedence in writePrefixExpression.

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,rmistry@google.com,robertphillips@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-05-31 16:46:50 +00:00
Kevin Lubick
88165fc28b Fix bugprone-unchecked-optional-access errors in image_generator_apng (flutter/engine#42450)
Related to #127701

When landing a seemingly unrelated CL, clang-tidy started failing with:

```
 Failures for clang-tidy on /b/s/w/ir/cache/builder/src/flutter/lib/ui/painting/image_generator_apng.cc:
/b/s/w/ir/cache/builder/src/flutter/lib/ui/painting/image_generator_apng.cc:57:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]
  return images_[image_index].frame_info.value();
         ^
/b/s/w/ir/cache/builder/src/flutter/lib/ui/painting/image_generator_apng.cc:154:13: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]
    switch (frame.frame_info->blend_mode) {
            ^
/b/s/w/ir/cache/builder/src/flutter/lib/ui/painting/image_generator_apng.cc:526:7: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]
  if (images_.back().frame_info->disposal_method ==
      ^
/b/s/w/ir/cache/builder/src/flutter/lib/ui/painting/image_generator_apng.cc:535:7: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]
      images_.back().frame_info->disposal_method ==
      ^
/b/s/w/ir/cache/builder/src/flutter/lib/ui/painting/image_generator_apng.cc:538:5: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]
    image->frame_info->required_frame = images_.size() - 1;
    ^
Suppressed 1772 warnings (1772 in non-user code).
```

This addresses those checks by making sure frame_info has a value.

## 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.
- [ ] 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-05-31 08:56:59 -07:00
Kevin Lubick
35f9c71efd Replace SkSurface::flush methods with GrDirectContext methods (flutter/engine#42425)
In https://skia-review.googlesource.com/c/skia/+/698237, Skia moved the
SkSurface::flush* methods to GrDirectContext (and skgpu::ganesh::Flush).
This updates Flutter to use those versions, which are drop-in
replacements for the previous functionality.

## 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].
- [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-05-31 11:07:44 -04:00
skia-flutter-autoroll
7742099fe4 Roll Skia from 298f0a836149 to f475d4f5e080 (1 revision) (flutter/engine#42449)
https://skia.googlesource.com/skia.git/+log/298f0a836149..f475d4f5e080

2023-05-31 sunnyps@chromium.org graphite: Print extra debug information on TextureInfo mismatch

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,rmistry@google.com,robertphillips@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-05-31 14:48:28 +00:00
skia-flutter-autoroll
f8731fbc25 Roll Fuchsia Linux SDK from Nq-KA7nXfrr1RLDGI... to lSKDoGVypQfTMYUZe... (flutter/engine#42447)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC jonahwilliams@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-05-31 10:16:21 +00:00
skia-flutter-autoroll
6a07a866d8 Roll Skia from 0f92eb8c4bbd to 298f0a836149 (1 revision) (flutter/engine#42446)
https://skia.googlesource.com/skia.git/+log/0f92eb8c4bbd..298f0a836149

2023-05-31 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from c721ed541e6d to a3d885eb0ff8 (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,jonahwilliams@google.com,rmistry@google.com,robertphillips@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-05-31 10:08:29 +00:00
skia-flutter-autoroll
d2c5be62f4 Roll Skia from 870e249c99a7 to 78f3a9a4587c (1 revision) (flutter/engine#42440)
https://skia.googlesource.com/skia.git/+log/870e249c99a7..78f3a9a4587c

2023-05-31 michaelludwig@google.com Add saturate() to SkBlenders::Arithmetic

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,rmistry@google.com,robertphillips@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-05-31 03:15:01 +00:00
Jonah Williams
c77372b552 [Impeller] offload all text computation into vertex shader (flutter/engine#42417)
TextContents::Render occassionally shows up in the highest CPU functions. We can actually unload most of this computation into the vertex shader.
2023-05-31 00:30:04 +00:00
Zachary Anderson
9022cac6f8 Enables bugprone-unchecked-optional-access for some files (flutter/engine#42428) 2023-05-30 16:52:58 -07:00
Zachary Anderson
a0d2812b01 Revert "Move linux clang tidy to engine_v2." (flutter/engine#42434) 2023-05-30 16:51:55 -07:00
skia-flutter-autoroll
1768b9050c Roll Skia from fed417995ba9 to 870e249c99a7 (14 revisions) (flutter/engine#42435)
https://skia.googlesource.com/skia.git/+log/fed417995ba9..870e249c99a7

2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from 7c183c4ec0cd to 8447e2792abe (2 revisions)
2023-05-30 jvanverth@google.com [Metal] Fix Caps flag for RG8Unorm.
2023-05-30 scroggo@google.com Change CtsEnforcement for GrGpuBufferTest
2023-05-30 johnstiles@google.com Fix Metal half-precision matrix negation.
2023-05-30 kjlubick@google.com Remove old src/gpu/gl/GrGLDefines.h
2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from 2387dc5297cc to 0df9b0312c1d (2 revisions)
2023-05-30 michaelludwig@google.com Skip FilterResult* tests on Intel ANGLE
2023-05-30 michaelludwig@google.com [skif] Update Magnifier impl to use FilterResult::Builder
2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from 89228c43bb06 to 7c183c4ec0cd (2 revisions)
2023-05-30 kjlubick@google.com Add CI job for Graphite_Metal_Vello
2023-05-30 lovisolo@google.com BazelTestRunner.cpp: Print timestamps.
2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from 7a7bb0e7be36 to 2387dc5297cc (2 revisions)
2023-05-30 michaelludwig@google.com [graphite] Clamp output of cubic sampling
2023-05-30 michaelludwig@google.com SkSamplingOptions ctors not explicit

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,rmistry@google.com,robertphillips@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-05-30 23:50:22 +00:00
gaaclarke
922c7250bd [Impeller] Fixed TypographerTest.MaybeHasOverlapping (flutter/engine#42429)
fixes https://github.com/flutter/flutter/issues/127714

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-30 23:33:00 +00:00
hangyu
ab43a145cf Handle a11y focus event on Ios and android (flutter/engine#41777)
framework change:https://github.com/flutter/flutter/pull/126171
issue: https://github.com/flutter/flutter/issues/94523

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-30 21:50:56 +00:00
Matej Knopp
821bb52e38 Fix unitialized SkRect (flutter/engine#42403)
Empty SkRect needs to be created with `SkRect::MakeEmpty()` otherwise the default value is undefined (and possibly garbage).

*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
2023-05-30 21:37:12 +00:00
Reid Baker
e927e5488f Update engine testing to use api 33 for android tests. (flutter/engine#42351)
#flutter/flutter/127682
The plurality of android users are on api 33. We should be testing on our most used android api.
2023-05-30 20:50:13 +00:00
Greg Spencer
a1b365111f Reland: "Adding app lifecycle notification for macOS and Linux, add hidden state." (#40542) (flutter/engine#42418)
## Description

This reverts commit 879917b to re-land #40542 to fix the lint warning which caused the original PR to be reverted (the lint warnings were turned on after the original was landed, which is why it wasn't caught earlier).
2023-05-30 20:45:46 +00:00
gaaclarke
25154333d5 [Impeller] Fixed GlyphAtlasWithLotsOfdUniqueGlyphSize (flutter/engine#42423)
fixes https://github.com/flutter/flutter/issues/127715

## 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
2023-05-30 13:13:36 -07:00
keyonghan
38da048728 Remove legacy xcode properties/dependencies (flutter/engine#42368)
Now only $flutter/osx_sdk property is being used, and it's safe to remove deprecated entries from ci.yaml.

Part of https://github.com/flutter/flutter/issues/127534
2023-05-30 20:11:13 +00:00
skia-flutter-autoroll
b92ebd5b6d Roll Skia from bab82f14da1a to fed417995ba9 (7 revisions) (flutter/engine#42424)
https://skia.googlesource.com/skia.git/+log/bab82f14da1a..fed417995ba9

2023-05-30 jmbetancourt@google.com fix g3 builds of Skottie adding SlotManager files to appropriate lists
2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from a6a451001673 to 7a7bb0e7be36 (3 revisions)
2023-05-30 lovisolo@google.com BazelTestRunner.cpp: Add flag --skip.
2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll ANGLE from ff110417bb04 to 89228c43bb06 (1 revision)
2023-05-30 lovisolo@google.com SkDebug_android.cpp: Flush after logging to stdout.
2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from 6bc45f9cfde3 to ea3ba34f308e (3 revisions)
2023-05-30 michaelludwig@google.com [skif] Combine SkBlendImageFilter and SkArithmeticImageFilter

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,rmistry@google.com,robertphillips@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-05-30 19:55:01 +00:00
gaaclarke
097856100f [Impeller] removed vulkan unit test csv (flutter/engine#42354)
fixes https://github.com/flutter/flutter/issues/113961

There were just 2 outstanding tests that were failing.

## 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.
- [ ] 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
2023-05-30 11:50:20 -07:00
skia-flutter-autoroll
e28eacec2b Roll Skia from d22106cc40a0 to bab82f14da1a (7 revisions) (flutter/engine#42420)
https://skia.googlesource.com/skia.git/+log/d22106cc40a0..bab82f14da1a

2023-05-30 brianosman@google.com Switch back to Skia CPU defines in SkVx.h
2023-05-30 ccameron@chromium.org SkJpegMetadataDecoder: Add Exif, ICC, and MPF support
2023-05-30 johnstiles@google.com Add WGSL support for inner assignment-expressions.
2023-05-30 jmbetancourt@google.com create new slot manager object for internal skottie builder
2023-05-30 herb@google.com Update discriminant bounds comment
2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from b47e47fa1cc0 to 6bc45f9cfde3 (2 revisions)
2023-05-30 kjlubick@google.com Skip compiling fontations test in WASM

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,rmistry@google.com,robertphillips@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-05-30 17:58:56 +00:00
Jonah Williams
ca82b02c1f [Impeller] delete position_uv, tiled_texture vertex shaders. (flutter/engine#42416)
tiled_texture.vert is identical to texture.vert, and position_uv is unused entirely.
2023-05-30 17:49:04 +00:00
Brandon DeRosier
d8c494c3d8 [Impeller] Bias towards sampling from lower mip levels (flutter/engine#42386)
Resolves https://github.com/flutter/flutter/issues/127174.

Sets the same mip bias as Skia uses. Biases towards sampling from lower
(larger) mip levels -- the tradeoff is a slightly higher cache miss rate
in exchange for sharper/less blurry bilinear min-filtered images.

This makes scaled down images render identically between Impeller and
Skia.
2023-05-30 08:44:48 -07:00
skia-flutter-autoroll
7012c50f7c Roll Skia from 91360f7433b8 to b0fd9b595e50 (1 revision) (flutter/engine#42407)
https://skia.googlesource.com/skia.git/+log/91360f7433b8..b0fd9b595e50

2023-05-30 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from ec598572ad0c to c721ed541e6d (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,rmistry@google.com,robertphillips@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-05-30 07:11:39 +00:00
Brandon DeRosier
d21cfbb514 Fix lint failure in ImageDecoderImpeller (flutter/engine#42402)
This lint started failing on some builders a few hours ago.

https://ci.chromium.org/p/flutter/builders/prod/Linux%20Host%20clang-tidy
2023-05-29 22:33:31 +00:00
dependabot[bot]
089b851454 Bump github/codeql-action from 2.3.3 to 2.3.5 (flutter/engine#42394)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.3.3 to 2.3.5.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/github/codeql-action/blob/main/CHANGELOG.md">github/codeql-action's changelog</a>.</em></p>
<blockquote>
<h1>CodeQL Action Changelog</h1>
<h2>[UNRELEASED]</h2>
<p>No user facing changes.</p>
<h2>2.3.5 - 25 May 2023</h2>
<ul>
<li>Allow invalid URIs to be used as values to <code>artifactLocation.uri</code> properties. This reverses a change from <a href="https://redirect.github.com/github/codeql-action/pull/1668">#1668</a> that inadvertently led to stricter validation of some URI values. <a href="https://redirect.github.com/github/codeql-action/pull/1705">#1705</a></li>
<li>Gracefully handle invalid URIs when fingerprinting. <a href="https://redirect.github.com/github/codeql-action/pull/1694">#1694</a></li>
</ul>
<h2>2.3.4 - 24 May 2023</h2>
<ul>
<li>Updated the SARIF 2.1.0 JSON schema file to the latest from <a href="123e95847b/Schemata/sarif-schema-2.1.0.json">oasis-tcs/sarif-spec</a>. <a href="https://redirect.github.com/github/codeql-action/pull/1668">#1668</a></li>
<li>We are rolling out a feature in May 2023 that will disable Python dependency installation for new users of the CodeQL Action. This improves the speed of analysis while having only a very minor impact on results. <a href="https://redirect.github.com/github/codeql-action/pull/1676">#1676</a></li>
<li>We are improving the way that <a href="https://github.com/github/codeql-action/releases">CodeQL bundles</a> are tagged to make it possible to easily identify bundles by their CodeQL semantic version. <a href="https://redirect.github.com/github/codeql-action/pull/1682">#1682</a>
<ul>
<li>As of CodeQL CLI 2.13.4, CodeQL bundles will be tagged using semantic versions, for example <code>codeql-bundle-v2.13.4</code>, instead of timestamps, like <code>codeql-bundle-20230615</code>.</li>
<li>This change does not affect the majority of workflows, and we will not be changing tags for existing bundle releases.</li>
<li>Some workflows with custom logic that depends on the specific format of the CodeQL bundle tag may need to be updated. For example, if your workflow matches CodeQL bundle tag names against a <code>codeql-bundle-yyyymmdd</code> pattern, you should update it to also recognize <code>codeql-bundle-vx.y.z</code> tags.</li>
</ul>
</li>
<li>Remove the requirement for <code>on.push</code> and <code>on.pull_request</code> to trigger on the same branches. <a href="https://redirect.github.com/github/codeql-action/pull/1675">#1675</a></li>
</ul>
<h2>2.3.3 - 04 May 2023</h2>
<ul>
<li>Update default CodeQL bundle version to 2.13.1. <a href="https://redirect.github.com/github/codeql-action/pull/1664">#1664</a></li>
<li>You can now configure CodeQL within your code scanning workflow by passing a <code>config</code> input to the <code>init</code> Action. See <a href="https://aka.ms/code-scanning-docs/config-file">Using a custom configuration file</a> for more information about configuring code scanning. <a href="https://redirect.github.com/github/codeql-action/pull/1590">#1590</a></li>
</ul>
<h2>2.3.2 - 27 Apr 2023</h2>
<p>No user facing changes.</p>
<h2>2.3.1 - 26 Apr 2023</h2>
<p>No user facing changes.</p>
<h2>2.3.0 - 21 Apr 2023</h2>
<ul>
<li>Update default CodeQL bundle version to 2.13.0. <a href="https://redirect.github.com/github/codeql-action/pull/1649">#1649</a></li>
<li>Bump the minimum CodeQL bundle version to 2.8.5. <a href="https://redirect.github.com/github/codeql-action/pull/1618">#1618</a></li>
</ul>
<h2>2.2.12 - 13 Apr 2023</h2>
<ul>
<li>Include the value of the <code>GITHUB_RUN_ATTEMPT</code> environment variable in the telemetry sent to GitHub. <a href="https://redirect.github.com/github/codeql-action/pull/1640">#1640</a></li>
<li>Improve the ease of debugging failed runs configured using <a href="https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning-for-a-repository#configuring-code-scanning-automatically">default setup</a>. The CodeQL Action will now upload diagnostic information to Code Scanning from failed runs configured using default setup. You can view this diagnostic information on the <a href="https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-the-tool-status-page">tool status page</a>. <a href="https://redirect.github.com/github/codeql-action/pull/1619">#1619</a></li>
</ul>
<h2>2.2.11 - 06 Apr 2023</h2>
<p>No user facing changes.</p>
<h2>2.2.10 - 05 Apr 2023</h2>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0225834cc5"><code>0225834</code></a> Merge pull request <a href="https://redirect.github.com/github/codeql-action/issues/1706">#1706</a> from github/update-v2.3.5-d3314cca2</li>
<li><a href="15f9b00614"><code>15f9b00</code></a> Apply suggestions from code review</li>
<li><a href="ff82fd0736"><code>ff82fd0</code></a> Update changelog for v2.3.5</li>
<li><a href="d3314cca22"><code>d3314cc</code></a> Merge pull request <a href="https://redirect.github.com/github/codeql-action/issues/1705">#1705</a> from github/aeisenberg/location-uri-schema-fix</li>
<li><a href="42add7b4d7"><code>42add7b</code></a> Update changelog</li>
<li><a href="9c5706e1a2"><code>9c5706e</code></a> Avoid throwing validation error on invalid URIs</li>
<li><a href="3912995667"><code>3912995</code></a> Merge pull request <a href="https://redirect.github.com/github/codeql-action/issues/1704">#1704</a> from github/henrymercer/contributions-updates</li>
<li><a href="8d7f61b8f2"><code>8d7f61b</code></a> Update npm version</li>
<li><a href="50bc388cfc"><code>50bc388</code></a> Update Node version</li>
<li><a href="4a409ace8f"><code>4a409ac</code></a> Link to CONTRIBUTING doc from README</li>
<li>Additional commits viewable in <a href="29b1f65c5e...0225834cc5">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github/codeql-action&package-manager=github_actions&previous-version=2.3.3&new-version=2.3.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>
2023-05-29 09:38:06 +00:00
dependabot[bot]
5c095defd3 Bump actions/setup-python from 4.6.0 to 4.6.1 (flutter/engine#42395)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.6.0 to 4.6.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/actions/setup-python/releases">actions/setup-python's releases</a>.</em></p>
<blockquote>
<h2>v4.6.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Fix <code>allow-prereleases</code> sample configuration by <a href="https://github.com/mayeut"><code>@​mayeut</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/615">actions/setup-python#615</a></li>
<li>Fix a incorrect link advanced-usage.md by <a href="https://github.com/siyuan0322"><code>@​siyuan0322</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/657">actions/setup-python#657</a></li>
<li>Remove implicit dependency by <a href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/668">actions/setup-python#668</a></li>
<li>Automatic update of configuration files from 05/23/2023 by <a href="https://github.com/github-actions"><code>@​github-actions</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/671">actions/setup-python#671</a></li>
<li>Add warning for python 2.7 on release/v4 by <a href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a> in <a href="https://redirect.github.com/actions/setup-python/pull/673">actions/setup-python#673</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/siyuan0322"><code>@​siyuan0322</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-python/pull/657">actions/setup-python#657</a></li>
<li><a href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-python/pull/668">actions/setup-python#668</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/actions/setup-python/compare/v4...v4.6.1">https://github.com/actions/setup-python/compare/v4...v4.6.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="bd6b4b6205"><code>bd6b4b6</code></a> Add warning for python 2.7 (<a href="https://redirect.github.com/actions/setup-python/issues/673">#673</a>)</li>
<li><a href="0cbcb9a3d7"><code>0cbcb9a</code></a> Merge pull request <a href="https://redirect.github.com/actions/setup-python/issues/668">#668</a> from akv-platform/disallow-implicit-dependencies</li>
<li><a href="669664dac1"><code>669664d</code></a> Merge branch 'tool-config-auto-update' into disallow-implicit-dependencies</li>
<li><a href="9cbf792a3c"><code>9cbf792</code></a> Update configuration files</li>
<li><a href="e732e40717"><code>e732e40</code></a> Update licenses</li>
<li><a href="a0d867bfa9"><code>a0d867b</code></a> Change http-client dependency to one matching previous version</li>
<li><a href="d99bed8b21"><code>d99bed8</code></a> Update license</li>
<li><a href="f71253fee3"><code>f71253f</code></a> Change to <code>@​action/http-client</code> version to the one that was used in the most re...</li>
<li><a href="b51c97f6e3"><code>b51c97f</code></a> Add eslint rule for disallowing implicit dependencies</li>
<li><a href="db9987b4c1"><code>db9987b</code></a> Fix a incorrect link advanced-usage.md (<a href="https://redirect.github.com/actions/setup-python/issues/657">#657</a>)</li>
<li>Additional commits viewable in <a href="57ded4d7d5...bd6b4b6205">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-python&package-manager=github_actions&previous-version=4.6.0&new-version=4.6.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>
2023-05-29 09:36:22 +00:00
skia-flutter-autoroll
7e25614b5e Roll Skia from f9794b94c518 to 3b86de3c85d0 (2 revisions) (flutter/engine#42392)
https://skia.googlesource.com/skia.git/+log/f9794b94c518..3b86de3c85d0

2023-05-29 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from ec598572ad0c to c721ed541e6d
2023-05-29 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 9b8f1aed38ff to ec598572ad0c (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,rmistry@google.com,robertphillips@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-05-29 07:13:12 +00:00
Zachary Anderson
879917b1e6 Revert "Adding app lifecycle notification for macOS and Linux, add hidden state." (flutter/engine#42384) 2023-05-28 00:02:58 -07:00
skia-flutter-autoroll
b396c0eff1 Roll Skia from 408059b57e25 to 643fae1b1559 (1 revision) (flutter/engine#42383)
https://skia.googlesource.com/skia.git/+log/408059b57e25..643fae1b1559

2023-05-27 drott@chromium.org [Fontations] External factory for instantiating Fontations typeface

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,scroggo@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-05-27 17:32:22 +00:00
skia-flutter-autoroll
da990f10c1 Roll Fuchsia Linux SDK from 2-z8tqXe3ZkKqeb3e... to quUGdiiyRbktsRim0... (flutter/engine#42382)
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-05-27 17:09:17 +00:00
Greg Spencer
2af9be9d97 Adding app lifecycle notification for macOS and Linux, add hidden state. (flutter/engine#40542)
## Description

This adds app lifecycle notification for macOS and Linux, and adds a new `hidden` state to the `AppLifecycleState` enum.

To be functional, this needs a corresponding framework change: https://github.com/flutter/flutter/pull/123274

## Related Issues
 - https://github.com/flutter/flutter/issues/30735

## Tests
 - Added tests for state changes.
2023-05-26 23:24:33 +00:00
skia-flutter-autoroll
a8fcc93b12 Roll Fuchsia Linux SDK from 9aZkaKhX4GslPUnbX... to 2-z8tqXe3ZkKqeb3e... (flutter/engine#42365)
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-05-26 22:51:56 +00:00
keyonghan
b5501f9a72 Fix ci yaml roller caused by incorrect format (flutter/engine#42364)
Follow up of https://github.com/flutter/engine/pull/42339
Fixes: https://github.com/flutter/flutter/issues/127709
2023-05-26 22:35:46 +00:00
Chris Bracken
19c02ddcd9 [macOS] Extract more PlatformViewMutator code (flutter/engine#42361)
This extracts an extra method from `[FlutterMutatorView applyFlutterLayer:]` to perform the final PlatformViewContainer and PlatformView re-nesting in the view stack, then apply transforms, and finally apply the outer axis-aligned master clip rect around the whole thing.

This is a refactoring for readability (primarily clearer parameterisation) and applies no semantic changes to the code. This is the last in a series of refactoring applied to this method.

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-26 22:14:42 +00:00
Zachary Anderson
5633d0d833 Enable bugprone-unchecked-optional-access, disable in files with warnings (flutter/engine#42359)
First part of https://github.com/flutter/flutter/issues/127701
2023-05-26 21:58:46 +00:00
skia-flutter-autoroll
9a5ec10306 Roll Skia from ac897edeb16a to 8d475ae01f09 (9 revisions) (flutter/engine#42363)
https://skia.googlesource.com/skia.git/+log/ac897edeb16a..8d475ae01f09

2023-05-26 kjlubick@google.com Remove SkTableColorFilter from public API
2023-05-26 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from ab6a9b9906ca to a7207e9dcc0b (14 revisions)
2023-05-26 drott@chromium.org [Fontations] Remove middle gen/ path extension for cxxbridge output
2023-05-26 jvanverth@google.com [graphite] Add extraResourceRefs before adding commands to cmdBuffer.
2023-05-26 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 7fd101e2d93d to c5402967c768 (1 revision)
2023-05-26 brianosman@google.com Remove -fno-stack-check from SkOpts code on Mac
2023-05-26 herb@google.com Calculate a very accurate discriminant
2023-05-26 robertphillips@google.com [graphite] Remove another Ganesh dependency from the TiledTextureUtils
2023-05-26 cmumford@google.com Add show_includes GN build argument

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,scroggo@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-05-26 21:58:43 +00:00
Renzo Olivares
ea95b85e63 [macOS] Do not bounce editing state back to framework on setEditState (flutter/engine#42091)
Some context for this change https://github.com/flutter/flutter/issues/118642#issuecomment-1550864240 and https://github.com/flutter/flutter/issues/118759#issuecomment-1551906489 . Tldr, the use-case that this bouncing was originally introduced for in #13702 is no longer an issue.

This ack response is also not present on other desktop platforms or iOS.

Fixes [#118759](https://github.com/flutter/flutter/issues/118759) and [#118642](https://github.com/flutter/flutter/issues/118642)
2023-05-26 21:07:02 +00:00
Mouad Debbar
ad6f346f5f [web] Correct JS property name for baseUri (flutter/engine#42357)
Up to this point, whenever users use the `PathUrlStrategy`, they would be using `flutter_web_plugins`'s copy of `BrowserPlatformLocation` which has a [different implementation for `getBaseHref()`](9376a2ac60/packages/flutter_web_plugins/lib/src/navigation/url_strategy.dart (L235)). So we never hit the [implementation in the engine](d73aac2434/lib/web_ui/lib/ui_web/src/ui_web/navigation/platform_location.dart (L138)), meaning the bug was invisible.

Now that we are [removing](https://github.com/flutter/flutter/pull/126851) `BrowserPlatformLocation` from `flutter_web_plugins`, we are hitting the engine's implementation which contains the bug being solved in this PR.
2023-05-26 20:16:59 +00:00
gaaclarke
d73aac2434 Started executing vulkan unit tests with validation on macos (flutter/engine#42337)
fixes https://github.com/flutter/flutter/issues/127634

This PR depends on a buildroot change at https://github.com/flutter/buildroot/pull/737

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-26 19:05:19 +00:00
Dan Field
83b6fa4ff7 [Impeller] Avoid encoding metal commands while the GPU is unavailable when decoding images. (flutter/engine#42349)
Fixes https://github.com/flutter/flutter/issues/126878

This disables device private upload on iOS when backgrounded, and disables mipmap generation when backgrounded.

We don't have a good way to test the core problem in this repo because it only reproduces on physical iOS hardware - simulators don't really care if you do this stuff in the background.

I'll write a devicelab test in the framework to capture this. In the mean time it can be reviewed.

We could consider making the IOManager a shared_ptr instead of having an fml::WeakPtr and that'd clean up some of the extra arguments to engine construction - or we could consider vending the sync switch from impeller::Context unconditionally, but it's pretty iOS specific...
2023-05-26 18:46:33 +00:00
Mouad Debbar
8259db4b30 [web] Use the new js_util.callMethod(Object, Object) (flutter/engine#42352)
Now that `js_util.callMethod` can take an `Object` as a method name, we can use it directly for methods that are accessed through a `Symbol`.
2023-05-26 18:31:47 +00:00
Jackson Gardner
30a56394c9 Don't use a factory constructor on the finalization registry. (flutter/engine#42350)
The factory constructor breaks the Google3 build for some reason. See b/284478971
2023-05-26 17:56:05 +00:00
godofredoc
afe56803a3 Checkout android and emsdk deps in linux. (flutter/engine#42339)
This is to optimize the caches for builders that require those dependencies.

Bug: https://github.com/flutter/flutter/issues/127627

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-26 17:20:38 +00:00
Hassan
f0e2596c5c [web] - Fix autofill group input ordering (flutter/engine#42268)
Ordering of input elements inside of the DOM tree for autofill groups does not reflect the order of the form rendered on screen.  This is causing some issues with password managers and autofill, specifically Bitwarden.

We are currently always appending the currently focused input element to the end of the form. 

This leads to a tree that appears out of order:
<img width="354" alt="Screenshot 2023-05-23 at 2 57 37 PM" src="https://github.com/flutter/engine/assets/110993981/7e90a93f-5522-4482-8fb6-a1607b403d10">

This fix is tracking the position of where the focused input node should be inserted and inserting it there, rather than always at the end of the form.  Once the tree is ordered correctly, Bitwarden's autofill logic works in Flutter forms. 

Tree order after fix:
<img width="502" alt="Screenshot 2023-05-23 at 6 01 05 PM" src="https://github.com/flutter/engine/assets/110993981/bd15a8a1-71f4-4f28-a86e-1903953bf030">

Fixes https://github.com/flutter/flutter/issues/61301
2023-05-26 16:17:18 +00:00
Jason Simmons
6bd25a9256 Apply the drawShadow bounds workaround to the Web HTML backend (flutter/engine#42304)
Previously the Flutter framework had been inflating the rectangle computed for the bounds of a drawShadow operation in order to work around potential inaccuracies in the SkPicture's bounds calculation.

That workaround is now obsolete for most platforms and was removed from the framework (see https://github.com/flutter/flutter/pull/127052). But the Web HTML backend is using different code for computing shadow bounds.  This PR restores the workaround for Web HTML for consistency with the old behavior.
2023-05-26 14:31:26 +00:00
skia-flutter-autoroll
da13fc6c28 Roll Fuchsia Linux SDK from DNwJQMQZladAsKTjv... to 9aZkaKhX4GslPUnbX... (flutter/engine#42343)
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-05-26 08:56:13 +00:00
skia-flutter-autoroll
2bdf483ebd Roll Skia from a47a68da8291 to 7e20e6679785 (1 revision) (flutter/engine#42340)
https://skia.googlesource.com/skia.git/+log/a47a68da8291..7e20e6679785

2023-05-26 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 2b787917e4a3 to 9b8f1aed38ff (11 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC bdero@google.com,brianosman@google.com,rmistry@google.com,scroggo@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-05-26 07:24:39 +00:00