From ca6faccfe51c169b94b82eb46bda99ac60cc4904 Mon Sep 17 00:00:00 2001 From: John Rodriguez Date: Wed, 10 May 2023 21:05:16 -0400 Subject: [PATCH] Introduce resource visibility and store as ordinal --- .../app/cash/paparazzi/internal/BasicResourceItem.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/paparazzi/paparazzi/src/main/java/app/cash/paparazzi/internal/BasicResourceItem.kt b/paparazzi/paparazzi/src/main/java/app/cash/paparazzi/internal/BasicResourceItem.kt index 203eab23e..3cd1351c4 100644 --- a/paparazzi/paparazzi/src/main/java/app/cash/paparazzi/internal/BasicResourceItem.kt +++ b/paparazzi/paparazzi/src/main/java/app/cash/paparazzi/internal/BasicResourceItem.kt @@ -24,7 +24,7 @@ import com.android.ide.common.rendering.api.StyleItemResourceValueImpl import com.android.ide.common.rendering.api.StyleResourceValueImpl import com.android.ide.common.rendering.api.StyleableResourceValueImpl import com.android.ide.common.rendering.api.TextResourceValueImpl -import com.android.ide.common.resources.ResourceItem +import com.android.ide.common.resources.ResourceItemWithVisibility import com.android.ide.common.resources.SingleNamespaceResourceRepository import com.android.ide.common.resources.ValueXmlHelper import com.android.ide.common.resources.configuration.FolderConfiguration @@ -32,6 +32,7 @@ import com.android.ide.common.util.PathString import com.android.resources.ResourceType import com.android.resources.ResourceType.PUBLIC import com.android.resources.ResourceUrl +import com.android.resources.ResourceVisibility import com.android.utils.XmlUtils import org.w3c.dom.Element import java.io.File @@ -40,12 +41,14 @@ import java.util.EnumSet class BasicResourceItem( type: ResourceType, private val name: String, + visibility: ResourceVisibility, file: File, tag: Element?, private val repository: SingleNamespaceResourceRepository -) : ResourceItem { +) : ResourceItemWithVisibility { // Store enums as their ordinals in byte form to minimize memory footprint. private val typeOrdinal: Byte + private val visibilityOrdinal: Byte private val resourceValue: ResourceValue @@ -58,6 +61,7 @@ class BasicResourceItem( init { typeOrdinal = type.ordinal.toByte() + visibilityOrdinal = visibility.ordinal.toByte() resourceValue = if (tag == null || type == PUBLIC) { val density = @@ -81,6 +85,8 @@ class BasicResourceItem( override fun getLibraryName() = null + override fun getVisibility() = ResourceVisibility.values()[visibilityOrdinal.toInt()] + override fun getReferenceToSelf(): ResourceReference = ResourceReference(namespace, type, name)