Skip to content

Commit 0b90be1

Browse files
committed
GH-1409: do not compute completion proposals when cursor is on attribute name instead of value
1 parent d43f16a commit 0b90be1

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationAttributeCompletionProcessor.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ else if (node instanceof Name && node.getParent() instanceof Annotation
7777
}
7878
// case: @Qualifier(value=<*>)
7979
else if (node instanceof Name && node.getParent() instanceof MemberValuePair
80+
&& ((MemberValuePair)node.getParent()).getName() != node
8081
&& completionProviders.containsKey(((MemberValuePair)node.getParent()).getName().toString())) {
8182
String attributeName = ((MemberValuePair)node.getParent()).getName().toString();
8283
computeProposalsForSimpleName(project, node, attributeName, completions, offset, doc);

headless-services/spring-boot-language-server/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/DependsOnCompletionProviderTest.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,11 @@ public void testDependsOnCompletionOutsideOfAnnotation2() throws Exception {
169169
assertCompletions("@DependsOn<*>(\"XXX\")", 0, null);
170170
}
171171

172+
@Test
173+
public void testDependsOnCompletionInsideOfAttributeName() throws Exception {
174+
assertCompletions("@DependsOn(<*>value=\"bean1\")", 0, null);
175+
}
176+
172177
@Test
173178
public void testDependsOnCompletionInsideOfQuotesWithPrefixAndReplacedPostfix() throws Exception {
174179
assertCompletions("@DependsOn(\"be<*>xxx\")", 2, "@DependsOn(\"bean1<*>\")");

0 commit comments

Comments
 (0)