diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/ModifierChooser.java b/java/java-impl/src/com/intellij/codeInsight/completion/ModifierChooser.java index b69b22681179..558de63d7783 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/ModifierChooser.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/ModifierChooser.java @@ -136,12 +136,11 @@ public class ModifierChooser { private static boolean shouldSuggestModifiers(PsiElement element) { PsiElement parent = element.getParent(); - while (parent != null && (parent instanceof PsiJavaCodeReferenceElement || - parent instanceof PsiErrorElement || parent instanceof PsiTypeElement || - parent instanceof PsiMethod || parent instanceof PsiVariable || - parent instanceof PsiDeclarationStatement || parent instanceof PsiImportList || - parent instanceof PsiDocComment || - element.getText().equals(parent.getText()))) { + while (parent instanceof PsiJavaCodeReferenceElement || + parent instanceof PsiErrorElement || parent instanceof PsiTypeElement || + parent instanceof PsiMethod || parent instanceof PsiVariable || + parent instanceof PsiDeclarationStatement || parent instanceof PsiImportList || + parent instanceof PsiDocComment) { parent = parent.getParent(); if (parent instanceof JspClassLevelDeclarationStatement) { parent = parent.getContext(); diff --git a/java/java-tests/testData/codeInsight/completion/keywords/fileScope1.java b/java/java-tests/testData/codeInsight/completion/keywords/fileScope1.java index 113fdcf80684..81389d508410 100644 --- a/java/java-tests/testData/codeInsight/completion/keywords/fileScope1.java +++ b/java/java-tests/testData/codeInsight/completion/keywords/fileScope1.java @@ -1 +1 @@ - + \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/KeywordCompletionTest.java b/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/KeywordCompletionTest.java index fa0233b78cf3..6363bc07da04 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/KeywordCompletionTest.java +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/KeywordCompletionTest.java @@ -45,7 +45,11 @@ public class KeywordCompletionTest extends LightCompletionTestCase { return JavaTestUtil.getJavaTestDataPath(); } - public void testFileScope1() { doTest(8, FILE_SCOPE_KEYWORDS); } + public void testFileScope1() { + doTest(8, "package", "public", "import", "final", "class", "interface", "abstract", "enum"); + assertNotContainItems("private", "default"); + } + public void testFileScopeAfterComment() { doTest(4, "package", "class", "import", "public", "private"); } public void testFileScopeAfterJavaDoc() { doTest(4, "package", "class", "import", "public", "private"); } public void testFileScopeAfterJavaDocInsideModifierList() { doTest(2, "class", "public"); }