7bff019e53ea8d6913ef41314a2bc6082f0e89d3
braney
  Mon Nov 14 14:13:34 2011 -0800
add some magic to make hgFind open hidden subTracks of hidden composites.  #5412
diff --git src/hg/lib/hgFind.c src/hg/lib/hgFind.c
index abbfecc..778d652 100644
--- src/hg/lib/hgFind.c
+++ src/hg/lib/hgFind.c
@@ -2412,34 +2412,38 @@
 	    fprintf(f, "<H2>%s</H2><PRE>\n", table->description);
 	for (pos = table->posList; pos != NULL; pos = pos->next)
 	    {
 	    if (table->htmlOnePos)
 	        table->htmlOnePos(table, pos, f);
 	    else
 		{
 		char *matches = excludeTable ? "" : pos->browserName;
 		char *encMatches = cgiEncode(matches);
 		hgPosBrowserRange(pos, range);
 		fprintf(f, "<A HREF=\"%s%cposition=%s",
 			hgAppName, hgAppCombiner, range);
 		if (ui != NULL)
 		    fprintf(f, "&%s", ui);
 		fprintf(f, "%s&", extraCgi);
-		if (parent)
-		    fprintf(f, "%s=%s&", parent, vis);
-		else
 		    fprintf(f, "%s=%s&", trackName, vis);
+		// this is magic to tell the browser to make the 
+		// composite and this subTrack visible
+		if (parent)
+		    {
+		    fprintf(f, "%s_sel=1&", trackName);
+		    fprintf(f, "%s_sel=1&", parent);
+		    }
 		fprintf(f, "hgFind.matches=%s,\">", encMatches);
 		htmTextOut(f, pos->name);
 		fprintf(f, " at %s</A>", range);
 		desc = pos->description;
 		if (desc)
 		    {
 		    fprintf(f, " - ");
 		    htmTextOut(f, desc);
 		    }
 		fprintf(f, "\n");
 		freeMem(encMatches);
 		}
 	    }
 	if (table->htmlEnd) 
 	    table->htmlEnd(table, f);