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

Commit c365c2f8 authored by Diego Perez's avatar Diego Perez Committed by Ricardo Cerqueira
Browse files

Do not paint shadow if outside of the clip area

Change-Id: I064ccc1d1b206a29d9d0db1384782cb5dd5c65ca
parent 1ddb76ff
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -71,8 +71,10 @@ public class ViewGroup_Delegate {
        int x = 0;
        if (outline.mRect != null) {
            Shadow s = getRectShadow(parent, canvas, child, outline);
            if (s != null) {
              shadow = s.mShadow;
              x = -s.mShadowWidth;
            }
        } else if (outline.mPath != null) {
            shadow = getPathShadow(child, outline, canvas);
        }
@@ -132,6 +134,9 @@ public class ViewGroup_Delegate {

    private static BufferedImage getPathShadow(View child, Outline outline, Canvas canvas) {
        Rect clipBounds = canvas.getClipBounds();
        if (clipBounds.isEmpty()) {
          return null;
        }
        BufferedImage image = new BufferedImage(clipBounds.width(), clipBounds.height(),
                BufferedImage.TYPE_INT_ARGB);
        Graphics2D graphics = image.createGraphics();