run highlight visitors for injected fragments

This commit is contained in:
Alexey Kudravtsev
2009-11-05 12:14:52 +03:00
parent 59923bbb32
commit fba7b33441
10 changed files with 121 additions and 194 deletions
@@ -21,6 +21,7 @@ import com.intellij.codeInsight.daemon.JavaErrorMessages;
import com.intellij.codeInsight.daemon.impl.*;
import com.intellij.codeInsight.daemon.impl.quickfix.QuickFixAction;
import com.intellij.codeInsight.daemon.impl.quickfix.SetupJDKFix;
import com.intellij.lang.injection.InjectedLanguageManager;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.progress.ProgressManager;
@@ -98,13 +99,10 @@ public class HighlightVisitorImpl extends JavaElementVisitor implements Highligh
}
public boolean suitableForFile(PsiFile file) {
return true;
return !InjectedLanguageManager.getInstance(file.getProject()).isInjectedFragment(file);
}
public void visit(PsiElement element, HighlightInfoHolder holder) {
if (!holder.isWritable()) {
throw new UnsupportedOperationException();
}
myHolder = holder;
if (LOG.isDebugEnabled()) {
@@ -747,7 +745,7 @@ public class HighlightVisitorImpl extends JavaElementVisitor implements Highligh
visitExpression(expression);
if (myHolder.hasErrorResults()) return;
}
JavaResolveResult result = null;
JavaResolveResult result;
try {
result = expression.advancedResolve(false);
}