1152 Commits

Author SHA1 Message Date
J-P Nurmi
42b7de838e [Linux][a11y] implement AtkText::get_text/string_at_offset() (flutter/engine#38144)
This PR implements `AtkText::get_string_at_offset()` (and the deprecated `AtkText::get_text_at_offset()` still used by e.g. Orca) for `FlAccessibleTextField` to allow Orca to read out loud the current character while moving the text cursor around.

### Before (unmute to hear the screen reader)

[textfield-a11y-before.webm](https://user-images.githubusercontent.com/140617/206556644-fb4f4df8-acca-4d97-86d5-7120f0a4871d.webm)

### After (unmute to hear the screen reader)

[textfield-a11y-after.webm](https://user-images.githubusercontent.com/140617/206556678-4fbf9112-291e-4518-a258-e9ca33469430.webm)

Fixes: flutter/flutter#113049

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-07 17:18:04 +00:00
Jason Simmons
92064621b7 Convert pixel formats for animated PNG frames using the source blend mode (flutter/engine#42581)
The destination buffer format may not exactly match the source format. In particular, the alpha type of the source may need to be converted to the alpha type of the destination.

Fixes https://github.com/flutter/flutter/issues/128102
2023-06-07 00:02:03 +00:00
Kevin Lubick
0f09000dea Add missing #include of SkCFObject.h (flutter/engine#42573)
Another follow-on to http://review.skia.org/704942 which removed some
#includes that Flutter had been transitively depending on.

Note that SkCFObject is mac-only, so I included it the appropriate
#ifdef in embedder.cc, but the other two files are already mac-only so
they do not need that guard.

## 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-06-05 14:44:46 -04:00
Matej Knopp
eb1f10ea00 Improve getting non-overlapping rectangles from RTree (flutter/engine#42399)
Fixes https://github.com/flutter/flutter/issues/116070
Fixes https://github.com/flutter/flutter/issues/126202

Introduces `DlRegion` class which implements subset of `SkRegion`
required to get non-overlapping rectangles from region.

The implementation is different and faster than `SkRegion` for this
particular use-case (`display_list_region_benchmarks`):

Edit: Updated benchmark to latest revision and natively (initial run
went through rosetta)
```
----------------------------------------------------------------------------
Benchmark                                  Time             CPU   Iterations
----------------------------------------------------------------------------
BM_RegionBenchmarkDlRegion/Tiny          616 us          616 us          908
BM_RegionBenchmarkSkRegion/Tiny        70559 us        70557 us           10
BM_RegionBenchmarkDlRegion/Small        1315 us         1314 us          537
BM_RegionBenchmarkSkRegion/Small      121736 us       121717 us            6
BM_RegionBenchmarkDlRegion/Medium       1079 us         1079 us          650
BM_RegionBenchmarkSkRegion/Medium      22039 us        22035 us           32
BM_RegionBenchmarkDlRegion/Large         399 us          399 us         1763
BM_RegionBenchmarkSkRegion/Large        1510 us         1510 us          466
```

## 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-06-05 20:41:21 +02:00
Kevin Lubick
14d8bae027 Add missing includes of GrBackendSurface.h (flutter/engine#42563)
In https://skia-review.googlesource.com/c/skia/+/704942, Skia removed
some unnecessary #includes which parts of Flutter had been depending on
implicitly. This adds those includes in explicitly.

## 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-06-05 10:32:41 -04:00
Jason Simmons
c7254f00aa Generate a unique temporary directory name in the iOS scenario test script (flutter/engine#42520)
This ensures that a retry of this script on CI will not collide with the output directory of a previous run.
2023-06-02 21:08:18 +00:00
godofredoc
648918469b Move benchmarks no upload to a test. (flutter/engine#42356)
This is moving the execution of the benchmarks script to a test inside the existing host_relese configuration. It keeps the same coverage with and removes one build.

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

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-02 17:03:58 +00:00
toneyzeng
8c80858576 Support DisposalMethod::kRestorePrevious in MultiFrameCodec and fix the apng problem. (flutter/engine#42153)
Support DisposalMethod::kRestorePrevious in MultiFrameCodec and fix the apng problem.

![image](https://github.com/flutter/engine/assets/5031712/48bb95c1-10b3-4736-a42e-46281d355cd3)

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-06-01 20:07:18 +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
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
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
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
Jim Graham
de4939288a Move checkerboard unit tests onto DisplayList mechanism (flutter/engine#41951)
Part of an ongoing set of efforts to address https://github.com/flutter/flutter/issues/106448

Move the checkerboard layer unit tests onto the DisplayList version of the paint contexts and fix some bugs in the reusability of the DisplayListBuilder that this migration uncovered.
2023-05-25 21:56:25 +00:00
gaaclarke
dc22f5f572 [Impeller] Turn on vulkan tests for mac CI. (flutter/engine#42225)
This uses swiftshader to run the tests on mac.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-24 23:25:06 +00:00
gaaclarke
9258309eed Turned back on debug unit tests (flutter/engine#42261)
I refactored the `EXPECT_EXIT` tests since they are unsafe to execute in a process with multiple threads.

This leaves `flutter_desktop_darwin_unittests` disabled since it has existing issues.

fixes https://github.com/flutter/flutter/issues/103757

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-23 23:13:35 +00:00
Zachary Anderson
1a85b3733f Revert "[ios_platform_view] only recycle maskView when the view is applying mutators #41573" (flutter/engine#42231)
Reverts flutter/engine#42115

Failing on the framework tree as in
https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios%20platform_views_scroll_perf_ios__timeline_summary/11103/overview
2023-05-22 19:35:47 -07:00
Chris Yang
b20b25128a Reland "[ios_platform_view] only recycle maskView when the view is applying mutators #41573" (flutter/engine#42115)
The original PR (https://github.com/flutter/engine/pull/41573) was reverted due to https://github.com/flutter/flutter/issues/126951

The issue will be fixed in https://github.com/flutter/engine/pull/42079

This needs to be landed after https://github.com/flutter/engine/pull/42079

fixes: https://github.com/flutter/flutter/issues/125620

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-22 20:10:37 +00:00
Zachary Anderson
df51526b1d Revert "[ios_platform_view] only recycle maskView when the view is applying mutators" (flutter/engine#42080)
Reverts flutter/engine#41573

Crashing on Framework CI
2023-05-16 14:32:18 -07:00
Chris Yang
259217c7aa [ios_platform_view] only recycle maskView when the view is applying mutators (flutter/engine#41573)
A mistake was introduced in https://github.com/flutter/engine/pull/39498  where the maskViews are already recycles each frame. 

Sometimes a PlatformView does not need to be re-composite: (https://github.com/flutter/engine/blob/main/shell/platform/darwin/ios/framework/Source/FlutterPlatformViews.mm#L398-L401), so the mask view for such PlatformView should not be recycled.

This PR changed the `recycleMaskViews` API to allow individual maskviews to be recycled. `ApplyMutator` then only recycle the maskView for that particular PlatformView.

The MaskViewPool is also reworked to be simpler. 

- The pool now contains a single set of mask views, there is no index counter needed.
- When a maskView is needed, try to get it from the pool. 
  - If pool is empty, create a new view.
  - If pool has an available maskview, remove it from the pool.
- When a PlatformView starts to `applyMutator`, it removes current the maskView, insert the maskView to the pool.
- When the above PlatformView needs to a maskView, it grabs one from the pool. 

fixes: https://github.com/flutter/flutter/issues/125620

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-16 16:24:05 +00:00
Chris Yang
e82760c0ff Fix upload xcresult script in run_tests.py (flutter/engine#42056)
The original PR https://github.com/flutter/engine/pull/41647 forgot to add try-except-raise

fixes https://github.com/flutter/flutter/issues/125823

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-15 23:11:04 +00:00
Chris Yang
8d07db38c5 Upload xcresults to LUCI cloud storage (flutter/engine#41647)
Taking over from https://github.com/flutter/engine/pull/41644

fixes: https://github.com/flutter/flutter/issues/125823

Steps to verify

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-15 19:05:10 +00:00
Kevin Lubick
0946d27add Migrate uses of SkSurface factories (flutter/engine#41978)
In http://review.skia.org/687639, many SkSurface static methods were moved and one was deleted (SkSurface::MakeRasterN32Premul). (SkSurface::MakeNull was omitted accidentally and http://review.skia.org/696537glesource.com/c/skia/+/696537 has not rolled into Flutter yet)

This changes the calls in Flutter to match those moved functions. There should be no functional difference and everything was done pretty mechanically (e.g. find and replace)

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-15 16:41:10 +00:00
gaaclarke
015608f15e [Impeller] starts running vulkan golden image tests with swiftshader (flutter/engine#41958)
fixes https://github.com/flutter/flutter/issues/126022

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-12 20:34:55 +00:00
William Hesse
cb63c1f350 Add pkg:protobuf as a dependency for testing/dart (flutter/engine#41938)
Package vm_service added dependencies on protobuf and fixnum. Adding these, and transitive dependency on collections, to the path overrides in the testing/dart package's pubspec.yaml.

This is needed to roll https://github.com/dart-lang/sdk/commit/6c3c34560e6fdac211e362078557fdda254baf
2023-05-11 12:46:20 +00:00
Jim Graham
7fea2b0933 switch from MockCanvas to DisplayListBuilder in layer unit tests (flutter/engine#41889)
Part of an ongoing set of efforts to address https://github.com/flutter/flutter/issues/106448

The layer unittests have been using a MockCanvas class to record the painting of trees of layers and then testing for the expected output.

A while back a similar mechanism was created to compare DisplayList output and to print out a human-friendly version of the differences found, but it was only used in a few tests written at the time it was created and a few since then.

This is the first in a series of PRs that will move all the rest of the unit tests onto the new DL comparison mechanism, starting with the layer types that just do basic drawing. Some of the remaining layers will require creating new hooks in, for instance, the Texture registry, the performance overlay TextBlob generation, etc.
2023-05-10 19:00:18 +00:00
Dan Field
ea5131772d Add a Display API to dart:ui that reports the physical size, DPR, and refresh rate of the main display (flutter/engine#41685)
Fixes https://github.com/flutter/flutter/issues/123307 - for Android, iOS, and Web, for the main display only (https://github.com/flutter/flutter/issues/125938 tracks supporting multiple displays, https://github.com/flutter/flutter/issues/125939 for desktop).

Desktop will need to be implemented for this, but given priority for a couple of our customers targetting foldable devices on Android I'm inclined to get this in before desktop can be finished.

The main concern for this right now is that on some Android foldable devices, setting a preferred orientation will cause letterboxing and the `MediaQuery` will _never_ get the full screen size when unfolded. This causes apps to think the screen is smaller than it is, as they've mainly been using `MediaQueryData.size` to figure this out. Android's recommendation is to not set a preferred orientation, and if you must to use the new method introduced in `ViewUtil.java` to calculate the maximal window size.
2023-05-06 18:28:22 +00:00
Dan Field
1535542946 Make run_tests.py assert that the ios test dylib is at least as new as libFlutter.dylib (flutter/engine#41720)
This would have helped me figure out why I wasn't getting the same failures as on CI more quickly.
2023-05-04 01:49:22 +00:00
Jonah Williams
dfff522046 Remove physical model layer (flutter/engine#41593)
Removes the physical model layer and associated engine code. This was already deprecated and removed in the framework. By removing it in the engine, we can also remove the need for layer tree diff/paint/preroll to have the device pixel ratio. This will simplify some of the multi-view work

Fixes https://github.com/flutter/flutter/issues/125720
2023-05-03 20:28:53 +00:00
Jason Simmons
5e4cd80437 Clone the parent Android engine's asset provider into a spawned engine (flutter/engine#41642)
Typically the AndroidShellHolder's apk_asset_provider_ is set by AndroidShellHolder::Launch when the DartExecutor runs the engine's entrypoint.

But if the engine was started by Spawn, then the apk_asset_provider_ was not being set.  This would cause a crash if the resulting engine was later used to spawn another engine.

Fixes https://github.com/flutter/flutter/issues/122364
2023-05-02 14:50:58 +00:00
Chris Yang
2c864fa88d Move scenario app to use iPhone Se 3rd gen iOS 16.2, un-skip test TwoPlatformViewsWithOtherBackDropFilterTests (flutter/engine#41532)
iPhone 8 is old and not installed by default with the latest XCodes. Move the scenario test to a newer iPhone that has a home button. (Unfortunately, iPhones without home button have the bottom navigation bar that animates, resulting inconsistency during screenshots)

Fixes https://github.com/flutter/flutter/issues/125167

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-01 20:57:20 +00:00
gaaclarke
b454d4874d [Impeller] Turns on the Metal validator for impeller_unittests. (flutter/engine#40998)
fixes https://github.com/flutter/flutter/issues/121017

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-05-01 18:48:42 +00:00
Casey Hillers
124093c6de Revert "Manual roll skia to d5b4acfb4" (flutter/engine#41381)
Reverts flutter/engine#41378

Tests are passing at
https://dart.googlesource.com/sdk/+/7247a1b3b7166c828a0c2e00259ec03fd737d455
2023-04-20 18:36:06 -07:00
Casey Hillers
d6886ee41e Manual roll skia to d5b4acfb4 (flutter/engine#41378) 2023-04-20 17:01:14 -07:00
Jason Simmons
7938a1c2b3 Manual Skia roll from ad90b6bd4760 to c21e7df194c3 (flutter/engine#41341)
https://skia.googlesource.com/skia.git/+log/ad90b6bd4760..c21e7df194c3

2023-04-19 brianosman@google.com Change Flutter to always use analytic
AA
2023-04-19 18:46:55 -07:00
Chris Bracken
212da506a4 [macOS] Build unittests on all macOS host builds (flutter/engine#41215)
Whether we're building an x64 or arm64 macOS host build, always build
unit tests.

Issue: https://github.com/flutter/flutter/issues/124840
2023-04-14 13:47:05 -07:00
Mouad Debbar
3c70541763 [web] Don't run goldctl init more than once (flutter/engine#41207)
From the logs reported in https://github.com/flutter/flutter/issues/124864 I noticed we are making multiple calls to `goldctl init` which could be causing some race conditions with the `goldctl imgtest add` calls.

This PR makes sure we only call `goldctl init` once.
2023-04-14 20:44:59 +00:00
Chris Yang
94fa5f4edf [ios] fix background crash when FlutterViewController is destroyed after engine destroyed context (flutter/engine#41037)
[ios] fix background crash when FlutterViewController is destroyed after engine destroyed context
2023-04-11 03:45:27 +00:00
Bernardo Ferrari
aa47305b4d SemanticsFlag/SemanticsAction cleanup (part 3) (flutter/engine#40567)
`SemanticsFlag`/`SemanticsAction` cleanup (part 3)
2023-04-10 22:32:03 +00:00
Dan Field
967f12d809 [Impeller] Make multi-frame image decodes work even if the GPU switch is disabled (flutter/engine#40963)
Fixes https://github.com/flutter/flutter/issues/124269

Manually verified this is safe on an iPhone 11.

We're not creating/encoding command buffers in this path so it's ok.
AFAICT the test I added would fail if we started doing that because it
doesn't provide any real command buffer interfaces. Most of the code
here is related to tests.
2023-04-06 11:40:27 -07:00
gaaclarke
6cf914a15b [Impeller] Adds the ability to specify a golden threshold (flutter/engine#40824)
[Impeller] Adds the ability to specify a golden threshold
2023-04-03 22:50:12 +00:00
gaaclarke
0407296be4 [Impeller] backfilled golden tests from playground tests in aiks_unittests. (flutter/engine#40770)
[Impeller] backfilled golden tests from playground tests in aiks_unittests.
2023-03-30 21:38:22 +00:00
Michael Goderbauer
a508065bbc Reland "Post 3.0 lint sync (#40394)" (flutter/engine#40688)
Reland "Post 3.0 lint sync (#40394)"
2023-03-28 03:25:02 +00:00
Brandon DeRosier
9e9590a68f Revert "Post 3.0 lint sync (#40394)" (flutter/engine#40687)
This reverts commit 8ba209121d2671b0d202d9731fe67ec5eb1529b4.
2023-03-27 15:45:59 -07:00
Michael Goderbauer
8ba209121d Post 3.0 lint sync (flutter/engine#40394)
Post 3.0 lint sync
2023-03-27 17:15:08 +00:00
gaaclarke
142803bf72 [Impeller] Adds golden image tests. (flutter/engine#40366)
Added golden image tests to impeller
2023-03-24 16:42:28 -07:00
Jim Graham
37317c5984 restructure DL sources into sub-directories and new file naming conventions (flutter/engine#40157)
restructure DL sources into sub-directories and new file naming conventions
2023-03-21 02:34:48 +00:00
Jim Graham
f9918c006e Reland "Sequester all Skia<->DL interactions into the skia sub-module" (flutter/engine#40435)
Reland "Sequester all Skia<->DL interactions into the skia sub-module"
2023-03-19 22:59:17 +00:00
Zachary Anderson
6abd95a53b Provisional iOS impeller flag flip (flutter/engine#40405) 2023-03-17 20:35:36 -07:00
Chinmay Garde
3563eeb8e7 [Impeller] Add playground flag to render for a specific amount of time. (flutter/engine#40377)
[Impeller] Add playground flag to render for a specific amount of time.
2023-03-18 01:09:06 +00:00
Zachary Anderson
4d98e1f1f7 Ignore some MTLCompiler failures in impeller unit tests (flutter/engine#40391) 2023-03-17 13:05:43 -07:00