fixed tab completion inside outer language element (PY-1869)
authorDmitry Trofimov <dmitry.trofimov@jetbrains.com>
Wed, 22 Sep 2010 16:12:09 +0000 (20:12 +0400)
committerDmitry Trofimov <dmitry.trofimov@jetbrains.com>
Wed, 22 Sep 2010 17:59:45 +0000 (21:59 +0400)
platform/lang-impl/src/com/intellij/psi/impl/SharedPsiElementImplUtil.java

index d85feeccf6999a091db704259748d3052e597709..a99d6c01788c972492f560833ac44922c0e936a7 100644 (file)
@@ -21,6 +21,7 @@ import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.util.TextRange;
 import com.intellij.psi.*;
 import com.intellij.psi.impl.source.resolve.reference.impl.PsiMultiReference;
+import com.intellij.psi.templateLanguages.OuterLanguageElement;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -39,7 +40,7 @@ public class SharedPsiElementImplUtil {
     if (thisElement == null) return null;
     PsiElement element = lang != null ? thisElement.getContainingFile().getViewProvider().findElementAt(offset, lang) :
                          thisElement.findElementAt(offset);
-    if (element == null) return null;
+    if (element == null || element instanceof OuterLanguageElement) return null;
     offset = thisElement.getTextRange().getStartOffset() + offset - element.getTextRange().getStartOffset();
 
     List<PsiReference> referencesList = new ArrayList<PsiReference>();