Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 098ffcd5 authored by Romain Guy's avatar Romain Guy
Browse files

Don't call saveLayer() when it's not required

Bug #5435653

saveLayer() can be extremely expensive on some GPU architectures. Avoiding
this call greatly improve the rendering performance of drawables with
strok + fill.

Change-Id: Ib414174ba05d5bad56d942b8e67ab784e7d60b9e
parent 589b0bb6
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -285,7 +285,7 @@ public class GradientDrawable extends Drawable {
            of the fill (if any) without worrying about blending artifacts.
         */
         final boolean useLayer = haveStroke && haveFill && st.mShape != LINE &&
                 currStrokeAlpha < 255;
                 currStrokeAlpha < 255 && (mAlpha < 255 || mColorFilter != null);

        /*  Drawing with a layer is slower than direct drawing, but it
            allows us to apply paint effects like alpha and colorfilter to