diff options
author | 2021-04-15 08:39:50 -0700 | |
---|---|---|
committer | 2021-04-15 15:26:32 -0700 | |
commit | 6d1601a740fdfa9b564651c5fb9ee779db5f1a09 (patch) | |
tree | 7175bd6c5b74607a0ab26a27c36323490c0e7629 /libs/hwui/SkiaCanvas.cpp | |
parent | 514f8b70d8652122e343c5929d056af11cac878a (diff) |
Move sparkle animation to RenderThread
The sparkle loop animation was happening on the UI thread and is poses
some interesting challengers:
- Animations freezes when UI thread is busy, for example when
startActivity is called.
- onDraw calls add unnecessary work to the UI thread, leading to jank
in some cases, like PIP
Test: manual
Fixes: 184760248
Change-Id: Ie2840c767da61476678839eaac215dc3aff95b5c
Diffstat (limited to 'libs/hwui/SkiaCanvas.cpp')
-rw-r--r-- | libs/hwui/SkiaCanvas.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/hwui/SkiaCanvas.cpp b/libs/hwui/SkiaCanvas.cpp index 4c4a15295690..3056e977f841 100644 --- a/libs/hwui/SkiaCanvas.cpp +++ b/libs/hwui/SkiaCanvas.cpp @@ -820,10 +820,11 @@ void SkiaCanvas::drawRipple(uirenderer::CanvasPropertyPrimitive* x, uirenderer::CanvasPropertyPrimitive* radius, uirenderer::CanvasPropertyPaint* paint, uirenderer::CanvasPropertyPrimitive* progress, + uirenderer::CanvasPropertyPrimitive* turbulencePhase, const SkRuntimeShaderBuilder& effectBuilder) { sk_sp<uirenderer::skiapipeline::AnimatedRipple> drawable( new uirenderer::skiapipeline::AnimatedRipple(x, y, radius, paint, progress, - effectBuilder)); + turbulencePhase, effectBuilder)); mCanvas->drawDrawable(drawable.get()); } |