90b8f880be12956b899d973bc565bffdc9b7ce89 jcasper Fri Aug 28 08:27:13 2026 -0700 Moving sort comment on the faceted composite UI, and ading a 'hide subtracks', refs #36320 diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c index 90dc760923a..b583403b430 100644 --- src/hg/hgTrackUi/hgTrackUi.c +++ src/hg/hgTrackUi/hgTrackUi.c @@ -3101,30 +3101,32 @@ struct slPair *dataTypes = parseDataTypes(tdb); boolean hasDataTypes = (dataTypes != NULL); // optional const char *colorSettingsUrl = (const char *)hashFindVal(tdb->settingsHash, "colorSettingsUrl"); const char *maxCheckboxes = (const char *)hashFindVal(tdb->settingsHash, "maxCheckboxes"); const char *subtrackUrls = trackDbSetting(tdb, "subtrackUrls"); // --- done parsing values from trackDb.settings --- const char *metaDataId = tdb->track; const int metaDataIdLen = strlen(metaDataId); printf(pageStyle); // css +compositeHideEmptySubtracksUi(cart, tdb); + // --- Composite-level filters --- // Faceted composites skip hCompositeUi(), so we're doing our own filters setup. // The section is named "bedFilters" rather than "filters" because the JS builds // its own "#filters" div for the metadata facets. if (bedHasFilters(tdb)) { puts("<div class='bedFiltersWrap'>"); puts("<style>#bedFilters-1 > td > br:first-of-type, " "#bedFilters-1 > td > p:empty { display:none; }</style>"); puts("<table>"); // required by jsBeginCollapsibleSection*, which emits a <TR> jsBeginCollapsibleSectionFontSize(cart, tdb->track, "bedFilters", "Data filters", FALSE, "medium"); printf("<p class='smallText' style='margin-top:0'>These filters apply to every " "subtrack in this container. "); printInfoIcon("A filter set on an individual subtrack's own configuration page "