1040 Commits

Author SHA1 Message Date
fzyzcjy
03e35d0c66 VsyncWaiter schedules unneeded extra AwaitVSync callbacks for one frame (flutter/engine#36406) 2022-10-14 16:39:12 +00:00
Jonah Williams
aadc2d3094 Add ImmutableBuffer.fromFilePath (flutter/engine#36623) 2022-10-05 22:18:03 +00:00
Jonah Williams
463c3d8cba Revert egl presentation time (flutter/engine#36485) 2022-09-28 21:50:13 +00:00
gaaclarke
e41c775200 Removed instances of unnecessary values (flutter/engine#36221) 2022-09-26 21:28:04 +00:00
Dan Field
63e8e223aa [Impeller] toImageSync for Impeller (flutter/engine#36365) 2022-09-23 20:31:03 +00:00
Nayuta403
4cf8312021 fix typo (flutter/engine#36271) 2022-09-22 22:11:51 +00:00
Alexander Biggs
6751734343 [fuchsia] Add run_unit_tests.sh script. (flutter/engine#36308)
This is a convenience script for running unit tests locally.

To make this script work, I had to move several test exclusions
from test_suites.yaml (which controls running tests on CQ)
to the tests themselves. I think this is for the best because
it makes running the tests locally with behavior that matches
CQ easier.

Also added fuchsia_tests to build_and_copy_to_fuchsia.sh
so it builds the unit tests .far packages by default.

Tested: Ran `run_unit_tests.sh`, all tests pass. Ran
`build_and_copy_to_fuchsia.sh`, it still builds.
2022-09-21 10:40:20 -07:00
Alexander Biggs
bef70aabc1 [fuchsia] Disable flaking shell test on Fuchsia. (flutter/engine#36320) 2022-09-21 17:28:50 +00:00
gaaclarke
6b2a14d348 Isolate platform channels for desktop (flutter/engine#35893) 2022-09-20 23:56:04 +00:00
Chris Yang
885e9a081a Clear platform view caches at begin frame in unittest (flutter/engine#36214) 2022-09-19 18:33:09 +00:00
Jason Simmons
89369a1402 Fix flakiness in ShellTest.PushBackdropFilterToVisitedPlatformViews (flutter/engine#36212) 2022-09-16 19:39:54 +00:00
Callum Moffat
0a5737e441 Properly throw Dart error from PluginUtilities.getCallbackHandle FFI (flutter/engine#36032) 2022-09-16 17:11:08 +00:00
Dan Field
08312a825e Lint and fix bugprone-use-after-move violations (flutter/engine#35978) 2022-09-09 02:41:03 +00:00
gaaclarke
42c469183e Started handling messages from background isolates for iOS (flutter/engine#35174) 2022-09-08 00:03:27 +00:00
Dan Field
4f14c3d127 Use the frame size to cull (flutter/engine#35973) 2022-09-07 23:18:10 +00:00
emilyabest
2fd7dde9c8 PlatformView Blur for Backdrop Filter (flutter/engine#34596) 2022-09-06 17:30:57 +00:00
ColdPaleLight
e9ad8e2454 [Impeller] Implement ui.Picture.toImage() (flutter/engine#35633) 2022-09-01 22:59:41 +00:00
yaakovschectman
8e3c8bc88f Engine startup event timed after VM initializes (flutter/engine#35713)
* Engine startup event timed after VM initializes

* Formatting

* Update FlutterEngineMainEnter event comment

* Remove engine_start_time

* Remove unused variable
2022-08-31 10:48:44 -04:00
Jonah Williams
27b4f29d7e Include TextureLayer in contents of toImageSync (flutter/engine#35608) 2022-08-23 02:16:06 +00:00
Casey Hillers
1c20221e24 Revert "Include TextureViews in the output of Scene.toImage[Sync]" (flutter/engine#35587) 2022-08-22 10:26:09 +00:00
Jonah Williams
ed952f4503 Include TextureViews in the output of Scene.toImage[Sync] (flutter/engine#35527)
Update Picture rasterization for toImage to accept a layer tree, optionally flattening on the raster thread if present.
Update Deferred GPU image for toImageSync to accept a layer tree, flattening it the first time it creates an image, storing the resulting display list.

This is also a performance fix for the zoom page transition, which currently does too much work on the UI thread on frame 1
2022-08-19 16:28:30 -07:00
Zachary Anderson
407fb9e192 Revert "Pushing BackdropFilter Mutator (#34355)" (flutter/engine#35543)
This reverts commit ab6376ac20f0ab557b5d4737a8b61f20716b8e85.
2022-08-19 10:01:01 -07:00
xiaomiao
d490b4edae Move task running to UI thread for loadDartDefferredLibrary. (flutter/engine#35460) 2022-08-18 16:43:24 +00:00
Jim Graham
5f9579eae8 Display list multiplexer (flutter/engine#35421) 2022-08-16 05:34:52 +00:00
Bernardo Eilert Trevisan
d9da8e0d2e Enable dirty region management within the Embedder API (flutter/engine#35022) 2022-08-12 10:52:54 -07:00
Javon Thomas
ab6376ac20 Pushing BackdropFilter Mutator (flutter/engine#34355) 2022-08-10 21:36:39 +00:00
Dan Field
132ab1a321 Reland toImageSync (flutter/engine#35283) 2022-08-09 22:32:04 +00:00
Dan Field
abbca7b5e4 Revert "Collect textures from toImageSync safely (#35073)" (flutter/engine#35281)
This reverts commit 1f9bb2c26554f53995e7d02afc54a5566ad3310c.
2022-08-09 14:32:32 -07:00
Dan Field
1f9bb2c265 Collect textures from toImageSync safely (flutter/engine#35073) 2022-08-09 13:21:59 -07:00
Loïc Sharma
a015114478 [Embedder API] Add next frame callback (flutter/engine#35244) 2022-08-08 23:19:04 +00:00
Jonah Williams
1245043020 Support hot reload of asset fonts (flutter/engine#35213) 2022-08-08 18:06:05 +00:00
Zachary Anderson
ab33453a89 Roll mac clang, ignore spurious lints (flutter/engine#35196) 2022-08-05 15:50:08 -07:00
Jonah Williams
43c54b4b98 Update setAssetDirectory service extension to fail if provided path is invalid (flutter/engine#35178) 2022-08-05 15:47:04 +00:00
Jim Graham
1413379354 Embedders use DisplayListBuilder for compositing (flutter/engine#35170) 2022-08-04 22:23:04 +00:00
Ryan Macnak
3efe2e75e1 Remove architecture restriction from //flutter/testing:opengl. (flutter/engine#35098)
Cf. f7163f555c764e00ff220d079361fe9511f959f4.

Bug: https://github.com/flutter/flutter/issues/90425
Bug: https://github.com/flutter/flutter/issues/103386
2022-08-02 13:46:29 -07:00
Chinmay Garde
7d7a19a1fd Remove IO manager Fuchsia workaround. (flutter/engine#34959) 2022-07-28 06:10:03 +00:00
Chinmay Garde
e1218270fd Don't compile the Skia GL backend on iOS. (flutter/engine#34924) 2022-07-28 00:51:03 +00:00
ColdPaleLight
369a324ff8 Evicting unused cache entries before RasterCache actions (flutter/engine#34627) 2022-07-23 02:56:03 +00:00
ColdPaleLight
e1fe7327b1 Use the correct 'SnapshotDelegate' in 'RuntimeController::Spawn' (flutter/engine#34523) 2022-07-13 01:09:04 +00:00
Dan Field
e162fed336 Rename toGpuImage to toImageSync (flutter/engine#34504) 2022-07-08 19:41:05 +00:00
Jonah Williams
e2a2ad7c70 delete dl flag from allowlist (flutter/engine#34515) 2022-07-08 00:52:03 +00:00
JsouLiang
ba5bf62d28 Defer decisions about RasterCache actions until after Preroll is complete (flutter/engine#31892) 2022-06-29 20:59:06 -07:00
Dan Field
3724bc6427 Implement toGpuImage, a synchronous, GPU-resident version of (flutter/engine#33736)
* Implement toGpuImage, a synchronous, GPU-resident version of
Picture.toImage.

This method kicks off asynchronous work on the raster task runner.
If it fails to rasterize, it will synchronously throw later when
the user attempts to draw to a canvas.

This supports several use cases:

- Quickly snapping off an expensive-to-rasterize image for reuse
  across multiple frames.
- Applying multi-pass filters to a render target.

This patch amends flutter_tester so that it can produce an image
object, but that image will always be a grey and white four square checkerboard.

Adds support for CanvasKit on Web, which basically already used
this method for its Picture.toImage implementation.

Throws an UnsupportedError for HTML on Web, since any implementation
there would almost certainly be slower than drawPicture.
2022-06-24 16:14:42 -07:00
Dan Field
f7163f555c Roll SwiftShader, ANGLE, use SwANGLE in test harnesses (flutter/engine#33814)
Roll Swiftshader, ANGLE, and Vulkan deps.

Updates license bot for new locations of licenses and new files
in roll.

Converts unit test harnesses to use SwANGLE, which is the
supported way of using SwiftShader as a software backend for GLES.

Updates goldens due to swiftshader changes.

Fixes up include paths to avoid directly including third_party
code by that name, which is unlikely to work in other build
environments.

Includes upstream patches to ANGLE and SwiftShader to build in our
windows environments, as well as patches to Skia to support
defining the location of VulkanMemoryAllocator and a patch to ANGLE
to support opting into a newer version of VMA.
2022-06-23 16:43:39 -07:00
Dan Field
0586f7b588 Drop --enable-display-list flag, remove associated branched code (flutter/engine#34233) 2022-06-23 00:07:04 +00:00
Chinmay Garde
20def47959 Remove unactionable verbose log about ignored viewport metrics. (flutter/engine#34231) 2022-06-22 12:34:06 -07:00
Chris Bracken
53a9648da9 [lint] Merge impeller .clang-tidy into main config (flutter/engine#33692)
Merges most (but not all) of the impeller .clang-tidy rules into the
main .clang-tidy config. Merges:

readability-identifier-naming.PrivateMemberSuffix (_)
readability-identifier-naming.EnumConstantPrefix (k)
modernize-use-default-member-init.UseAssignment
Does not merge:

readability-identifier-naming.PublicMethodCase (CamelCase)
readability-identifier-naming.PrivateMethodCase (CamelCase)
These last two are not merged due to the non-trivial number of existing
field accessors that use field_name() methods to directly return
field_name_. While these are permitted by the C++ style guide, we may
want to move to a single, simple rule and name everything in CamelCase.
These can be enabled in a followup patch.

No new tests added, since this change is style-only.
2022-06-21 11:52:42 -07:00
Jonah Williams
728640769b dont pixel snap raster cache if SUPPORT_FRACTIONAL_TRANSLATION is enabled (flutter/engine#34002) 2022-06-13 16:43:05 -07:00
Alexander Markov
8292927857 Remove uses of --lazy-async-stack Dart VM flag (flutter/engine#33964) 2022-06-10 10:12:56 -07:00
Dan Field
45633ced2a Purge resources on rasterizer teardown (flutter/engine#33890) 2022-06-08 16:58:04 -07:00