Bug 324385: [search] Double-click in Search results pages should always toggle expansion
diff --git a/org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchViewPage.java b/org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchViewPage.java
index fe95d5d..122f3f4 100644
--- a/org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchViewPage.java
+++ b/org.eclipse.search/new search/org/eclipse/search/ui/text/AbstractTextSearchViewPage.java
@@ -1426,10 +1426,9 @@
 			TreeViewer tv = (TreeViewer) getViewer();
 			Object element = selection.getFirstElement();
 			if (element != null) {
+				tv.setExpandedState(element, !tv.getExpandedState(element));
 				if (!hasCurrentMatch && getDisplayedMatchCount(element) > 0)
 					gotoNextMatch(OpenStrategy.activateOnOpen());
-				else
-					tv.setExpandedState(element, !tv.getExpandedState(element));
 			}
 			return;
 		} else if (!hasCurrentMatch) {
diff --git a/org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchPage.java b/org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchPage.java
index 4a10d52..5290175 100644
--- a/org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchPage.java
+++ b/org.eclipse.search/search/org/eclipse/search/internal/ui/text/FileSearchPage.java
@@ -186,6 +186,11 @@
 			Object firstElement= ((IStructuredSelection)event.getSelection()).getFirstElement();
 			if (firstElement instanceof IFile) {
 				if (getDisplayedMatchCount(firstElement) == 0) {
+					Viewer viewer= event.getViewer();
+					if (viewer instanceof TreeViewer) {
+						TreeViewer tv = (TreeViewer) getViewer();
+						tv.setExpandedState(firstElement, !tv.getExpandedState(firstElement));
+					}
 					try {
 						open(getSite().getPage(), (IFile)firstElement, false);
 					} catch (PartInitException e) {