mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-86404 android-apt: add styleable attrs to validity state
This commit is contained in:
@@ -11,6 +11,7 @@ import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.openapi.vfs.VirtualFileFilter;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.containers.HashMap;
|
||||
import org.jetbrains.android.dom.resources.DeclareStyleable;
|
||||
import org.jetbrains.android.dom.resources.ResourceElement;
|
||||
import org.jetbrains.android.dom.resources.Resources;
|
||||
import org.jetbrains.android.facet.AndroidFacet;
|
||||
@@ -58,10 +59,19 @@ public class ResourceNamesValidityState implements ValidityState {
|
||||
final VirtualFile file = pair.getSecond();
|
||||
|
||||
for (final ResourceType resType : AndroidResourceUtil.VALUE_RESOURCE_TYPES) {
|
||||
addValueResources(file, resType, AndroidResourceUtil.getValueResourcesFromElement(resType.getName(), resources), myResources);
|
||||
addValueResources(file, resType, AndroidResourceUtil.getValueResourcesFromElement(resType.getName(), resources), myResources, "");
|
||||
}
|
||||
addValueResources(file, ResourceType.ATTR, resources.getAttrs(), myResources, "");
|
||||
final List<DeclareStyleable> styleables = resources.getDeclareStyleables();
|
||||
addValueResources(file, ResourceType.DECLARE_STYLEABLE, styleables, myResources, "");
|
||||
|
||||
for (DeclareStyleable styleable : styleables) {
|
||||
final String styleableName = styleable.getName().getValue();
|
||||
|
||||
if (styleableName != null) {
|
||||
addValueResources(file, ResourceType.DECLARE_STYLEABLE, styleable.getAttrs(), myResources, styleableName + '_');
|
||||
}
|
||||
}
|
||||
addValueResources(file, ResourceType.ATTR, resources.getAttrs(), myResources);
|
||||
addValueResources(file, ResourceType.DECLARE_STYLEABLE, resources.getDeclareStyleables(), myResources);
|
||||
}
|
||||
|
||||
for (final VirtualFile subdir : manager.getResourceSubdirs(null)) {
|
||||
@@ -94,7 +104,8 @@ public class ResourceNamesValidityState implements ValidityState {
|
||||
private static void addValueResources(VirtualFile file,
|
||||
ResourceType resType,
|
||||
Collection<? extends ResourceElement> resourceElements,
|
||||
Map<String, ResourceFileData> result) {
|
||||
Map<String, ResourceFileData> result,
|
||||
String namePrefix) {
|
||||
for (ResourceElement element : resourceElements) {
|
||||
final String name = element.getName().getValue();
|
||||
|
||||
@@ -104,7 +115,7 @@ public class ResourceNamesValidityState implements ValidityState {
|
||||
data = new ResourceFileData();
|
||||
result.put(file.getPath(), data);
|
||||
}
|
||||
data.addValueResource(new ResourceEntry(resType.getName(), name));
|
||||
data.addValueResource(new ResourceEntry(resType.getName(), namePrefix + name));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user