View | Details | Raw Unified | Return to bug 194602
Collapse All | Expand All

(-)UI/org/eclipse/rse/internal/ui/view/SystemView.java (-4 / +11 lines)
Lines 28-33 Link Here
28
 * Martin Oberhuber (Wind River) - [186964] Fix adapter actions for multiselect, and and NPE
28
 * Martin Oberhuber (Wind River) - [186964] Fix adapter actions for multiselect, and and NPE
29
 * Martin Oberhuber (Wind River) - [186991] Avoid remote refresh if no element is remote 
29
 * Martin Oberhuber (Wind River) - [186991] Avoid remote refresh if no element is remote 
30
 * Martin Oberhuber (Wind River) - [190271] Move ISystemViewInputProvider to Core
30
 * Martin Oberhuber (Wind River) - [190271] Move ISystemViewInputProvider to Core
31
 * Kevin Doyle (IBM) - [194602] handleDoubleClick does expand/collapse on treepath instead of element
31
 ********************************************************************************/
32
 ********************************************************************************/
32
33
33
package org.eclipse.rse.internal.ui.view;
34
package org.eclipse.rse.internal.ui.view;
Lines 66-71 Link Here
66
import org.eclipse.jface.viewers.IStructuredSelection;
67
import org.eclipse.jface.viewers.IStructuredSelection;
67
import org.eclipse.jface.viewers.ITreeContentProvider;
68
import org.eclipse.jface.viewers.ITreeContentProvider;
68
import org.eclipse.jface.viewers.ITreePathContentProvider;
69
import org.eclipse.jface.viewers.ITreePathContentProvider;
70
import org.eclipse.jface.viewers.ITreeSelection;
69
import org.eclipse.jface.viewers.ITreeViewerListener;
71
import org.eclipse.jface.viewers.ITreeViewerListener;
70
import org.eclipse.jface.viewers.SelectionChangedEvent;
72
import org.eclipse.jface.viewers.SelectionChangedEvent;
71
import org.eclipse.jface.viewers.StructuredSelection;
73
import org.eclipse.jface.viewers.StructuredSelection;
Lines 506-517 Link Here
506
			//event.doit = false;
508
			//event.doit = false;
507
			return;
509
			return;
508
		}
510
		}
509
		IStructuredSelection s = (IStructuredSelection) event.getSelection();
511
		ITreeSelection s = (ITreeSelection) event.getSelection();
510
		Object element = s.getFirstElement();
512
		Object element = s.getFirstElement();
511
		if (element == null) return;
513
		if (element == null) return;
512
		if (isExpandable(element)) {
514
		// Get the path for the element and use it for setting expanded state,
513
			boolean expandedState = getExpandedState(element);
515
		// so the proper TreeItem is expanded/collapsed
514
			setExpandedState(element, !expandedState);
516
		TreePath[] paths = s.getPathsFor(element);
517
		if (paths == null || paths.length == 0 || paths[0] == null) return;
518
		TreePath elementPath = paths[0];
519
		if (isExpandable(elementPath)) {
520
			boolean expandedState = getExpandedState(elementPath);
521
			setExpandedState(elementPath, !expandedState);
515
			// DY:  fire collapse / expand event
522
			// DY:  fire collapse / expand event
516
			if (expandedState) {
523
			if (expandedState) {
517
				fireTreeCollapsed(new TreeExpansionEvent(this, element));
524
				fireTreeCollapsed(new TreeExpansionEvent(this, element));

Return to bug 194602