Loading tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java +8 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.layoutlib.bridge.android; import com.android.ide.common.rendering.api.LayoutlibCallback; import com.android.ide.common.rendering.api.RenderParams; import com.android.ide.common.rendering.api.SessionParams.Key; Loading @@ -42,11 +43,16 @@ public final class RenderParamsFlags { public static final Key<Boolean> FLAG_KEY_RECYCLER_VIEW_SUPPORT = new Key<Boolean>("recyclerViewSupport", Boolean.class); /** * The application package name. Used via * {@link com.android.ide.common.rendering.api.LayoutlibCallback#getFlag(Key)} * The application package name. Used via {@link LayoutlibCallback#getFlag(Key)} */ public static final Key<String> FLAG_KEY_APPLICATION_PACKAGE = new Key<String>("applicationPackage", String.class); /** * To tell LayoutLib that IDE supports providing XML Parser for a file (useful for getting in * memory contents of the file). Used via {@link LayoutlibCallback#getFlag(Key)} */ public static final Key<Boolean> FLAG_KEY_XML_FILE_PARSER_SUPPORT = new Key<Boolean>("xmlFileParser", Boolean.class); // Disallow instances. private RenderParamsFlags() {} Loading tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java +7 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import com.android.internal.util.XmlUtils; import com.android.layoutlib.bridge.Bridge; import com.android.layoutlib.bridge.android.BridgeContext; import com.android.layoutlib.bridge.android.BridgeXmlBlockParser; import com.android.layoutlib.bridge.android.RenderParamsFlags; import com.android.ninepatch.NinePatch; import com.android.ninepatch.NinePatchChunk; import com.android.resources.Density; Loading Loading @@ -142,8 +143,13 @@ public final class ResourceHelper { return null; } XmlPullParser parser = null; // first check if the value is a file (xml most likely) XmlPullParser parser = context.getLayoutlibCallback().getXmlFileParser(value); Boolean psiParserSupport = context.getLayoutlibCallback().getFlag( RenderParamsFlags.FLAG_KEY_XML_FILE_PARSER_SUPPORT); if (psiParserSupport != null && psiParserSupport) { parser = context.getLayoutlibCallback().getXmlFileParser(value); } if (parser == null) { File f = new File(value); if (f.isFile()) { Loading Loading
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java +8 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.layoutlib.bridge.android; import com.android.ide.common.rendering.api.LayoutlibCallback; import com.android.ide.common.rendering.api.RenderParams; import com.android.ide.common.rendering.api.SessionParams.Key; Loading @@ -42,11 +43,16 @@ public final class RenderParamsFlags { public static final Key<Boolean> FLAG_KEY_RECYCLER_VIEW_SUPPORT = new Key<Boolean>("recyclerViewSupport", Boolean.class); /** * The application package name. Used via * {@link com.android.ide.common.rendering.api.LayoutlibCallback#getFlag(Key)} * The application package name. Used via {@link LayoutlibCallback#getFlag(Key)} */ public static final Key<String> FLAG_KEY_APPLICATION_PACKAGE = new Key<String>("applicationPackage", String.class); /** * To tell LayoutLib that IDE supports providing XML Parser for a file (useful for getting in * memory contents of the file). Used via {@link LayoutlibCallback#getFlag(Key)} */ public static final Key<Boolean> FLAG_KEY_XML_FILE_PARSER_SUPPORT = new Key<Boolean>("xmlFileParser", Boolean.class); // Disallow instances. private RenderParamsFlags() {} Loading
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java +7 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import com.android.internal.util.XmlUtils; import com.android.layoutlib.bridge.Bridge; import com.android.layoutlib.bridge.android.BridgeContext; import com.android.layoutlib.bridge.android.BridgeXmlBlockParser; import com.android.layoutlib.bridge.android.RenderParamsFlags; import com.android.ninepatch.NinePatch; import com.android.ninepatch.NinePatchChunk; import com.android.resources.Density; Loading Loading @@ -142,8 +143,13 @@ public final class ResourceHelper { return null; } XmlPullParser parser = null; // first check if the value is a file (xml most likely) XmlPullParser parser = context.getLayoutlibCallback().getXmlFileParser(value); Boolean psiParserSupport = context.getLayoutlibCallback().getFlag( RenderParamsFlags.FLAG_KEY_XML_FILE_PARSER_SUPPORT); if (psiParserSupport != null && psiParserSupport) { parser = context.getLayoutlibCallback().getXmlFileParser(value); } if (parser == null) { File f = new File(value); if (f.isFile()) { Loading