void (@NotNull List<? super TextRange> result, @NotNull Editor editor, int cursorOffset, @NotNull CharSequence editorText, @Nullable PsiElement e) { final XmlAttribute attribute = PsiTreeUtil.getParentOfType(e, XmlAttribute.class); if (attribute != null) { result.add(attribute.getTextRange()); final XmlAttributeValue value = attribute.getValueElement(); if (value != null) { if (getClassAttributeName().equalsIgnoreCase(attribute.getName())) { addClassAttributeRanges(result, editor, cursorOffset, editorText, value); } final TextRange range = value.getTextRange(); result.add(range); if (value.getFirstChild() != null && value.getFirstChild().getNode().getElementType() == XmlTokenType.XML_ATTRIBUTE_VALUE_START_DELIMITER) { result.add(new TextRange(range.getStartOffset() + 1, range.getEndOffset() - 1)); } } } }