e09c0d375e198e5c74164dbbbb4010a57bf13607
hiram
  Wed Mar 25 17:44:45 2026 -0700
correct UI operation on the synthetic bigWig gcOnFly track refs #35958

diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c
index cb5812c91c2..35ab2b31f77 100644
--- src/hg/hgTrackUi/hgTrackUi.c
+++ src/hg/hgTrackUi/hgTrackUi.c
@@ -4042,30 +4042,42 @@
 /* Create a trackDb entry for the base position ruler.
    It is not (yet?) a real track, so doesn't appear in trackDb */
 {
 return trackDbForPseudoTrack(RULER_TRACK_NAME,
 	RULER_TRACK_LABEL, RULER_TRACK_LONGLABEL, tvFull, FALSE);
 }
 
 static struct trackDb *trackDbForGcOnFly(struct cart *cart)
 /* Create a trackDb entry for the GC on the fly pseudo-track. */
 {
 char longLabel[1024];
 safef(longLabel, sizeof(longLabel), "GC FLY Percent in %s-Base Windows", gcOnFlyWinSize(cart));
 struct trackDb *tdb = trackDbForPseudoTrack(GC_ON_FLY_TRACK_NAME,
         GC_ON_FLY_TRACK_LABEL, longLabel, tvFull, TRUE);
 tdb->canPack = 0;
+tdb->type = cloneString("bigWig 0 100");
+trackDbAddSetting(tdb, "autoScale",         "Off");
+trackDbAddSetting(tdb, "viewLimits",        "30:70");
+trackDbAddSetting(tdb, "maxHeightPixels",   "128:36:16");
+trackDbAddSetting(tdb, "graphTypeDefault",  "Bar");
+trackDbAddSetting(tdb, "gridDefault",       "OFF");
+trackDbAddSetting(tdb, "windowingFunction", "Mean");
+trackDbAddSetting(tdb, "color",             "0,0,0");
+trackDbAddSetting(tdb, "altColor",          "128,128,128");
+trackDbAddSetting(tdb, "calcWinSize",       gcOnFlyWinSize(cart));
+trackDbAddSetting(tdb, "syntheticTrack",    "on");
+trackDbPolish(tdb);
 return tdb;
 }
 
 struct trackDb *trackDbForOligoMatch()
 /* Create a trackDb entry for the oligo matcher pseudo-track. */
 {
 return trackDbForPseudoTrack(OLIGO_MATCH_TRACK_NAME,
 	OLIGO_MATCH_TRACK_LABEL, OLIGO_MATCH_TRACK_LONGLABEL, tvHide, TRUE);
 }
 
 static char *handleDupOp(char *track, struct hash *trackHash)
 /* Handle the duplication operation in the URL if any.  Return dupe name if
  * a dupe has happened. The trackHash is keyed by track name and has 
  * struct trackDb values. */
 {