9275ee8d88f2f0b40c9331a2c5139b13f617421d kate Thu Oct 3 14:46:24 2019 -0700 Fixes to filter activated labeling. refs #23365 diff --git src/hg/hgTracks/bigBedTrack.c src/hg/hgTracks/bigBedTrack.c index 8c4a61b..aa405ba 100644 --- src/hg/hgTracks/bigBedTrack.c +++ src/hg/hgTracks/bigBedTrack.c @@ -426,34 +426,37 @@ if (scoreFilter) minScore = atoi(scoreFilter); struct bbiFile *bbi = fetchBbiForTrack(track); int seqTypeField = 0; if (sameString(track->tdb->type, "bigPsl")) { seqTypeField = bbExtraFieldIndex(bbi, "seqType"); } int mouseOverIdx = bbExtraFieldIndex(bbi, mouseOverField); track->bbiFile = NULL; struct bigBedFilter *filters = bigBedBuildFilters(cart, bbi, track->tdb) ; -if (filters || - (tdbIsCompositeChild(track->tdb) && - compositeHideEmptySubtracks(cart, tdbGetComposite(track->tdb), NULL, NULL))) +if (filters) labelTrackAsFiltered(track); + +struct trackDb *parentTdb = tdbGetComposite(track->tdb); +if (parentTdb && compositeHideEmptySubtracks(cart, parentTdb, NULL, NULL)) + parentTdb->longLabel = labelAsFiltered(parentTdb->longLabel); + for (bb = bbList; bb != NULL; bb = bb->next) { struct linkedFeatures *lf = NULL; if (sameString(track->tdb->type, "bigPsl")) { char *seq, *cds; struct psl *psl = pslFromBigPsl(chromName, bb, seqTypeField, &seq, &cds); int sizeMul = pslIsProtein(psl) ? 3 : 1; boolean isXeno = 0; // just affects grayIx boolean nameGetsPos = FALSE; // we want the name to stay the name lf = lfFromPslx(psl, sizeMul, isXeno, nameGetsPos, track); lf->original = psl; if ((seq != NULL) && (lf->orientation == -1)) reverseComplement(seq, strlen(seq));