From 4b6aa72d74a023a25c357be7514a73ba229ece63 Mon Sep 17 00:00:00 2001 From: peter Date: Tue, 18 Jul 2017 10:52:13 +0200 Subject: [PATCH] java completion: suggest 'package' after javadoc --- .../intellij/codeInsight/completion/JavaKeywordCompletion.java | 2 +- .../codeInsight/completion/keywords/fileScopeAfterJavaDoc.java | 2 ++ .../java/codeInsight/completion/KeywordCompletionTest.java | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 java/java-tests/testData/codeInsight/completion/keywords/fileScopeAfterJavaDoc.java diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/JavaKeywordCompletion.java b/java/java-impl/src/com/intellij/codeInsight/completion/JavaKeywordCompletion.java index 4e88f1e600ac..b90a7600c3a5 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/JavaKeywordCompletion.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/JavaKeywordCompletion.java @@ -200,7 +200,7 @@ public class JavaKeywordCompletion { } private static PsiElement prevSignificantLeaf(PsiElement position) { - return JBIterable.generate(position, PsiTreeUtil::prevVisibleLeaf).skip(1).skipWhile(e -> e instanceof PsiComment).first(); + return JBIterable.generate(position, PsiTreeUtil::prevVisibleLeaf).skip(1).skipWhile(e -> PsiTreeUtil.getNonStrictParentOfType(e, PsiComment.class) != null).first(); } private void addKeyword(LookupElement element) { diff --git a/java/java-tests/testData/codeInsight/completion/keywords/fileScopeAfterJavaDoc.java b/java/java-tests/testData/codeInsight/completion/keywords/fileScopeAfterJavaDoc.java new file mode 100644 index 000000000000..72af254cf3f6 --- /dev/null +++ b/java/java-tests/testData/codeInsight/completion/keywords/fileScopeAfterJavaDoc.java @@ -0,0 +1,2 @@ +/** javadoc */ + 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 244ea9cc5e3d..e7b34e71c3fd 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 @@ -47,6 +47,7 @@ public class KeywordCompletionTest extends LightCompletionTestCase { public void testFileScope1() { doTest(8, FILE_SCOPE_KEYWORDS); } public void testFileScopeAfterComment() { doTest(4, "package", "class", "import", "public", "private"); } + public void testFileScopeAfterJavaDoc() { doTest(4, "package", "class", "import", "public", "private"); } public void testFileScope2() { doTest(7, CLASS_SCOPE_KEYWORDS); } public void testClassScope1() { doTest(5, CLASS_SCOPE_KEYWORDS); } public void testClassScope2() { doTest(4, CLASS_SCOPE_KEYWORDS); }