d24ed481a58b99783bcaad71d5aee510b4572a29
kate
  Tue Sep 24 16:26:01 2019 -0700
Rename trackDb setting for hiding empty subtracks (w/ backward compatibility). refs #23365

diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c
index edb47c2..f5125d5 100644
--- src/hg/hgTracks/hgTracks.c
+++ src/hg/hgTracks/hgTracks.c
@@ -4559,32 +4559,36 @@
     setGlobalsFromWindow(window);
 
     int trackHeight =  trackPlusLabelHeight(winTrack, fontHeight);
 
     if (trackHeight > maxHeight)
 	maxHeight = trackHeight;
     }
 setGlobalsFromWindow(windows); // first window
 
 flatTrack->maxHeight = maxHeight;
 }
 
 boolean doCollapseEmptySubtracks(struct track *track)
 /* Suppress display of empty subtracks. Initial support only for bed's. */
 {
-char *collapseEmptySubtracks = trackDbSetting(track->tdb, "collapseEmptySubtracks");
-return (collapseEmptySubtracks && sameWord(collapseEmptySubtracks, "on"));
+char *collapse = trackDbSetting(track->tdb, "hideEmptySubtracks");
+if (!collapse)
+    // previous syntax (not documented, but used by Regeneron)
+    collapse = trackDbSetting(track->tdb, "collapseEmptySubtracks");
+return (collapse && (sameWord(collapse, "on") ||
+                                        sameWord(collapse, "true")));
 }
 
 void makeActiveImage(struct track *trackList, char *psOutput)
 /* Make image and image map. */
 {
 struct track *track;
 MgFont *font = tl.font;
 struct hvGfx *hvg;
 struct tempName pngTn;
 char *mapName = "map";
 int fontHeight = mgFontLineHeight(font);
 int trackPastTabX = (withLeftLabels ? trackTabWidth : 0);
 int trackTabX = gfxBorder;
 int trackPastTabWidth = tl.picWidth - trackPastTabX;
 int pixWidth, pixHeight;