Tong Mu
c5e0858a01
Add scheduleWarmUpFrame ( flutter/engine#50570 )
...
This PR adds `PlatformDispatcher.scheduleWarmUpFrame`.
This PR is needed for the follow up changes:
* The framework will switch to using this function to render warmup
frames in https://github.com/flutter/flutter/pull/143290 .
* Then the engine will finally be able to switch to multiview pipeline
with no regression on startup timing in
https://github.com/flutter/engine/pull/49950 .
For why the warm up frame must involve the engine to render, see
https://github.com/flutter/flutter/issues/142851 .
## Pre-launch Checklist
- [ ] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [ ] 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 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 `///`).
- [ ] 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
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[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
2024-02-21 16:46:11 -08:00
Matan Lurey
b357d7a45e
Remove/reduce unused or private methods and add tests to SkiaGoldClient ( flutter/engine#50844 )
...
@Piinks correctly pointed out we had to make a number of changes to the engine's `SkiaGoldClient` and we had no test coverage (https://github.com/flutter/engine/pull/50829 , https://github.com/flutter/engine/pull/50826 ).
This corrects the problem.
I am not in _love_ with these tests (they could be less snapshot-y), but the mechanisms I need to write better tests is beyond what I can spend ~1-2 hours on (https://github.com/flutter/flutter/issues/133569 ).
/cc @dnfield @mdebbar
2024-02-22 00:16:57 +00:00
Matan Lurey
1823aa6bc9
Clean up contributing formatting, add a Skia gold callout ( flutter/engine#50828 )
...
I am open to suggestions for other things to write under "Skia Gold".
2024-02-21 16:00:25 -08:00
Gray Mackall
583017ec69
Make Android Studio be able to run android embedding unit tests out of the box ( flutter/engine#50840 )
...
This is pretty rough, it largely copies the configuration from the `test_runner/build.gradle`.
But it lets me click and run unit tests without having to rebuild anything, which is nice:
example
<img width="1537" alt="Screenshot 2024-02-21 at 2 44 19â¯PM" src="https://github.com/flutter/engine/assets/34871572/a48a14dd-b43e-4bd5-a375-3b44e058d0f6 ">
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-21 23:51:18 +00:00
Zachary Anderson
e6d9dca1b7
Shift some deps to //flutter/third_party ( flutter/engine#50830 )
...
Part of https://github.com/flutter/flutter/issues/67373
2024-02-21 23:51:16 +00:00
Juanjo Tugores
e9cfdd0277
Make the view focus binding report focus transitions across elements. ( flutter/engine#50610 )
...
Make the view focus binding report focus transitions across elements.
Previously the web engine reported all the focusin/focusout events as if the elements were first blurred before moving the focus.
Relevant Issues are:
* Design doc: https://flutter.dev/go/focus-management
* Focus in web multiview: https://github.com/flutter/flutter/issues/137443
* Platform dispatcher changes: https://github.com/flutter/engine/pull/49841
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-21 23:02:58 +00:00
Chris Bracken
150019dccb
[macOS] Wrap FlutterEngineTest in autoreleasepool ( flutter/engine#50832 )
...
Previously, these were not freeing allocations. This resulted in a lot
of running engines/threads which triggered issues with running out of
resources (Metal resources in particular).
This also re-enables two disabled unit tests for view background colour.
Issue: https://github.com/flutter/flutter/issues/124677
## 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 at least one completely unnecessary checkbox.
- [X] J'ai ajouté une case à cocher dans une langue autre que l'anglais.
- [X] I added new tests to check the change I am making or feature I am
adding, or 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
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[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
2024-02-21 15:01:57 -08:00
Jason Simmons
b576a1f647
Update the vulkan_glfw sample for the latest roll of vulkan-deps ( flutter/engine#50839 )
2024-02-21 22:58:42 +00:00
skia-flutter-autoroll
2bdfdc4025
Roll Skia from 8fa858855820 to 57490c8d257e (6 revisions) ( flutter/engine#50833 )
...
https://skia.googlesource.com/skia.git/+log/8fa858855820..57490c8d257e
2024-02-21 lovisolo@google.com [bazel] Add sk_gpu_test::VkTestMemoryAllocator class, and use it in sk_gpu_test::CreateVkBackendContext().
2024-02-21 johnstiles@google.com Render Graphite's Perlin noise in local coordinates, not device space.
2024-02-21 bungeman@google.com Adjust warnings for GCC 13
2024-02-21 armansito@google.com [bazel][vello] Update the kurbo/peniko dependencies
2024-02-21 brianosman@google.com Fix component build link errors in skparagraph
2024-02-21 armansito@google.com [bazel] Update rustc to 1.76.0
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 ,jimgraham@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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-21 22:57:34 +00:00
Zachary Anderson
701be200cd
Starts a .ci.yaml parser ( flutter/engine#50783 )
...
Towards https://github.com/flutter/flutter/issues/132807 .
This is needed so the engine tool can map the names of CI builders
listed in `.ci.yaml` to the names of the configurations in the build
config json files in `ci/builders`.
2024-02-21 14:56:07 -08:00
skia-flutter-autoroll
9b80ab8bfb
Roll Dart SDK from f344e2266468 to 0f0f7400c38a (6 revisions) ( flutter/engine#50837 )
...
https://dart.googlesource.com/sdk.git/+log/f344e2266468..0f0f7400c38a
2024-02-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-163.0.dev
2024-02-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-162.0.dev
2024-02-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-161.0.dev
2024-02-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-160.0.dev
2024-02-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-159.0.dev
2024-02-20 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-158.0.dev
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter-engine
Please CC dart-vm-team@google.com ,jimgraham@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-21 22:55:53 +00:00
Loïc Sharma
4865589c11
[Windows] Fix top-level message procedure order ( flutter/engine#50797 )
...
The Windows embedder registers "message procedures" to handle to top-level window events. These message procedures should be called in the order that they are registered.
For example, a plugin can override the embedder's app lifecycle behavior by registering a message procedure before the embedder's app lifecycle message procedure.
This did not always work as expected as the message procedures were ordered by their pointers instead of their insertion order.
Fixes https://github.com/flutter/flutter/issues/137963
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-21 22:52:50 +00:00
John McCutchan
98d7553cd8
Tweak verbose log messages in ImageReaderSurfaceProducer ( flutter/engine#50831 )
...
- Tweak log output.
- Increase MAX_IMAGES from 4 to 5 to avoid a JNI warning message in the
common case.
2024-02-21 13:42:19 -08:00
Matan Lurey
a890ef28e6
Add a throw statement for imgtestAdd non 0 exit codes. ( flutter/engine#50829 )
...
Thanks @Piinks for noticing.
2024-02-21 11:51:02 -08:00
skia-flutter-autoroll
c70da350fe
Roll Skia from 9d86359b5fe8 to 8fa858855820 (15 revisions) ( flutter/engine#50827 )
...
https://skia.googlesource.com/skia.git/+log/9d86359b5fe8..8fa858855820
2024-02-21 kjlubick@google.com Create module for skottie's text_shaper only
2024-02-21 kjlubick@google.com Enforce IWYU on src/core/Sk[ST].*
2024-02-21 jvanverth@google.com [graphite] Limit PathAtlas size to max texture size.
2024-02-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 0c57895d60d7 to 5bd55ab03cb2
2024-02-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from e17dd5a40854 to f546983cc8df (10 revisions)
2024-02-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 01c25f446238 to d6f39f6bf559 (1 revision)
2024-02-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from cbcd86cee01f to 0c57895d60d7 (7 revisions)
2024-02-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 4663ec14a251 to cb331fe0d4f8 (18 revisions)
2024-02-21 michaelludwig@google.com [skif] Don't restrict layer bounds by desired output for deferred actions
2024-02-21 brianosman@google.com Remove several uses of SkColorFilter::filterColor
2024-02-20 johnstiles@google.com Sample from Perlin permutation data at pixel centers.
2024-02-20 johnstiles@google.com Replace vec2 variables with scalars in Perlin mix logic.
2024-02-20 lovisolo@google.com [bazel] Rewrite Ganesh/Vulkan benchmarks to depend on the modular build.
2024-02-20 johnstiles@google.com Disable unreachable-code warning in WGSL.
2024-02-20 kjlubick@google.com Remove SkottieShaper.h
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 ,jimgraham@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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-21 19:26:50 +00:00
Matan Lurey
9cb7bf430b
Add the scenario_app 'solid_blue' golden to the Android test suite ( flutter/engine#50801 )
...
This test is already running in the iOS scenario app:

It should help debug https://github.com/flutter/flutter/issues/143602 by showing if the Android UI is bleeding.
2024-02-21 19:21:53 +00:00
Matan Lurey
05fedd7c11
Ignore EOF newline characters and added tests to dir_contents_diff tool ( flutter/engine#50805 )
...
No issue filed, but was [discussed on discord](https://discord.com/channels/608014603317936148/608021010377080866/1209568840644567091 ).
2024-02-21 19:05:26 +00:00
Jason Simmons
55da4fb37d
Make the GL context current in EmbedderSurfaceGLImpeller before creating the GPU surface ( flutter/engine#50807 )
...
The GPUSurfaceGLImpeller ctor creates an AiksContext/ContentContext, which loads the shader pipelines. If the current thread does not have a GL context and can not execute ReactorGLES operations, then the pipeline futures will not complete. This can cause the raster thread to hang if the reactor has not run and the futures are still incomplete when a rendering task later needs to obtain the pipeline.
2024-02-21 18:37:21 +00:00
Matan Lurey
9a26927508
Fail engine post-submit on skia-gold comparions. ( flutter/engine#50826 )
...
Similar to the framework in https://github.com/flutter/flutter/pull/100576 .
Closes https://github.com/flutter/flutter/issues/143617 .
2024-02-21 18:34:04 +00:00
Gray Mackall
a64eabf997
Remove WindowManager reflection in SingleViewPresentation.java ( flutter/engine#49996 )
...
Fixes https://github.com/flutter/flutter/issues/106449 . Changes it to a static proxy, as the comment recommended. This does mean we will have to update it to override new methods as they are added to the interface when updating the version of the Android sdk we use.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-21 18:31:31 +00:00
gaaclarke
f89abcaf4d
[Impeller] applied the lerp hack to blur (roughly 2x speedup?) ( flutter/engine#50790 )
...
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-21 18:28:31 +00:00
Jason Simmons
3708a26cba
Migrate the Fuchsia embedder to the Dart_RecordTimelineEvent API ( flutter/engine#50823 )
...
Dart_TimelineEvent has been deprecated.
2024-02-21 18:26:55 +00:00
John McCutchan
304382c276
Hook ImageReaderSurfaceProducer to the onTrimMemory listener interface ( flutter/engine#50792 )
...
- Close all ImageReaders and Images when we get an onTrimMemory
callback.
- Remove the first frame fix based around caching the last image
displayed because it isn't safe to do on some platforms. Leave a TODO to
revisit this.
We have seen some reports of platform views not working after an
application is backgrounded and then resumed. According to Android GPU
folks ImageReader/Image/HardwareBuffers should be valid after an
application has been resumed. However on Samsung we know that isn't the
case and there are (unconfirmed) reports of it also impacting Pixel
devices.
Should fix https://github.com/flutter/flutter/issues/142978 and
https://github.com/flutter/flutter/issues/139039
Also fixes https://github.com/flutter/flutter/issues/143720
2024-02-21 10:02:55 -08:00
Matan Lurey
6fdc95a63e
Fix the local-only lint errors due to an unexpected GeneratedPluginRegistrant.java ( flutter/engine#50795 )
...
Remove `android/**/GeneratedPluginRegistrant.java` from the global
`.gitignore`.
This file should never exist in the source tree, locally or on CI, and
it existing/being hidden causes lint errors.
## Background
Here is what we _think_ happens:
- Someone opens `$ENGINE/src/flutter/testing/scenario_app` in VS Code
- VS Code picks this up as a "Flutter package", running `flutter
packages get`
- The Flutter tool generates `../GeneratedPluginRegistrant.java`,
thinking this is a Flutter app
- The lint error fails on `GeneratedPluginRegistrant`
```txt
$ ninja -j100 -C out/android_debug_unopt_arm64/
FAILED: scenario_app/reports/lint-results.xml
vpython3 ../../flutter/testing/rules/run_gradle.py /Users/aaclarke/dev/engine/src/flutter/testing/scenario_app/android lint --no-daemon -Pflutter_jar=/Users/aaclarke/dev/engine/src/out/android_debug_unopt_arm64/flutter.jar -Pout_dir=/Users/aaclarke/dev/engine/src/out/android_debug_unopt_arm64/scenario_app --project-cache-dir=/Users/aaclarke/dev/engine/src/out/android_debug_unopt_arm64/scenario_app/.gradle --gradle-user-home=/Users/aaclarke/dev/engine/src/out/android_debug_unopt_arm64/scenario_app/.gradle
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:lintDebug'.
> Lint found errors in the project; aborting build.
Fix the issues identified by lint, or create a baseline to see only new errors:
'''
android {
lint {
baseline = file("lint-baseline.xml")
}
}
'''
For more details, see https://developer.android.com/studio/write/lint#snapshot
Lint found 1 errors, 0 warnings. First failure:
```
/cc @christopherfujino for any other theories.
2024-02-21 09:58:55 -08:00
Jonah Williams
b4640a0910
[Impeller] cache onscreen render targets. ( flutter/engine#50751 )
...
Currently we cache render pass objects to offscreen render targets only. Caching onscreen doesn't work as 1) the render targets are stored on the texture_vk object and 2) the texture_vk object is recreated for each frame (see https://github.com/flutter/engine/blob/main/impeller/renderer/backend/vulkan/surface_vk.cc#L14 ).
To make sure the render pass is cached, move the storage to the texture source.
part of https://github.com/flutter/flutter/issues/141750
2024-02-21 17:51:56 +00:00
Zachary Anderson
f6629ffe5c
Use 'et format' in CI. Check formatting of all files in CI ( flutter/engine#50810 )
...
This PR changes the format check on CI to use the command added in
https://github.com/flutter/engine/pull/50747 .
Additionally, while making this change, I noticed that the CI check was
not checking the formatting of all files, and that as a result, files
were present in the repo with incorrect formatting. I have fixed the
formatting and fixed the check to always check all files.
2024-02-21 09:38:08 -08:00
Jonah Williams
9d7ba5629a
[Impeller] force bootstrap render pass. ( flutter/engine#50749 )
...
Part of https://github.com/flutter/flutter/issues/138236
Creating the first VkRenderPass takes 6ms on a Pixel 7.
In the previous PR I attempted to use the Impeller HAL API, but this caused more problems than it solved - breaking mocks and also leading to odd behavior I think may be due to threading issues when submitting the bootstrap cmd buffer.
It seems like all we need to do to trigger the shader compilation is create the render pass, so add a ContextVK override that creates and throws it away, without beginning the render pass, creating a cmd buffer, or doing any extra work.
2024-02-21 16:50:03 +00:00
Matan Lurey
a14176f13c
Disallow files additional named GeneratedPluginRegistrant.java. ( flutter/engine#50796 )
...
Closes https://github.com/flutter/flutter/issues/143782 .
Also introduces a test that the test itself passes.
I considered adding this to `ci/analyze.sh`, but it seems better suited for `ci/format.sh` (which is also on git-hooks). Wdut?
2024-02-21 15:34:13 +00:00
Brandon DeRosier
a807720d27
[Impeller] Add GeometryResult enum with StC modes. ( flutter/engine#50816 )
...
Replace `prevent_overdraw` with an enum that also containing the two StC cases.
2024-02-21 08:10:01 +00:00
Brandon DeRosier
45beb486b2
[Impeller] Remove non-Flutter fill types from impeller::Path. ( flutter/engine#50814 )
...
Flutter only supports evenOdd and nonZero, with nonZero being the default.
2024-02-21 07:24:06 +00:00
Brandon DeRosier
935f860071
[Impeller] Apply Entity depth in filter shaders that may render directly to an EntityPass. ( flutter/engine#50742 )
2024-02-21 07:12:16 +00:00
skia-flutter-autoroll
9ef45330b9
Roll Fuchsia Linux SDK from gKg6HlBeR52y-cMhu... to dLhvv964txwnSlvNw... ( flutter/engine#50813 )
...
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 jimgraham@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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-21 06:26:18 +00:00
Bruno Leroux
5e5052b8f9
[Web] Update modifier state when Meta key is seen as Process key ( flutter/engine#50779 )
...
## Description
On Web, browsers can emit key events with a logical key sets to `Process` when the physical key is MetaLeft. Because the modifier state is 0 despite Meta key being pressed this will trigger an assert.
This PR adds some logic for this specific case. Maybe a more slightly broader solution will be needed (using the same logic for all modifiers ?). I focused on MetaLeft because it was directly reported on https://github.com/flutter/flutter/issues/141186 .
## Related Issue
Fixes https://github.com/flutter/flutter/issues/141186 .
## Tests
Adds 1 test.
2024-02-21 05:37:08 +00:00
Jason Simmons
fa635a5b27
Add pub.dev to the hosted package URIs checked by the pub_get_offline script ( flutter/engine#50811 )
...
pub get --offline may fetch packages that are in the local package cache but were previously downloaded from a hosted source. The script needs to check for packages that came from either the old or new locations of the Dart hosted package repository.
2024-02-21 04:45:53 +00:00
Zachary Anderson
6ebbce07e7
Make global builds uniquely named per platform ( flutter/engine#50764 )
...
This is expected to help with
https://github.com/flutter/flutter/issues/132807
2024-02-20 19:41:40 -08:00
Zachary Anderson
6a936a530c
[et] Adds a format command ( flutter/engine#50747 )
...
For https://github.com/flutter/flutter/issues/132807
2024-02-20 19:40:47 -08:00
Brandon DeRosier
21bb5f4bda
[Flutter GPU] Fix symbol export for windows. ( flutter/engine#50755 )
...
Symbols weren't getting exported on Windows because the `FML_OS_WIN`
macro wasn't being imported.
2024-02-20 19:03:27 -08:00
Jonah Williams
5214d3861d
Disable framework smoke tests. ( flutter/engine#50800 )
...
We do not think these tests have value and/or are running in the correct
place. These tests almost never fail. When they do fail, it is often due
to an unrelated breakage in the framework
2024-02-20 17:04:32 -08:00
Jonah Williams
3447737d89
[Impeller] more nullchecks in image decoder. ( flutter/engine#50787 )
...
Speculative fix for https://github.com/flutter/flutter/issues/138897 which cannot be reprouced.
2024-02-20 22:19:55 +00:00
Loïc Sharma
7c8dcec741
[Windows] Add ID to views ( flutter/engine#50788 )
...
Adds an ID to a view:
1. `FlutterWindowsView` now has a ID
2. The `FlutterWindowsEngine::view(...)` accessor now requires a view ID parameter
This is a refactoring with no semantic changes.
Part of https://github.com/flutter/flutter/issues/143765
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-20 20:40:04 +00:00
Matan Lurey
302af8e9f5
Move the scenario_app running Impeller+OpenGLES to bringup: triue ( flutter/engine#50789 )
...
1. OpenGLES is much flakier than Skia or Vulkan.
2. OpenGLES is not currently being released so it's lower priority to
fix.
See https://github.com/flutter/flutter/issues/143626 .
2024-02-20 11:32:00 -08:00
Jason Simmons
c0159abf1b
Implement the render_to_surface flag in GPUSurfaceGLImpeller ( flutter/engine#50669 )
...
Without this, the EmbedderExternalViewEmbedder's call to SurfaceFrame::Submit will render an empty display list that will overwrite the output rendered by the external view embedder's layers.
See https://github.com/flutter/flutter/issues/143387
2024-02-20 19:27:09 +00:00
Zachary Anderson
77cbd54c43
[et] Adds a .bat entrypoint for Windows ( flutter/engine#50784 )
...
For https://github.com/flutter/flutter/issues/132807
2024-02-20 18:48:18 +00:00
zijiehe@
914efefa87
[Fuchsia] Create dedicated testers to run tests and deprecate femu_test ( flutter/engine#50697 )
...
This change creates a fuchsia_profile_arm64_tester builder inside of the existing linux_fuchsia group. Comparing with fuchsia_profile_arm64, it uses `--no-lto` to limit the cost of compilation of test suites.
Similar to the fuchsia_profile_x64, it runs release build test cases + aot test.
E.g. https://ci.chromium.org/ui/p/flutter/builders/try/Linux%20Engine%20Drone/1998852/overview or more accurately https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8755990392554423809/+/u/test:_arm64_emulator_based_profile___aot_tests/stdout .
The same approach also applied to other builders. Now each fuchsia builder has its own tester which compiles test cases without lto. The change reduces the time cost of linux_fuchsia to around 20 min, e.g. https://ci.chromium.org/ui/p/flutter/builders/try/Linux%20linux_fuchsia/6662/overview
After this change, linux_fuchsia group has a higher coverage than the combination of linux fuchsia emu + linux fuchsia emu arm64. So I removed both builders from the `.ci.yaml` as well.
Bug: https://github.com/flutter/flutter/issues/140179
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-20 18:39:09 +00:00
skia-flutter-autoroll
51be21e062
Roll Skia from 50e1b709781c to 9d86359b5fe8 (2 revisions) ( flutter/engine#50786 )
...
https://skia.googlesource.com/skia.git/+log/50e1b709781c..9d86359b5fe8
2024-02-20 sharaks@google.com Merge 6 release notes into RELEASE_NOTES.md
2024-02-20 johnstiles@google.com Optimize unread function parameter passing in SkRP.
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 ,jimgraham@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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-20 18:39:08 +00:00
skia-flutter-autoroll
2a664766fe
Roll Skia from 2dc00a705f1c to 50e1b709781c (5 revisions) ( flutter/engine#50785 )
...
https://skia.googlesource.com/skia.git/+log/2dc00a705f1c..50e1b709781c
2024-02-20 kjlubick@google.com Fix copypasta in EGL define
2024-02-20 herb@google.com Only use _opts unpremul on ARM
2024-02-20 kjlubick@google.com More clang-tidy suggested fixes
2024-02-20 michaelludwig@google.com Reland "[skif] Track padding around FilterResult images"
2024-02-20 johnstiles@google.com Eliminate unnecessary function parameter copies in SkRP.
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 ,jimgraham@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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-20 17:39:10 +00:00
Jonah Williams
7df4674f94
[Impeller] add missing std::move in setup depth stencil. ( flutter/engine#50750 )
...
We copy the std::shared_ptr since both the stencil and depth attachments need to reference this shared ptr. The second usage can still be moved to avoid a shared_ptr release.
2024-02-20 17:29:19 +00:00
Loïc Sharma
f3ad50c810
[Windows] Make the engine create the view ( flutter/engine#50673 )
...
This makes the Windows engine create views. Benefits:
1. This will allow the engine to assign IDs to views as it creates them. This will be added in a subsequent change
2. Previously views needed special logic to not crash if they were used before an engine was attached to them. Now, views are always attached to an engine.
Part of https://github.com/flutter/flutter/issues/137267
Part of https://github.com/flutter/flutter/issues/142845
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-02-20 16:41:46 +00:00
skia-flutter-autoroll
4f1b2c05e6
Roll Skia from 2f9bb1517740 to 2dc00a705f1c (2 revisions) ( flutter/engine#50782 )
...
https://skia.googlesource.com/skia.git/+log/2f9bb1517740..2dc00a705f1c
2024-02-20 brianosman@google.com Use SkColor4f in shader luminance color functions
2024-02-20 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 01a09793b6e4 to 01c25f446238 (5 revisions)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jimgraham@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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-20 16:23:48 +00:00
skia-flutter-autoroll
e0366fd12d
Roll Skia from a76b083ac4cc to 2f9bb1517740 (1 revision) ( flutter/engine#50781 )
...
https://skia.googlesource.com/skia.git/+log/a76b083ac4cc..2f9bb1517740
2024-02-20 sharaks@google.com Update Skia milestone to 124
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 ,jimgraham@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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2024-02-20 15:14:50 +00:00