This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 185125

Summary: [69cat] Mismatch between "Has Implementations" and "Go to Implementation"
Product: java Reporter: matthies <matthies>
Component: EditorAssignee: Dusan Balek <dbalek>
Status: REOPENED ---    
Severity: normal    
Priority: P3    
Version: 6.x   
Hardware: PC   
OS: Windows XP   
Issue Type: DEFECT Exception Reporter:

Description matthies 2010-04-27 17:08:54 UTC
On a line with the new "Has Implementations" badge, I would expect Editor Context Menu -> Navigate -> "Go to Implementation" to provide navigation to those implementations. But "Go to Implementation" does nothing there (unless the caret happens to be positioned on an appropriate class reference or method, that is).

Or put a bit differently, there doesn't seem to be a way to go to the implementations indicated by "Has Implementations" using the keyboard.

BTW, it seems that the "Navigate" main menu is missing the "Go to Implementation" menu item that the editor context menu provides.
Comment 1 Jan Lahoda 2011-01-25 13:34:27 UTC
The A11Y keyword is not correct, IMO: the action works OK if the caret is on the method/class name. As this action is expected to work also on class/method references, it cannot simply work inside whole header or whole method (like go to super implementation action does), because the header can contain class references.
Comment 2 matthies 2011-01-25 16:01:47 UTC
Ok, I won't argue over A11Y. But it's certainly about usability and consistency.

The reason I find the current behavior unintuitive, I think, is that it's different from how hints seem to work. For example, an "Suppress warning - unchecked" hint can be executed from anywhere on the line where the hint is shown; the caret is not required to be the positioned on the respective expression.

(An additional minor point is that the menu entry ought to be grayed out when the action is not applicable.)

As for the argument about other class references, I don't quite buy it, because the "Has Implementations" badge is not shown for other class references within the class or method header. It's only shown for the class or method that is being defined by the header. For example if the header is "interface Example<T extends Foo> extends Bar", the fact that there are implementations of Foo or Bar doesn't cause a "Has Implementations" badge to be shown for them.
Comment 3 Martin Balin 2016-07-07 07:15:57 UTC
This old bug may not be relevant anymore. If you can still reproduce it in 8.2 development builds please reopen this issue.

Thanks for your cooperation,
NetBeans IDE 8.2 Release Boss
Comment 4 matthies 2016-07-18 20:40:05 UTC
Still reproducable in current dev build.