Dan Field
aa8d5d4b9b
Avoid sending a 0 DPR to framework ( #21389 )
...
* Avoid sending a 0 DPR to framework
* check width and height as well
2020-09-25 10:35:57 -07:00
Matej Knopp
5c9dddc376
Discard wrong size layer tree instead of rendering it ( #21179 )
2020-09-18 12:37:02 -07:00
chenjianguang
5271340b88
Fix usage of WeakPtr valid check ( #20106 )
2020-09-09 15:34:24 -07:00
Emmanuel Garcia
367c6dbd12
Don't use GetTaskQueueId() in rasterizer as it breaks Fuchsia ( #20983 )
2020-09-03 16:40:01 -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
Jason Simmons
1bd9b8e85b
Reset Shell::weak_factory_gpu_ on the raster thread ( #20869 )
2020-08-31 16:03:02 -07:00
Emmanuel Garcia
1b0c684326
Add ability to disable the raster thread merger ( #20800 )
2020-08-28 17:25: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
Chris Yang
e7136c3f59
Ensure threads are merged when tearing down the Rasterizer ( #19919 )
2020-08-19 08:31:01 -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
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
Yuqian Li
2d8a00e21d
Add purge-persistent-cache ( #20013 )
...
For https://github.com/flutter/flutter/issues/39526
2020-07-28 10:29:59 -07:00
gaaclarke
21efd7325e
Made the linter print out more information in its output and fixed bugs ( #19895 )
2020-07-22 15:38:09 -07:00
Dan Field
35d7d4aa6c
Make Shell::NotifyLowMemoryWarning trace ( #19283 )
2020-06-24 15:58: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
Michael Goderbauer
486f26fbf9
Rename trace-whitelist to trace-allowlist ( #19047 )
2020-06-15 20:52:43 -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
chenjianguang
89cf074d37
Setup default font manager after engine created, to improve startup performance ( #18225 )
2020-05-28 17:53:04 -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
Jason Simmons
88b9d42400
Remove the global engine entry timestamp ( #18182 )
...
The engine was using a global to store a timestamp representing the
launch of the engine. This timestamp is initialized with a JNI call
on Android and during shell setup on other platforms. Later the
timestamp is added to a FlutterEngineMainEnter timeline event used to
measure engine startup time in benchmarks.
This PR removes the global and the JNI call and moves the timestamp
into the settings object.
2020-05-07 11:29:28 -07:00
Chris Yang
2622cb9c33
Introduce TaskRunnerChecker, TaskRunnerAffineWeakPtr ( #17649 )
2020-05-01 11:28:20 -07:00
liyuqian
50ae2b997d
Set SkSL asset manager in RunConfiguration ctor ( #17948 )
2020-04-27 17:49:04 -07:00
liyuqian
a8af96da66
Read SkSLs from asset ( #17601 )
...
Fixes https://github.com/flutter/flutter/issues/53117
Test added:
- ShellTest.CanLoadSkSLsFromAsset
2020-04-10 00:16:33 -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
Dan Field
ff62dec5c9
Roll to clang11, mark 4 ( #17483 )
...
* "Reland Clang 11, roll buildroot to 1bc40a5f916adb93d87e2a2230a0ec43db876c1c, take 4 (#17467 )" (#17482 )"
This reverts commit 8166a91bca11b83c16fba8f8fd407e937a2ac89c.
* format code
* Roll buildroot to 3a27de1c5bb0f50be7d3efe3e00de4f6068c9f30
2020-04-02 13:04:49 -07:00
liyuqian
f003d9b41a
GPU to raster rename, patch 2 ( #17428 )
2020-03-31 15:16:11 -07:00
liyuqian
807ca8543c
More rename from GPU thread to raster thread ( #17408 )
...
This PR touches variable names, class names, and file names so it's significantly more risky than its predecessor https://github.com/flutter/engine/pull/17329
Due to file name changes, this PR is expected to change the license files.
We haven't rename `shell/gpu` to `shell/raster` yet. It should be optional but I think it's better to have `raster_surface_software.cc` than `gpu_surface_software.cc`.
2020-03-31 14:05:28 -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
Jonah Williams
857859f801
Remove unused PackagesUri rpc param in OnServiceProtocolRunInView ( #17195 )
...
This is not actually used by hot reload since we've switched to compilation from kernel.
2020-03-18 13:41:41 -07:00
gaaclarke
fddb0c272e
Made it so you can whitelist what events you want to listen to ( #17108 )
2020-03-16 11:00:03 -07:00
chunhtai
7a27e75c67
Add shell api to set default for windows data ( #14002 )
2020-01-08 19:36:10 -08:00
Chinmay Garde
5f9e558a98
Forward low memory notifications from the shell to DartVM. ( #14517 )
2019-12-16 16:55:08 -08:00
gaaclarke
97a23a80e1
Made a way to turn off the OpenGL operations on the IO thread for backgrounded apps ( #13908 )
2019-11-22 14:08:33 -08:00
gaaclarke
89e395853c
Refactor to passing functions by const ref ( #13975 )
...
Moved our code to passing functions by const ref
2019-11-22 12:20:02 -08:00
Michael Klimushyn
8a99d10748
Turn on RasterCache based on view hierarchy ( #13762 )
...
This is a duplicate of flutter/engine#13360 with the test switched to use the software backend instead of the GL backend.
After some debugging and testing on another GL embedder I think the issue with the test is some bug having to do with the GL implementation in the test harness specifically.
Fixes flutter/flutter#38903
2019-11-08 17:14:50 -08:00
Dan Field
0a8bd9dd6f
Fix mDNS for iOS13 ( #13451 )
2019-11-01 15:29:15 -07:00
gaaclarke
1eb15c12fb
Revert 78a8ca0f62b04fa49030ecdd2d91726c0639401f ( #13467 )
...
Put `Picture.toImage` back on the GPU thread. Left the unit tests intact.
2019-10-31 16:57:52 -07:00
Michael Klimushyn
e609577d12
Revert "Turn on RasterCache based on view hierarchy ( #13360 )" ( #13442 )
...
This caused EmbedderTest.VerifyB143464703 to fail after merging into
master.
```
../../flutter/shell/platform/embedder/tests/embedder_unittests.cc:3111: Failure
Value of: ImageMatchesFixture("verifyb143464703.png", renderered_scene)
Actual: false
Expected: true
[ FAILED ] EmbedderTest.VerifyB143464703 (2507 ms)
```
This reverts commit 3ad3bc76a5825210603d4afd12013de8ba7d7668.
2019-10-30 11:25:29 -07:00