From 3ad0612c6a15d2ddd4fdbdec78d4aed462025c4a Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 14 Jan 2015 17:43:51 +0100 Subject: [PATCH] restore autopopup after typing # in javadoc (IDEA-135231) --- .../completion/JavadocCompletionConfidence.java | 15 ++++++++++----- .../completion/JavaAutoPopupTest.groovy | 11 +++++++++++ 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/JavadocCompletionConfidence.java b/java/java-impl/src/com/intellij/codeInsight/completion/JavadocCompletionConfidence.java index 6d6bd29f01c7..3f09e08b2a2f 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/JavadocCompletionConfidence.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/JavadocCompletionConfidence.java @@ -33,11 +33,16 @@ public class JavadocCompletionConfidence extends CompletionConfidence { @NotNull @Override public ThreeState shouldSkipAutopopup(@NotNull PsiElement contextElement, @NotNull PsiFile psiFile, int offset) { - if (psiElement().inside(PsiDocTag.class).accepts(contextElement) && findJavaReference(psiFile, offset - 1) != null) { - return ThreeState.NO; - } - if (PlatformPatterns.psiElement(JavaDocTokenType.DOC_TAG_NAME).accepts(contextElement)) { - return ThreeState.NO; + if (psiElement().inside(PsiDocTag.class).accepts(contextElement)) { + if (findJavaReference(psiFile, offset - 1) != null) { + return ThreeState.NO; + } + if (PlatformPatterns.psiElement(JavaDocTokenType.DOC_TAG_NAME).accepts(contextElement)) { + return ThreeState.NO; + } + if (contextElement.textMatches("#")) { + return ThreeState.NO; + } } return super.shouldSkipAutopopup(contextElement, psiFile, offset); } diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/completion/JavaAutoPopupTest.groovy b/java/java-tests/testSrc/com/intellij/codeInsight/completion/JavaAutoPopupTest.groovy index 5635e5418ea0..4bd51ede33c3 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/completion/JavaAutoPopupTest.groovy +++ b/java/java-tests/testSrc/com/intellij/codeInsight/completion/JavaAutoPopupTest.groovy @@ -256,6 +256,17 @@ class JavaAutoPopupTest extends CompletionAutoPopupTestCase { assert lookup } + public void "test popup after hash in javadoc"() { + myFixture.configureByText("a.java", """ + /** + * {@link String} + */ + class Foo {} + """) + type '#' + assert lookup + } + public void "test popup in javadoc local reference"() { myFixture.configureByText("a.java", """ /**