Dan Field
5dc24693d5
Reland path vol tracker ( #23840 )
...
This time making sure to deref the native object on GC.
2021-01-21 16:03:43 -08:00
Dan Field
e37235b647
revert path volatility tracker ( #23822 )
2021-01-21 08:34:02 -08:00
xster
915e2ca178
FlutterEngineGroup for Android ( #23675 )
2021-01-19 12:29:02 -08:00
gaaclarke
4c11ced794
lightweight flutter engines: sharing skia contexts for the io thread ( #23508 )
2021-01-13 13:04:16 -08:00
gaaclarke
22bb891d63
Plumbing refactor to allow the usage of Dart_CreateIsolateInGroup ( #23549 )
...
Did the plumbing refactor that allows us to call Dart_CreateIsolateInGroup when applicable.
2021-01-12 16:43:12 -08:00
David Worsham
b304148d46
fuchsia: Shutdown Dart VM properly ( #23243 )
2020-12-28 18:16:27 -08:00
Gary Qian
1c975f1e7c
AssetResolver updating in AssetManager for Dynamic features ( #23130 )
2020-12-23 17:39:55 -08:00
Dan Field
5a2244c581
Reland path volatility tracker, disabling it if deterministic rendering is requested ( #23226 )
...
* Reland path volatility tracker (#23063 )" (#23220 )
This reverts commit fceef3aaa9d156e8ec3f4a079c142921882f70d8.
* allow disabling based on whether deterministic rendering is needed
2020-12-22 08:25:20 -08:00
Dan Field
fceef3aaa9
Revert "Reland path volatility tracker ( #23063 )" ( #23220 )
...
This reverts commit 205d2b8e188be518c313c9b537429b566d36fa35.
2020-12-21 13:53:18 -08:00
Dan Field
205d2b8e18
Reland path volatility tracker ( #23063 )
...
* Revert "Revert "Set SkPath::setIsVolatile based on whether the path survives at least two frames (#22620 )" (#23044 )"
This reverts commit 4f914253bd7cd2a5cca3fd97213df37494e9bf37.
* Fix tracing
2020-12-14 17:21:55 -08:00
gaaclarke
f37c8c5796
Implemented FlutterEngineGroup and Spawn API. ( #22975 )
2020-12-14 17:07:44 -08:00
Dan Field
4f914253bd
Revert "Set SkPath::setIsVolatile based on whether the path survives at least two frames ( #22620 )" ( #23044 )
...
This reverts commit 2efc7c10aa12005010c837a1023024bb26bee143.
2020-12-11 15:39:24 -08:00
Dan Field
2efc7c10aa
Set SkPath::setIsVolatile based on whether the path survives at least two frames ( #22620 )
...
This patch defaults the volatility bit on SkPaths to false, and then flips it to true if the path survives at least two frames.
2020-12-10 13:57:23 -08:00
Gary Qian
8d4b7f3a68
Add split AOT loading unit failure/error code path ( #22857 )
2020-12-08 22:58:01 -08:00
zljj0818
48befc59d4
More rename from GPU thread to raster thread ( #22819 )
2020-12-03 15:03:02 -08:00
Gary Qian
fcbfa9f527
Split AOT Engine Runtime ( #22624 )
2020-12-02 13:28:01 -08:00
Gary Qian
53fc019aab
Split AOT Android Embedder and shell ( #22179 )
2020-11-19 17:22:26 -08:00
Kaushik Iska
caf678d30f
Move common graphics utils to //flutter/common/graphics ( #22320 )
2020-11-10 12:34:02 -08:00
Gary Qian
e231e3bc93
Remove extra method in ComputePlatformResolvedLocale ( #22362 )
2020-11-06 16:34:45 -08:00
Yuqian Li
190fd8eb51
Reland "Create root isolate asynchronously ( #20142 )" ( #21747 )
...
This reverts commit 5585ed99039efb3705025e1c58170cdb86af111b.
Additionally, the following _flutter.runInView deadlock is fixed.
Previously, a deadlock would occur when service protocol
_flutter.runInView is used to restart the engine wihtout tearing down
the shell: the shared mutex of the service protocol will be locked
during the restart as it's in the middle of handling a service protocol
message; if ServiceProtocol::AddHandler is also called during the
restart, the deadlock happens as AddHandler also requires such lock.
test/integration.shard/background_isolate_test.dart would fail
without this fix.
2020-10-12 12:02:30 -07:00
Jonah Williams
3c0da65c0c
Allow hot reload without syncing all asset files to devFS ( #21436 )
...
Always add the asset resolver from the configuration settings directory when restarting or recreating the asset manager
2020-10-02 14:09:07 -07:00
Kaushik Iska
149df4318d
Reland multiple display support for embedder API ( #21464 )
2020-09-28 12:35:34 -07:00
Kaushik Iska
8d165faca1
Revert multiple display support for embedder API ( #21456 )
...
This reverts commits
- 67fdd7ededcbb161a857cc187619ae115c8c8e7f.
- 854943d5c8670a241524b71945b2c8ca77246556.
See: https://github.com/flutter/flutter/issues/66829
2020-09-28 09:46:46 -07:00
Kaushik Iska
67fdd7eded
Embedder API Support for display settings ( #21355 )
...
Embedders can now notify shell during startup about the various displays and their corresponding settings.
Adds a notion of Display update type which can later include chages to displays during runtime such as addition / removal / reconfiguration of displays.
We also remove the responsibility of providing the refresh rate from `vsync_waiter` to `DisplayManager`.
Rewires existing platform implementations of the said API to use `Shell::OnDisplayUpdate` to notify the display manager of the startup configuration.
DisplayManager is also thread-safe to account for rasterizer and UI thread accesses.
2020-09-25 11:04:10 -07:00
Matej Knopp
5c9dddc376
Discard wrong size layer tree instead of rendering it ( #21179 )
2020-09-18 12:37:02 -07:00
0xZero
ac8b9c4c52
Member variables should appear before the |WeakPtrFactory|. ( #20899 )
2020-09-03 14:34:01 -07:00
Dan Field
634e499bcc
Use hint freed specifically for image disposal ( #20754 )
...
* Use hint freed specifically for image disposal
2020-09-02 13:41:58 -07:00
Yuqian Li
5585ed9903
Revert "Create root isolate asynchronously ( #20142 )" ( #20937 )
...
This reverts commit 95f2b72728ee7e51800f1784e458e45dac675b3a.
2020-09-01 22:05:53 -07:00
chenjianguang
95f2b72728
Create root isolate asynchronously ( #20142 )
...
## Description
As the related issue refer, the application may be doing too much work on its main thread even in a simple hello_world demo.
That is because the creation of `Engine` on the ui thread takes a noticeable time, and it is blocking the platform thread in order to run `Shell::Setup` synchronously.
The cost of `Engine`'s constructor is mainly about the creating of root isolate. Actually, there used to be another time-consuming process, the default font manager setup, which was resolved by https://github.com/flutter/engine/pull/18225 .
Similar to https://github.com/flutter/engine/pull/18225 , this pr move the creation of root isolate out from creating `Engine`. After this action, the main thread blocking is quite an acceptable slice.
## Related Issues
https://github.com/flutter/flutter/issues/40563 could be resolved by this pr.
2020-09-01 13:31:00 -07:00
Dan Field
4a88d5e109
Revert hint_freed ( #20746 )
...
This caused over-aggressive GCs, which vastly increased CPU usage benchmarks.
* Revert "fix build (#20644 )"
This reverts commit b59793ee20be29463fac7a79635bf20253f04107.
* Revert "Hint freed (#19842 )"
This reverts commit 3930ac1b25820baee3c67d921a0b009606cb3dae.
2020-08-25 11:55:40 -07:00
Dan Field
3930ac1b25
Hint freed ( #19842 )
...
* Hint the VM when a layer or picture goes out of scope
2020-08-19 14:04:31 -07:00
Yuqian Li
f644d03500
Add a service protocol for raster cache memory ( #20466 )
...
Related issue: https://github.com/flutter/flutter/issues/56719
2020-08-13 20:11:47 -07:00
Dan Field
6d44559b7d
Remove the dummy rasterizer delegate now that flutter_runner is in tree, and cleanup ctor params ( #20486 )
2020-08-13 14:46:01 -07:00
Zachary Anderson
7dd092dd31
Enable more linting ( #20187 )
2020-07-31 21:30:58 -07:00
Greg Spencer
98cfd1db78
Move platform specific information to PlatformConfiguration class ( #19652 )
2020-07-31 17:21:02 -07:00
Kaushik Iska
c8b077fa1a
Revert "Remove pipeline in favor of layer tree holder ( #18901 )" ( #19066 )
...
Reverting for b/158816279
2020-06-16 13:15:57 -07:00
Gary Qian
3a96741247
Platform resolved locale and Android localization refactor ( #18645 )
2020-06-16 04:29:50 -07:00
David Worsham
66d85bceb7
Move Surface and friends to flow/ ( #18938 )
2020-06-09 16:03:01 -07:00
Kaushik Iska
28e7b7999f
Remove pipeline in favor of layer tree holder ( #18901 )
...
Relanding of a change that was reverted in:
https://github.com/flutter/engine/pull/18427
2020-06-09 12:19:34 -07:00
Chris Yang
9ce1e5c5c7
Introduce TaskRunnerAffineWeakPtrFactory to generate TaskRunnerAffineWeakPtrs ( #18346 )
2020-05-19 16:36:17 -07:00
Kaushik Iska
2494d1ca70
Revert "Remove pipeline in favor of layer tree holder ( #18285 )" ( #18427 )
...
This reverts commit 2cdbc7f92793125d9312138877c05af6ad708683.
2020-05-15 12:27:32 -07:00
Kaushik Iska
2cdbc7f927
Remove pipeline in favor of layer tree holder ( #18285 )
...
go/flutter-pipeline-improvements for more details.
2020-05-14 10:46:14 -07:00
Kaushik Iska
8d76518011
Fix latest_frame_target_time race ( #18279 )
...
There are some cases where onAnimatorDraw gets called before
onAnimatorBeginFrame, in these cases we need to update the
latest_frame_target_time to be the target time for the current frame.
This manifested as an issue in release mode Android builds:
https://firebase.corp.google.com/project/flutter-infra/testlab/histories/bh.27c33c672e9b01f2/matrices/4903344583855476919/executions/bs.ee4f6f7ad8671a34
2020-05-11 14:52:22 -07:00
Kaushik Iska
4418ce8825
Revert "Remove pipeline in favor of layer tree holder ( #17688 )" ( #18242 )
2020-05-08 16:09:02 -07:00
Kaushik Iska
983de2c402
Remove pipeline in favor of layer tree holder ( #17688 )
...
go/flutter-pipeline-improvements for more details.
2020-05-08 10:51:10 -07:00
Chris Yang
2622cb9c33
Introduce TaskRunnerChecker, TaskRunnerAffineWeakPtr ( #17649 )
2020-05-01 11:28:20 -07:00
Jason Simmons
983d1e1703
Fix include paths of fml/time headers in the shell and rasterizer ( #17502 )
2020-04-03 12:33:54 -07:00
Kaushik Iska
abc72933e7
[pipeline] Add trace event for lag between target and display times ( #17384 )
...
This change also adds TimeRecorder which records time at the start
of each frame to capture the latest vsync target display time and
wires it in to the rasterizer to add trace events when there is a lag.
2020-04-02 17:15:45 -07:00
liyuqian
b3075b3091
Rename GPU thread to raster thread in code comments ( #17329 )
...
1. Simple "GPU thread" to "raster thread" replacement.
2. Regex replace "GPU([\n\r\s]+//+ thread)" with "raster$1".
3. Regex replace "// gpu$" with "// raster".
4. Simple test change.
5. Run ci/format.sh
2020-03-25 22:49:59 -07:00
liyuqian
bb35963050
Add service protocol to get SkSLs ( #17300 )
...
Fixes https://github.com/flutter/flutter/issues/53114
2020-03-24 21:42:12 -07:00