From eb4e3146819e6a86c031621f0471fdd32a970c8e Mon Sep 17 00:00:00 2001 From: Mikael Sand Date: Sun, 6 Jan 2019 21:10:45 +0200 Subject: [PATCH] [android] Cache group paths. --- android/src/main/java/com/horcrux/svg/GroupView.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/android/src/main/java/com/horcrux/svg/GroupView.java b/android/src/main/java/com/horcrux/svg/GroupView.java index 4458880d..f8b9915a 100644 --- a/android/src/main/java/com/horcrux/svg/GroupView.java +++ b/android/src/main/java/com/horcrux/svg/GroupView.java @@ -126,18 +126,21 @@ class GroupView extends RenderableView { @Override Path getPath(final Canvas canvas, final Paint paint) { - final Path path = new Path(); + if (mPath != null) { + return mPath; + } + mPath = new Path(); for (int i = 0; i < getChildCount(); i++) { View node = getChildAt(i); if (node instanceof VirtualView) { VirtualView n = (VirtualView)node; Matrix transform = n.mMatrix; - path.addPath(n.getPath(canvas, paint), transform); + mPath.addPath(n.getPath(canvas, paint), transform); } } - return path; + return mPath; } Path getPath(final Canvas canvas, final Paint paint, final Region.Op op) {