produce named folding elements to keep proper text (IDEA-201570)

This commit is contained in:
Dennis Ushakov
2019-02-01 12:32:40 +03:00
parent 5f5ae20ac6
commit 7d0ce91c2a
@@ -203,7 +203,11 @@ public abstract class XmlCodeFoldingBuilder extends CustomFoldingBuilder impleme
final boolean entity = isEntity(elementToFold);
if (startLine < endLine || elementToFold instanceof XmlAttribute || entity) {
if (range.getStartOffset() + MIN_TEXT_RANGE_LENGTH < range.getEndOffset() || entity) {
foldings.add(new FoldingDescriptor(elementToFold.getNode(), range));
ASTNode node = elementToFold.getNode();
String placeholder = getLanguagePlaceholderText(node, range);
foldings.add(placeholder != null ?
new NamedFoldingDescriptor(node, range, null, placeholder) :
new FoldingDescriptor(node, range));
return true;
}
}