From 4f0ae6b7f4c194cbe564cacfb2fc9778aa70c0c7 Mon Sep 17 00:00:00 2001 From: Dennis Ushakov Date: Wed, 24 Feb 2016 18:04:00 +0300 Subject: [PATCH] do not spellcheck data uri's #WEB-20505 fixed --- .../tokenizer/HtmlSpellcheckingStrategy.java | 9 ++++++++- .../testData/inspection/xmlWithMistakes/test.html | 3 ++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/spellchecker/src/com/intellij/spellchecker/tokenizer/HtmlSpellcheckingStrategy.java b/spellchecker/src/com/intellij/spellchecker/tokenizer/HtmlSpellcheckingStrategy.java index ddb8957e5490..7c7c44c4da52 100644 --- a/spellchecker/src/com/intellij/spellchecker/tokenizer/HtmlSpellcheckingStrategy.java +++ b/spellchecker/src/com/intellij/spellchecker/tokenizer/HtmlSpellcheckingStrategy.java @@ -15,9 +15,11 @@ */ package com.intellij.spellchecker.tokenizer; +import com.intellij.psi.ElementManipulators; import com.intellij.psi.PsiComment; import com.intellij.psi.PsiElement; import com.intellij.psi.xml.XmlAttributeValue; +import com.intellij.util.io.URLUtil; import org.jetbrains.annotations.NotNull; public class HtmlSpellcheckingStrategy extends SpellcheckingStrategy { @@ -25,7 +27,12 @@ public class HtmlSpellcheckingStrategy extends SpellcheckingStrategy { @Override public Tokenizer getTokenizer(PsiElement element) { if (element instanceof PsiComment) return myCommentTokenizer; - if (element instanceof XmlAttributeValue) return myXmlAttributeTokenizer; + if (element instanceof XmlAttributeValue) { + if (URLUtil.isDataUri(ElementManipulators.getValueText(element))) { + return EMPTY_TOKENIZER; + } + return myXmlAttributeTokenizer; + } return EMPTY_TOKENIZER; } } \ No newline at end of file diff --git a/spellchecker/testData/inspection/xmlWithMistakes/test.html b/spellchecker/testData/inspection/xmlWithMistakes/test.html index 4670964129ee..e0a7a26abc05 100644 --- a/spellchecker/testData/inspection/xmlWithMistakes/test.html +++ b/spellchecker/testData/inspection/xmlWithMistakes/test.html @@ -1,3 +1,4 @@ test ttest -
test
\ No newline at end of file +
test
+ \ No newline at end of file