[java] fixes module highlighting range
authorRoman Shevchenko <roman.shevchenko@jetbrains.com>
Mon, 12 Sep 2016 17:33:37 +0000 (20:33 +0300)
committerRoman Shevchenko <roman.shevchenko@jetbrains.com>
Mon, 12 Sep 2016 17:33:37 +0000 (20:33 +0300)
java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java

index 724de15c7c1a5fd2eadd00747fec24dfd61ad03e..ee1b5ca2441f6af02c9ad18d268ddcb5ba22a6d9 100644 (file)
@@ -33,6 +33,7 @@ import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.*;
 import com.intellij.psi.search.FilenameIndex;
 import com.intellij.psi.util.InheritanceUtil;
+import com.intellij.psi.util.PsiTreeUtil;
 import com.intellij.psi.util.PsiUtil;
 import com.intellij.util.ObjectUtils;
 import com.intellij.util.containers.ContainerUtil;
@@ -323,7 +324,8 @@ public class ModuleHighlightUtil {
   }
 
   private static TextRange range(PsiJavaModule module) {
-    return new TextRange(module.getTextOffset(), module.getNameElement().getTextRange().getEndOffset());
+    PsiKeyword kw = PsiTreeUtil.getChildOfType(module, PsiKeyword.class);
+    return new TextRange(kw != null ? kw.getTextOffset() : module.getTextOffset(), module.getNameElement().getTextRange().getEndOffset());
   }
 
   private static PsiElement range(PsiJavaCodeReferenceElement refElement) {