0ae67100c17918eb761982d726b0f0e65c6cea25 braney Tue Nov 7 13:55:01 2023 -0800 if we're called on the path that has excludeHash set we also want to set the supertrack children's visbilities refs #32556 diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c index ab570e6..fe957c1 100644 --- src/hg/hgTracks/hgTracks.c +++ src/hg/hgTracks/hgTracks.c @@ -333,31 +333,33 @@ if (tdbIsSuperTrackChild(tdb)) { assert(tdb->parent != NULL); /* Leave supertrack members alone -- only change parent */ struct trackDb *parentTdb = tdb->parent; if ((changeVis == tvHide && !parentTdb->isShow) || (changeVis != tvHide && parentTdb->isShow)) { /* remove if setting to default vis */ cartRemove(cart, parentTdb->track); } else cartSetString(cart, parentTdb->track, changeVis == tvHide ? "hide" : "show"); } - else // Not super child + // if we're called on the path that has excludeHash set + // we also want to set the supertrack children's visbilities + if (!tdbIsSuperTrackChild(tdb) || (excludeHash != NULL)) { if (changeVis == tdb->visibility) /* remove if setting to default vis */ cartRemove(cart, track->track); else cartSetString(cart, track->track, hStringFromTv(changeVis)); track->visibility = changeVis; } // Whether super child or not, if its a composite, then handle the children if (tdbIsComposite(tdb)) { struct track *subtrack; for (subtrack=track->subtracks;subtrack!=NULL;subtrack=subtrack->next) {