Bug 403989 - Add a possibility to show the current breakpoint in the list of breakpoints, when execution stops at it
Summary: Add a possibility to show the current breakpoint in the list of breakpoints, ...
Status: NEW
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Debug (show other bugs)
Version: 4.3   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: JDT-Debug-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-21 04:53 EDT by Roman Levenstein CLA
Modified: 2013-03-21 04:53 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Roman Levenstein CLA 2013-03-21 04:53:26 EDT
Currently, if you click on the Resume button of the debugger to continue the execution until it hits a breakpoint, Eclipse would do it and stop, when it hits a breakpoint.

But there is a small problem with it. Sometimes, the breakpoint was set at the file:line which do not have sources to be shown be Eclipse anymore. This may happen e.g. when you were debugging a project or library containing that file before, set some breakpoint and then that project was removed from the workspace. Current project still has the old breakpoint as an active one in the list, but sources are not available anymore.

Now, if execution stops at such a breakpoint, you may want to disable it, because you realized that it is not important anymore. But how do you do it? If the source file would be shown, it would be easy. Just click on the left hand side of the corresponding line. But if there is no source code, you have to go through the list of breakpoints in the Breakpoints View and find your specific breakpoint there. If you have e.g.  50-100 breakpoints, it becomes really annoying, since manual scrolling and search in this list is very slow. 

Therefore, I'd like to propose the following:

When execution stops at the breakpoint, add a new action in the context menu, which is shown for the current item in the Debug view displaying a call stack. Each such item currently shows classname and line. So in case of a breakpoint it currently shows the classname and a line of this breakpoint. The new action should be called "Show current breakpoint" and it should select and show in the breakpoints list the current breakpoint that resulted in the suspended execution. Once such an action is performed, the user may decide to disable it or do some other actions related to the current breakpoint.

IMHO, implementing such an extension should be very easy, as all the required functionality is almost there.

BTW, it could be that this behavior of the debugger happens not only for Java, but also for other languages using Debug framework of Eclipse. In this case, it would be nice to solve the problem generically.