mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
WEB-45429 SVG: Attributes are shown as invalid when using svg: prefix
IDEA-CR-62489 GitOrigin-RevId: 0e3e5266b197f03b374f833aa175cb5fb11f6292
This commit is contained in:
committed by
intellij-monorepo-bot
parent
62ecee9d83
commit
852f9f04d7
+15
-13
@@ -17,8 +17,8 @@ package com.intellij.psi.impl.source.html.dtd;
|
||||
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiReference;
|
||||
import com.intellij.psi.xml.XmlElement;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.xml.XmlAttributeDescriptor;
|
||||
import com.intellij.xml.impl.BasicXmlAttributeDescriptor;
|
||||
import com.intellij.xml.impl.XmlEnumerationDescriptor;
|
||||
@@ -113,23 +113,25 @@ public class HtmlAttributeDescriptorImpl extends BasicXmlAttributeDescriptor {
|
||||
|
||||
@Override
|
||||
public PsiElement getValueDeclaration(XmlElement attributeValue, String value) {
|
||||
String s = myCaseSensitive ? value : StringUtil.toLowerCase(value);
|
||||
String searchValue = null;
|
||||
if (!myCaseSensitive) {
|
||||
String[] enumeratedValues = isEnumerated() ? getEnumeratedValues() : null;
|
||||
if (enumeratedValues != null) {
|
||||
searchValue = ContainerUtil.find(getEnumeratedValues(), v -> v.equalsIgnoreCase(value));
|
||||
}
|
||||
if (searchValue == null) {
|
||||
searchValue = StringUtil.toLowerCase(value);
|
||||
}
|
||||
} else {
|
||||
searchValue = value;
|
||||
}
|
||||
//noinspection unchecked
|
||||
return delegate instanceof XmlEnumerationDescriptor ?
|
||||
((XmlEnumerationDescriptor<XmlElement>)delegate).getValueDeclaration(attributeValue, s) :
|
||||
((XmlEnumerationDescriptor<XmlElement>)delegate).getValueDeclaration(attributeValue, searchValue) :
|
||||
super.getValueDeclaration(attributeValue, value);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public PsiReference[] getValueReferences(XmlElement element, @NotNull String text) {
|
||||
if (delegate instanceof XmlEnumerationDescriptor) {
|
||||
return ((XmlEnumerationDescriptor<XmlElement>)delegate).getValueReferences(element, text);
|
||||
}
|
||||
return super.getValueReferences(element, text);
|
||||
}
|
||||
|
||||
public boolean isCaseSensitive() {
|
||||
return myCaseSensitive;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user