Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarin Wright2010-03-25 02:13:44 +0000
committerDarin Wright2010-03-25 02:13:44 +0000
commit8aa6b4f70011919f8ea20376454e58caf936a8aa (patch)
treec9c540e7cfa5a2928fac7a8ca611ee359b9221aa /org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views
parent064c303c4fc8a2cc533b33644a73f4dfeeac6eeb (diff)
downloadeclipse.platform.debug-8aa6b4f70011919f8ea20376454e58caf936a8aa.tar.gz
eclipse.platform.debug-8aa6b4f70011919f8ea20376454e58caf936a8aa.tar.xz
eclipse.platform.debug-8aa6b4f70011919f8ea20376454e58caf936a8aa.zip
Bug 289574 - [Breakpoints] Selection moves up when deleting breakpoints from group
Diffstat (limited to 'org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views')
-rw-r--r--org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java43
1 files changed, 14 insertions, 29 deletions
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java
index e03abaed3..565da9acc 100644
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java
+++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java
@@ -67,7 +67,6 @@ import org.eclipse.swt.dnd.DND;
import org.eclipse.swt.dnd.Transfer;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.TreeItem;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.ISharedImages;
@@ -416,39 +415,25 @@ public class BreakpointsView extends VariablesView implements IBreakpointManager
TreePath path = ((ITreeSelection) selection).getPaths()[0];
TreeItem item = (TreeItem) ((TreeModelViewer) getViewer()).findItem(path);
Object toselect = null;
+ TreeItem[] siblings = null;
if (item != null) {
TreeItem parent = item.getParentItem();
if (parent != null) {
- int idx = 0;
- if (parent.getItemCount() == 1) {
- toselect = parent.getData();
- }
- idx = parent.indexOf(item);
- if (idx == 0) {
- if (parent.getItemCount() > 1) {
- toselect = parent.getItem(1).getData();
- } else {
- toselect = parent.getItem(0).getData();
- }
- }
- if (idx > 0) {
- toselect = parent.getItem(idx - 1).getData();
- }
+ siblings = parent.getItems();
} else {
- Tree tree = item.getParent();
- TreeItem[] items = tree.getItems();
- if (items.length > 1) {
- for (int i = 0; i < items.length; i++) {
- if (item.equals(items[i])) {
- if (i + 1 >= items.length) {
- toselect = items[i - 1].getData();
- break;
- } else {
- toselect = items[i + 1].getData();
- break;
- }
-
+ siblings = item.getParent().getItems();
+ }
+ if (siblings.length > 1) {
+ for (int i = 0; i < siblings.length; i++) {
+ if (item.equals(siblings[i])) {
+ if (i + 1 >= siblings.length) {
+ toselect = siblings[i - 1].getData();
+ break;
+ } else {
+ toselect = siblings[i + 1].getData();
+ break;
}
+
}
}
}

Back to the top