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

Commit f10d08a3 authored by Teng-Hui Zhu's avatar Teng-Hui Zhu
Browse files

Update the VD and AVD's getOpacity()

static VectorDrawable should be returning Transparent while root alpha is 0.
AnimatedVectorDrawable running on RenderThread now, and the opacity should
be conservatively set as Translucent.

http://b/27554766

Change-Id: I9a78696cab94f10ba40a733cc9c00f1c2d7ebb7f
parent 1664a829
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ import android.graphics.Canvas;
import android.graphics.ColorFilter;
import android.graphics.Insets;
import android.graphics.Outline;
import android.graphics.PixelFormat;
import android.graphics.PorterDuff;
import android.graphics.Rect;
import android.os.Build;
@@ -306,7 +307,7 @@ public class AnimatedVectorDrawable extends Drawable implements Animatable2 {

    @Override
    public int getOpacity() {
        return mAnimatedVectorState.mVectorDrawable.getOpacity();
        return PixelFormat.TRANSLUCENT;
    }

    @Override
+3 −1
Original line number Diff line number Diff line
@@ -364,7 +364,9 @@ public class VectorDrawable extends Drawable {

    @Override
    public int getOpacity() {
        return PixelFormat.TRANSLUCENT;
        // We can't tell whether the drawable is fully opaque unless we examine all the pixels,
        // but we could tell it is transparent if the root alpha is 0.
        return getAlpha() == 0 ? PixelFormat.TRANSPARENT : PixelFormat.TRANSLUCENT;
    }

    @Override