diff options
author | Michael Rennie | 2011-07-25 20:25:28 +0000 |
---|---|---|
committer | Michael Rennie | 2011-07-25 20:25:28 +0000 |
commit | 1ef6fd07710d5982735dfe825122adea3b71d7ba (patch) | |
tree | ffc2d294c196fb9b778a26dda9f6617b464f9abe | |
parent | c970708da71f2b0f6494597687c15fe089284015 (diff) | |
download | eclipse.platform.debug-1ef6fd07710d5982735dfe825122adea3b71d7ba.tar.gz eclipse.platform.debug-1ef6fd07710d5982735dfe825122adea3b71d7ba.tar.xz eclipse.platform.debug-1ef6fd07710d5982735dfe825122adea3b71d7ba.zip |
Bug 345020 - [run control][debug view] Run control actions not updated upon state change when multiple elements selected in Debug view.
-rw-r--r-- | org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java index ced87df39..650e9c883 100644 --- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java +++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java @@ -342,19 +342,19 @@ public class LaunchView extends AbstractDebugView implements ISelectionChangedLi fire(new DebugContextEvent(this, selection, DebugContextEvent.ACTIVATED)); } - protected void possibleChange(TreePath element, int type) { - DebugContextEvent event = null; - synchronized (this) { - if (fContext instanceof ITreeSelection) { - ITreeSelection ss = (ITreeSelection) fContext; - if (ss.size() == 1) { - TreePath current = ss.getPaths()[0]; - if (current.startsWith(element, null)) { - if (current.getSegmentCount() == element.getSegmentCount()) { - event = new DebugContextEvent(this, fContext, type); - } else { - // if parent of the currently selected element - // changes, issue event to update STATE only + protected void possibleChange(TreePath element, int type) { + DebugContextEvent event = null; + synchronized (this) { + if (fContext instanceof ITreeSelection) { + ITreeSelection ss = (ITreeSelection) fContext; + TreePath[] ssPaths = ss.getPaths(); + for (int i = 0; i < ssPaths.length; i++) { + if (ssPaths[i].startsWith(element, null)) { + if (ssPaths[i].getSegmentCount() == element.getSegmentCount()) { + event = new DebugContextEvent(this, fContext, type); + } else { + // if parent of the currently selected element + // changes, issue event to update STATE only event = new DebugContextEvent(this, fContext, DebugContextEvent.STATE); } } |