Dan Field
c451232db5
[Impeller] Documentation for SurfaceContextVK ( flutter/engine#49882 )
...
See #44171
2024-01-19 19:08:09 +00:00
Ricardo Amador
4e8fee2701
Adding ignore paths to cache test ( flutter/engine#49874 )
...
Adding exclusion paths to the Mac builder_cache target to avoid archiving symlinks in the SDKs or other unwanted packages. Symlinks cause issues with the CAS archiving functionality. We have opened a bug for the LUCI team regarding this as well.
Companion CL in recipes is here: https://flutter-review.googlesource.com/c/recipes/+/54110
*List which issues are fixed by this PR. You must list at least one issue.*
Fixes https://github.com/flutter/flutter/issues/141688
*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-19 18:58:23 +00:00
Jim Graham
64e292e6e1
[Impeller] switch Rect fields to LTRB implementation ( flutter/engine#49816 )
...
Switches the Rect class implementation to an LTRB (Left, Top, Right, Bottom) set of fields for efficiency in performing rectangle operations. Additionally, the methods have been somewhat hardened to the following issues:
- NaN values should always act as if the rect is empty
- Helps with https://github.com/flutter/flutter/issues/132770
- Saturated math methods are added to avoid overflow for integer rects
- Normalized treatment of empty rectangles in rect/rect operations
- empty.Union(anything) == anything
- empty.Intersection(anything) == empty
- empty.IntersectsWith(anything) == false
- empty.Contains(anything) == false
- non-empty.Contains(empty) == true
- MakeMaximum now returns finite rectangles which should produce non-nan values from all getters
- A lot more testing of all of these behaviors within the unit tests
In addition, the new rectangle is closer to what DisplayList and the Skia backend have been using all along so we might be able to switch to using Impeller geometry inside DisplayList to reduce overhead for both backends.
2024-01-19 18:27:04 +00:00
zijiehe@
0f1211b660
[Fuchsia] Redo - Use chromium test-scripts to download images and execute tests ( flutter/engine#49847 )
...
This change is a redo of https://github.com/flutter/engine/pull/49650 .
https://github.com/zijiehe-google-com/engine/compare/de5c713..main
should show the diff between this and the original change.
Following paragraph is copied from the original change.
This change requires https://github.com/flutter/buildroot/pull/811 , and
can be executed from buildroot by
```
python3 flutter/tools/fuchsia/with_envs.py flutter/testing/fuchsia/run_tests.py
```
Bug: https://github.com/flutter/flutter/issues/140179
## Pre-launch Checklist
- [V] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [V] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [V] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [V] I listed at least one issue that this PR fixes in the description
above.
- [V] 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.
- [V] I updated/added relevant documentation (doc comments with `///`).
- [V] I signed the [CLA].
- [V] All existing and new tests are passing.
2024-01-19 09:36:56 -08:00
skia-flutter-autoroll
5269a7172d
Roll Skia from fb3f61d932e6 to 2536dc6fef1d (2 revisions) ( flutter/engine#49892 )
...
https://skia.googlesource.com/skia.git/+log/fb3f61d932e6..2536dc6fef1d
2024-01-19 johnstiles@google.com Report an error if variables are scoped incorrectly.
2024-01-19 johnstiles@google.com Add no-op TRACE_EVENT_OBJECT macros.
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-19 16:48:58 +00:00
skia-flutter-autoroll
267f2c9e01
Roll Skia from 961ad2c3fcf5 to 0a78d1f0ef48 (1 revision) ( flutter/engine#49890 )
...
https://skia.googlesource.com/skia.git/+log/961ad2c3fcf5..0a78d1f0ef48
2024-01-19 johnstiles@google.com Revert "Disable TRACE_EVENT macros when optimizing for size."
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-19 15:18:22 +00:00
Jesse Seales
8352fd8dc3
Re-enable osv-scanner on pushes to main ( flutter/engine#49729 )
...
The osv-scanner workflow was disabled on pushes to main while testing the PR patching workflow. This change re-enables the scanner to run on pushes to main (excluding forks).
Successful run of the current vulnerability workflow here: https://github.com/flutter/engine/actions/runs/7561640856/job/20590736333
*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-19 15:09:45 +00:00
skia-flutter-autoroll
a7274ef77e
Roll Skia from 273b0628a969 to 961ad2c3fcf5 (1 revision) ( flutter/engine#49889 )
...
https://skia.googlesource.com/skia.git/+log/273b0628a969..961ad2c3fcf5
2024-01-19 johnstiles@google.com Disable TRACE_EVENT macros when optimizing for size.
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-19 14:10:15 +00:00
skia-flutter-autoroll
c30b22d0fa
Roll Fuchsia Linux SDK from dTy8CK4YxnUsW305O... to geXIwPzzJiSXrZEEb... ( flutter/engine#49888 )
...
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://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-01-19 12:33:05 +00:00
Bruno Leroux
7001e5cc63
[Android] Fix KeyEmbedderResponder throws a NullPointerException ( flutter/engine#49860 )
...
## Description
This PR fixes a `NullPointerException` thrown from `KeyEmbedderResponder` when pressing a key during a hot restart (at this time the framework might not be ready and null reply is sent back).
## Related Issue
Fixes https://github.com/flutter/flutter/issues/141662 .
## Tests
Adds 1 test.
2024-01-19 09:17:06 +00:00
skia-flutter-autoroll
d3f399d655
Manual roll Dart SDK from d6c08fa9bb54 to 8d697eaa395c (23 revisions) ( flutter/engine#49880 )
...
Manual roll requested by zra@google.com
https://dart.googlesource.com/sdk.git/+log/d6c08fa9bb54..8d697eaa395c
2024-01-19 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-47.0.dev
2024-01-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-46.0.dev
2024-01-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-45.0.dev
2024-01-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-44.0.dev
2024-01-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-43.0.dev
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-42.0.dev
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-41.0.dev
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-40.0.dev
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-39.0.dev
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-38.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-37.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-36.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-35.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-34.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-33.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-32.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-31.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-30.0.dev
2024-01-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-29.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-28.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-27.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-26.0.dev
2024-01-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-25.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 ,jonahwilliams@google.com,zra@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-01-19 02:10:38 +00:00
Loïc Sharma
e47107cf38
[Windows] Refactor logic when window resize completes ( flutter/engine#49872 )
...
Changes:
1. Moves surface buffer swapping from `FlutterWindowsView` to `CompositorOpenGL`
1. Renames `FlutterWindowsView::SwapBuffers` to `FlutterWindowsView::OnFramePresented`
2. Previously, if a resize was pending and the window was not visible Windows would unblock the platform thread before swapping buffers. This trick aimed to reduce the time the platform thread was blocked as swapping buffers previously waited until the v-blank. This logic was removed as swapping buffers no longer waits until the v-blank.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-18 22:11:16 +00:00
skia-flutter-autoroll
0d54fa3c36
Roll Skia from 40200ceca00e to da3bfb25fb84 (1 revision) ( flutter/engine#49873 )
...
https://skia.googlesource.com/skia.git/+log/40200ceca00e..da3bfb25fb84
2024-01-18 johnstiles@google.com Fix for-loop variable scoping.
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-18 22:05:23 +00:00
Filip Filmar
a53f140211
[fuchsia] Wire through the tzdata-icu capability ( flutter/engine#48907 )
...
The `tzdata-icu` capability is a directory containing
ICU time zone resource files. These are requried for
correct computation of local times.
Issue: https://github.com/flutter/flutter/issues/139952
## 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 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.
2024-01-18 13:18:14 -08:00
skia-flutter-autoroll
adf794ea69
Roll Skia from 31fae9f0cdd1 to 40200ceca00e (1 revision) ( flutter/engine#49871 )
...
https://skia.googlesource.com/skia.git/+log/31fae9f0cdd1..40200ceca00e
2024-01-18 jlavrova@google.com Removing FreeType references for Chrome
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-18 21:16:15 +00:00
skia-flutter-autoroll
7d6886b7ec
Roll Skia from 1064eeedac09 to 31fae9f0cdd1 (1 revision) ( flutter/engine#49869 )
...
https://skia.googlesource.com/skia.git/+log/1064eeedac09..31fae9f0cdd1
2024-01-18 michaelludwig@google.com [graphite] Use SIMD half conversion in UniformManager
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-18 19:41:49 +00:00
Harry Terkelsen
de6ec5b77e
[canvaskit] Fall back to multi-context rendering on Firefox and Safari ( flutter/engine#49572 )
...
This PR refactors rasterization to support two different modes, single
GL context mode backed by a single OffscreenCanvas (Chrome), and
multi-context mode which uses many GL contexts and canvases.
## 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 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-01-18 11:22:09 -08:00
godofredoc
1798b687d8
Use any mac machine available for orchestrator run. ( flutter/engine#49845 )
...
This will remove some of the stress on x64 machines and will help to get faster builds on dart-internal.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-18 18:56:35 +00:00
Jesse Seales
eb29ac8bbc
Simplify osv-scanner workflow ( flutter/engine#49807 )
...
This change simplifies the osv-scanner workflow by extracting dependencies from the DEPS file and then finding their common ancestor commit with upstream in one script.
Fixes: https://github.com/flutter/flutter/issues/141184
*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-18 18:48:00 +00:00
skia-flutter-autoroll
cc2dbc4ce1
Roll Skia from b1611add5939 to 1064eeedac09 (6 revisions) ( flutter/engine#49867 )
...
https://skia.googlesource.com/skia.git/+log/b1611add5939..1064eeedac09
2024-01-18 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from 7c236cb7a5a2 to f4b64e5c220e
2024-01-18 drott@chromium.org [Fontations-backend] Add nested COLRv1 PaintGlyph tests
2024-01-18 bungeman@google.com Re-add FreeType include to Fontations test and gm
2024-01-18 johnstiles@google.com Hoist variables properly when rewriting for-loop initializers.
2024-01-18 johnstiles@google.com Fix fuzzer-discovered error with sk_LastFragColor.
2024-01-18 egdaniel@google.com Remove old intel workaround to avoid non-coherent memory.
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-18 18:13:17 +00:00
Dan Field
5113cf4282
[Impeller] Eliminate some shared_ptr copying from EntityPass::Render ( flutter/engine#49855 )
...
Every drop counts right?
2024-01-18 17:43:01 +00:00
Victoria Ashworth
0c7d05da12
Update tests to Xcode 15 and iOS 17 simulator ( flutter/engine#49833 )
...
Engine part of https://github.com/flutter/flutter/issues/132237 .
Also, fixes https://github.com/flutter/flutter/issues/125227 .
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-18 16:07:54 +00:00
skia-flutter-autoroll
7d992ddb79
Roll Skia from 7b3d788ba978 to b1611add5939 (1 revision) ( flutter/engine#49863 )
...
https://skia.googlesource.com/skia.git/+log/7b3d788ba978..b1611add5939
2024-01-18 kjlubick@google.com Add missing include
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-18 15:45:09 +00:00
skia-flutter-autoroll
d7b542b200
Roll Fuchsia Linux SDK from GuU0e5WxJCi92Scz8... to dTy8CK4YxnUsW305O... ( flutter/engine#49859 )
...
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://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-01-18 08:58:13 +00:00
Bruno Leroux
d925ac1a53
[Android] Reset IME state in TextInputPlugin.clearTextInputClient ( flutter/engine#49829 )
...
## Description
This PR calls Android API `InputMethodManager.restartInput` to reset IMEs internal states. Otherwise some IMEs (Gboard for instance) keep reacting based on the previous input configuration until a new configuration is set.
- On Android native, `restartInput` is called in several places, for instance in f219798774/android/widget/TextView.java (L2458) .
- On Compose, https://github.com/flutter/flutter/issues/70546#issuecomment-1088345561 pointed out where it is called.
- On Flutter, it is called at some point but mainly when another `TextField` is focused (it is mainly called in `setTextInputEditingState`).
## Related Issue
Fixes https://github.com/flutter/flutter/issues/70546 .
## Tests
Adds 1 test.
2024-01-18 06:38:34 +00:00
Dan Field
55a6cc2dca
Delete trace event from DeviceBufferVK ( flutter/engine#49854 )
...
We don't have this in the GLES or MTL backends, and it's showing up in profiling.
2024-01-18 05:22:02 +00:00
Jonah Williams
c380791070
[Impeller] remove shared_ptr copies during text contents rendering. ( flutter/engine#49837 )
...
We copied the shared ptr to make it easy to return nullptr, but instead we could use a static const assigned to nullptr
2024-01-18 05:21:59 +00:00
Yegor
eb33bab677
[web] fix ==/hashCode/toString for several classes across renderers ( flutter/engine#49786 )
...
Fix equality and hash code in `ParagraphStyle` and `StrutStyle` across renderers. Since those classes transitively rely on `Paint` and other classes, also fix those at least to a point that they pass the `test/painting/text_style_test.dart` test on the framework side.
2024-01-18 04:01:28 +00:00
auto-submit[bot]
c993772870
Reverts "Manual roll Dart SDK from d6c08fa9bb54 to 6ff69d6b7f59 (15 revisions)" ( flutter/engine#49852 )
...
Reverts flutter/engine#49825
Initiated by: zanderso
This change reverts the following previous change:
Original Description:
Manual roll requested by aam@google.com
https://dart.googlesource.com/sdk.git/+log/d6c08fa9bb54..6ff69d6b7f59
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-39.0.dev
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-38.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-37.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-36.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-35.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-34.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-33.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-32.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-31.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-30.0.dev
2024-01-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-29.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-28.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-27.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-26.0.dev
2024-01-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.4.0-25.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
aam@google.com ,dart-vm-team@google.com,jonahwilliams@google.com on the
revert to ensure that a human
is aware of the problem.
To file a bug in Flutter Engine:
https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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
Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com>
2024-01-17 17:43:36 -08:00
skia-flutter-autoroll
ef1521feb9
Roll Skia from 5abf9717ea92 to 31f275e8fcc7 (8 revisions) ( flutter/engine#49850 )
...
https://skia.googlesource.com/skia.git/+log/5abf9717ea92..31f275e8fcc7
2024-01-18 mike@reedtribe.org Simplify SkFontHost_FreeType_common.h
2024-01-17 johnstiles@google.com Convert ForLoopMultipleInit into a runnable test.
2024-01-17 johnstiles@google.com Use a Block to hold the body of a switch statement.
2024-01-17 herb@google.com Remove segment list pre-processing
2024-01-17 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 5803e963cb95 to afab4ff4f0df (4 revisions)
2024-01-17 herb@google.com Improve fuzzability for slug stream
2024-01-17 kjlubick@google.com Reland "Remove SkFontMgr::RefDefault() and dependent APIs"
2024-01-17 johnstiles@google.com Minor simplifications in Parser token handling.
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-18 01:42:09 +00:00
gaaclarke
e98902235d
Reland: [Impeller] Turned on new blur. ( #48472 ) ( flutter/engine#49642 )
...
This is a reland of the new gaussian blur.
Changes since revert:
1) Textures are now recycled with ping ponging to reduce memory usage
1) Mipmaps are generated to diminish the shimmering that happens with animated blurs (in metal)
---
This new blur should perform faster since it scales down the image before blurring it. Jonah did early testing of it and found it to be faster. Scrolling around with the blur perf bug it seems faster. It also has a wider test bed and is hopefully easier to maintain since it contains all of its logic for both directions.
testing: There are existing blur tests and we've backfilled more as we've added features to this blur.
fixes https://github.com/flutter/flutter/issues/131580 fixes https://github.com/flutter/flutter/issues/138259
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/
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/wiki/Chat
2024-01-18 01:04:12 +00:00
Loïc Sharma
31bf4a3285
[Windows] Reduce Visual Studio build errors caused by keyboard unit tests ( flutter/engine#49814 )
...
The `EXPECT_CALL_IS_EVENT` macro used features that are not supported by Visual Studio 2022's intellisense, which results in >130 errors when editing in Visual Studio. These issues only affect the editing experience, building still works as expected.
This change reduces false errors in Visual Studio by making `EXPECT_CALL_IS_EVENT` buildable in Visual Studio.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-17 23:36:22 +00:00
gaaclarke
67c17cbb8c
[Impeller] disabled misleading vulkan golden image tests ( flutter/engine#49836 )
...
issue: https://github.com/flutter/flutter/issues/141705
The MetalScreenshotter is hardcoded to make a Metal context. So even
though the tests were running the Vulkan variant, the rendering was
still happening with Metal.
It's better to disable these for now until they can be implemented
properly (either by making them render with swiftshader on mac or
rendering them on linux).
## 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 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-01-17 15:33:15 -08:00
Loïc Sharma
e38b6f14f6
[Windows] Remove unnecessary statics in keyboard ( flutter/engine#49834 )
...
Windows's `KeyboardManager` has several top-level helper functions. These are already wrapped in an anonymous C++ namespace, which is the C++ equivalent of the C `static` keyword.
No tests are updated as this PR is a refactoring with no semantic changes.
Â
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-17 23:31:33 +00:00
skia-flutter-autoroll
b37dfa5ef9
Roll Skia from 5c9e3474cf13 to 5abf9717ea92 (1 revision) ( flutter/engine#49831 )
...
https://skia.googlesource.com/skia.git/+log/5c9e3474cf13..5abf9717ea92
2024-01-17 brianosman@google.com Use tricky (NaN) values in SwizzleCopy and CopySlotsMasked
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 ,jlavrova@google.com,jonahwilliams@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-17 23:18:05 +00:00
godofredoc
600ecd7544
Move mac cache builder to bringup. ( flutter/engine#49843 )
...
This won't have major impact because older caches still exist but it will prevent the build from closing the tree.
https://github.com/flutter/flutter/issues/141688
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-17 23:12:31 +00:00
auto-submit[bot]
6582221bf1
Reverts "[Impeller] Switch from transient stencil-only to depth+stencil buffer." ( flutter/engine#49832 )
...
Reverts flutter/engine#47987
Initiated by: jonahwilliams
This change reverts the following previous change:
Original Description:
Part of https://github.com/flutter/flutter/issues/138460 .
In preparation for [draw order optimization](https://github.com/flutter/flutter/issues/114402 ) and [StC](https://github.com/flutter/flutter/issues/123671 ).
Use a transient depth+stencil texture instead of a stencil-only texture. Doing this in isolation to detect/weed out any HAL bugs with handling the attachment.
2024-01-17 16:14:19 +00:00
skia-flutter-autoroll
3508761f16
Manual roll Dart SDK from d6c08fa9bb54 to 6ff69d6b7f59 (15 revisions) ( flutter/engine#49825 )
...
Manual roll requested by aam@google.com
https://dart.googlesource.com/sdk.git/+log/d6c08fa9bb54..6ff69d6b7f59
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-39.0.dev
2024-01-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-38.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-37.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-36.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-35.0.dev
2024-01-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-34.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-33.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-32.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-31.0.dev
2024-01-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-30.0.dev
2024-01-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-29.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-28.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-27.0.dev
2024-01-13 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-26.0.dev
2024-01-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.4.0-25.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 aam@google.com ,dart-vm-team@google.com,jonahwilliams@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://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-01-17 06:42:29 +00:00
Brandon DeRosier
d3951b683b
Flutter GPU: Add GpuContext.createHostBuffer ( flutter/engine#49822 )
...
Just a quick fix to use the same pattern as other GpuContext derivative things.
2024-01-17 05:25:12 +00:00
skia-flutter-autoroll
5f4ecb26e0
Roll Fuchsia Linux SDK from Klxww53tA4-TG5pA9... to GuU0e5WxJCi92Scz8... ( flutter/engine#49823 )
...
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://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-01-17 05:05:15 +00:00
Brandon DeRosier
04ce32908a
[Impeller] Switch from transient stencil-only to depth+stencil buffer. ( flutter/engine#47987 )
...
Part of https://github.com/flutter/flutter/issues/138460 .
In preparation for [draw order optimization](https://github.com/flutter/flutter/issues/114402 ) and [StC](https://github.com/flutter/flutter/issues/123671 ).
Use a transient depth+stencil texture instead of a stencil-only texture. Doing this in isolation to detect/weed out any HAL bugs with handling the attachment.
2024-01-17 05:03:29 +00:00
skia-flutter-autoroll
e05501536e
Roll Skia from 31309ff09537 to 02e94b3b4d29 (43 revisions) ( flutter/engine#49819 )
...
Roll Skia from 31309ff09537 to 02e94b3b4d29 (43 revisions)
https://skia.googlesource.com/skia.git/+log/31309ff09537..02e94b3b4d29
2024-01-16 kjlubick@google.com Move SkMasks from src/codec to src/core
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from 1f9ed551198c to 7c236cb7a5a2
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll shaders-base from 3fb07eee4752 to e7695f0fdff5
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll jsfiddle-base from eb442b364123 to f6c22747cda4
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll debugger-app-base from c6059a8c0ee3 to 067d72e0dddf
2024-01-16 johnstiles@google.com Tweak `css_oklab_gamut_map_to_linear_srgb` for better codegen.
2024-01-16 herb@google.com Proposed cleanups
2024-01-16 olv@google.com [ganesh] Add VK_FORMAT_B5G6R5_UNORM_PACK16 / kRGB_565 combo
2024-01-16 olv@google.com [ganesh] Add GrColorType::kRGB_565
2024-01-16 michaelludwig@google.com [graphite] Update UniformManager comment to address mat2x2 layout polyfill
2024-01-16 kjlubick@google.com Revert "Remove SkFontMgr::RefDefault() and dependent APIs"
2024-01-16 brianosman@google.com Use tricky (NaN) values in many more RP tests
2024-01-16 dneto@google.com Update abseil-cpp to match Dawn
2024-01-16 kjlubick@google.com Remove SkFontMgr::RefDefault() and dependent APIs
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 24bbbffbc637 to 50e74527ca9a (3 revisions)
2024-01-16 michaelludwig@google.com Update SkVx to_half to support denormals,overflow, and RTNE
2024-01-16 jvanverth@google.com GrRRectEffect: return failure if nine-patch corners are invalid
2024-01-16 johnstiles@google.com Fix fuzzer-discovered error with duplicate symbols.
2024-01-16 johnstiles@google.com Switch to unique_ptr<> for SymbolTable management.
2024-01-16 johnstiles@google.com Tidy up module code in small ways.
2024-01-16 johnstiles@google.com Simplify switch rewrite code slightly.
2024-01-16 johnstiles@google.com Remove SymbolTable::WrapIfBuiltin.
2024-01-16 johnstiles@google.com Remove InterfaceBlock::typeOwner().
2024-01-16 jvanverth@google.com Ensure that nine-patch RRects have valid radii.
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c28022c905e7 to 24bbbffbc637 (1 revision)
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 68ae053047d5 to 9474c5c1c642
2024-01-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 6951208d04af to 68ae053047d5 (1 revision)
2024-01-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 6107aa90975e to c28022c905e7 (5 revisions)
2024-01-15 kjlubick@google.com Small changes needed to do modularization
2024-01-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 073b651053b3 to 572323ccbba5 (11 revisions)
2024-01-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 6951208d04af to 68ae053047d5
2024-01-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c3146aa021aa to 6107aa90975e (1 revision)
2024-01-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 1de9b3d66634 to 6951208d04af (6 revisions)
2024-01-13 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 66e8bc0a47af to c3146aa021aa (2 revisions)
2024-01-13 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 698eee9385e4 to 66e8bc0a47af (3 revisions)
2024-01-13 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from 1de9b3d66634 to 6951208d04af
2024-01-12 bungeman@google.com Add channels to SkPDFIccProfileKey
2024-01-12 brianosman@google.com Handle NaN bit patterns in several RP copy stages
2024-01-12 lovisolo@google.com [bazel] BazelBenchmarkTestRunner.cpp: Add missing newline in SkDebugPrintf statement.
2024-01-12 brianosman@google.com Remove template version of if_then_else, use I32 when appropriate
2024-01-12 johnstiles@google.com Create a symbol table for braced-block of an SkSL switch statement.
2024-01-12 johnstiles@google.com Add symbol table manipulation helpers.
2024-01-12 jvanverth@google.com [Metal] Switch ObjC <-> C++ handling for GrFence.
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
...
2024-01-17 05:03:28 +00:00
auto-submit[bot]
a501e644c2
Reverts "[Impeller] Encode directly to command buffer for Vulkan." ( flutter/engine#49818 )
...
Reverts flutter/engine#49780
Initiated by: jonahwilliams
This change reverts the following previous change:
Original Description:
Part of https://github.com/flutter/flutter/issues/140804
Rather than using impeller::Command, the impeller::RenderPass records most state directly into the Vulkan command buffer. This should remove allocation/free overhead of the intermediary structures and make further improvements to the backend even easier. This required a number of other changes to the renderer:
1. The render pass holds a strong ptr to the context. This helps avoid locking continually while encoding, which is quite slow.
2. barriers need to be encoded on the _producing_ side, and not the consuming side. This is because we'll actually run the consuming code before the producing code. i.e. we transition to shader read at the end of a render pass instead of when binding.
3. I've updated the binding code to also provide the descriptor type so that we don't need to look it up from the desc. set.
4. I added a test render pass class that records commands.
2024-01-17 01:18:17 +00:00
Zachary Anderson
2f58b2fae5
Revert "Add gclient_variables back for linux_license and fix the excluded files" ( flutter/engine#49817 )
...
Reverts flutter/engine#49775
The autorollers create PRs with this flag set to true (the default). This breaks the license check on autoroller PRs since the autorollers are trying to add back the entries in the excluded files list.
2024-01-17 01:06:20 +00:00
Jenn Magder
a7e652c7d8
Remove iOS 12 availability checks ( flutter/engine#49771 )
...
iOS minimum is now 12: https://github.com/flutter/buildroot/pull/808 . Remove `@available` checks for that version.
Part of https://github.com/flutter/flutter/issues/140474
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-16 23:09:58 +00:00
gaaclarke
5e407c3f36
[Impeller] generate mipmaps for imagefilters ( flutter/engine#49794 )
...
This resolves Jonah's feedback on https://github.com/flutter/engine/pull/49607 and Brandons feedback on https://github.com/flutter/engine/pull/49607 and https://github.com/flutter/engine/pull/49778 .
This avoids the need to do a lookahead by storing the proper mip count value while building the drawing on the canvas.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-16 22:53:10 +00:00
David Iglesias
c2b2e4b2b2
[web] Leave blob URLs untouched in TT policy. ( flutter/engine#49782 )
...
Very simple tweak to flutter.js that allows blob URLs to be used as entrypointUrls when loading flutter (this is needed by dartpad)
## Testing
I had to test this locally by spinning up a flutter app with something like:
```html
<script>
let initSrc = `let actualMain = document.createElement("script");
document.head.appendChild(actualMain);
actualMain.id = "injected_from_a_blob";
actualMain.src = "main.dart.js";`;
let blobInit = new Blob([...initSrc]);
let blobUrl = URL.createObjectURL(blobInit);
</script>
<script>
window.addEventListener('load', function(ev) {
// Download main.dart.js
_flutter.loader.loadEntrypoint({
entrypointUrl: blobUrl,
onEntrypointLoaded: function(engineInitializer) {
engineInitializer.autoStart();
}
});
});
</script>
```
## Issues
* Fixes https://github.com/flutter/flutter/issues/141329
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-16 22:53:08 +00:00
Jason Simmons
a1e7c05d18
[Impeller] Fix a race between SwapchainImplVK::Present and WaitForFence ( flutter/engine#49777 )
...
The previous implementation used an fml::CountDownLatch to synchronize between FrameSynchronizer::WaitForFence and the task queued by SwapchainImplVK::Present.
fml::CountDownLatch:Wait always waits, even if the count is already zero. So the raster thread would deadlock if the present task signals the latch before FrameSynchronizer::WaitForFence enters the wait.
This PR instead uses a semaphore that is set each time SwapchainImplVK::Present is called. FrameSynchronizer::WaitForFence will check the semaphore to determine whether a present task is pending and if so wait for its completion.
2024-01-16 22:30:57 +00:00
Loïc Sharma
9792c4bd03
Reland "[Windows] Move to FlutterCompositor for rendering" ( flutter/engine#49726 )
...
## Original pull request description
This migrates the Windows embedder to `FlutterCompositor` so that the engine renders off-screen to a framebuffer instead of directly onto the window's surface. This will allow us to support platform views and multiple views on Windows.
Addresses https://github.com/flutter/flutter/issues/128904
## Reland (again)
https://github.com/flutter/engine/pull/49262 was reverted as it regressed [`package:material_floating_search_bar_2`](https://pub.dev/packages/material_floating_search_bar_2/versions/0.5.0 ). See: https://github.com/flutter/flutter/issues/140828
This pull request is split into the following commits:
1. d337378a74 is the previous reland pull request, unchanged
2. e866af0229 disables the scissor test before blitting the framebuffer, allowing us to "force" copy the framebuffer's contents by ignoring scissoring values
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-01-16 22:14:02 +00:00
Jason Simmons
432682e0eb
[Impeller] Add an API for sampling strictly within the bounds of the source rect in DrawImageRect ( flutter/engine#49696 )
...
Fixes https://github.com/flutter/flutter/issues/140393
2024-01-16 21:56:05 +00:00