| Summary: | [assist][javadoc] Wrong completion inside @value tag | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] JDT | Reporter: | Frederic Fusier <frederic_fusier> | ||||
| Component: | Core | Assignee: | Frederic Fusier <frederic_fusier> | ||||
| Status: | VERIFIED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | daniel_megert | ||||
| Version: | 3.2 | ||||||
| Target Milestone: | 3.2.1 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
Note that example was not correct, it should be instead:
public class X {
public static int EXAMPLE = 0;
/**
* This method uses {@value #EX|} when
* implementation will be finished...
*/
public void foo() {
}
}
Note also that 1.4 compliance is needed to see the problem. Completion proposal is correct with 1.5 compliance...
@value inline tag accepts a reference only since 1.5. That's why javadoc completion wrongly assumes that user was completing in text and propose the entire inline tag.
Created attachment 43346 [details]
Proposed patch
Fix is really simple: do not set CompletionOnJavadoc.TEXT bit to completionNode flag when inline tag has started...
Patch released in TARGET_321 stream Released for 3.2.1 Released for 3.3 M1 while merging TARGET_321 in HEAD Verified for 3.3 M1 using build I20060804-0010. You might want to revist this, see also comments in bug 153399. Verified for 3.2.1 using build M20060908-1655. |
Using 3.2 RC6 but should exist since the first javadoc code assist JDT/Core implementation... If I complete inside an inline @value tag, then complete tag template is always proposed instead of the reference. Example: public class X { public static int EXAMPLE = 0; /** * This method uses {@value EX|} when * implementation will be finished... */ public void foo() { } } Completion at <|> position will give following proposals: {@link EXAMPLE} {@value EXAMPLE} Although we should have only: EXAMPLE Note that it works well with @link inline tag...