6566d72912b95b542d40d7d91302c21f83942320 kate Wed Jun 9 10:21:33 2021 -0700 Remove Rec Track Set panel/button if hideTracks=1 in URL. refs #27682 diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c index ea4046e..10f8261 100644 --- src/hg/hgTracks/hgTracks.c +++ src/hg/hgTracks/hgTracks.c @@ -8005,30 +8005,31 @@ safef(buf, sizeof buf, "configure %s multi-region display mode", isPressed ? "or exit" : ""); hButtonNoSubmitMaybePressed("hgTracksConfigMultiRegionPage", "multi-region", buf, "popUpHgt.hgTracks('multi-region config'); return false;", isPressed); } void doTrackForm(char *psOutput, struct tempName *ideoTn) /* Make the tracks display form with the zoom/scroll buttons and the active * image. If the ideoTn parameter is not NULL, it is filled in if the * ideogram is created. */ { struct group *group; struct track *track; char *freezeName = NULL; boolean hideAll = cgiVarExists("hgt.hideAll"); +boolean hideTracks = cgiOptionalString( "hideTracks") != NULL; boolean defaultTracks = cgiVarExists("hgt.reset"); boolean showedRuler = FALSE; boolean showTrackControls = cartUsualBoolean(cart, "trackControlsOnMain", TRUE); boolean multiRegionButtonTop = cfgOptionBooleanDefault(MULTI_REGION_CFG_BUTTON_TOP, FALSE); long thisTime = 0, lastTime = 0; basesPerPixel = ((float)virtWinBaseCount) / ((float)fullInsideWidth); zoomedToBaseLevel = (virtWinBaseCount <= fullInsideWidth / tl.mWidth); zoomedToCodonLevel = (ceil(virtWinBaseCount/3) * tl.mWidth) <= fullInsideWidth; zoomedToCodonNumberLevel = (ceil(virtWinBaseCount/3) * tl.mWidth * 5) <= fullInsideWidth; zoomedToCdsColorLevel = (virtWinBaseCount <= fullInsideWidth*3); if (psOutput != NULL) { hPrintDisable(); @@ -8531,31 +8532,31 @@ if (stringIn(database, freezeName)) hPrintf("%s %s on %s %s Assembly", organization, browserName, organism, freezeName); else hPrintf("%s %s on %s %s Assembly (%s)", organization, browserName, trackHubSkipHubName(organism), freezeName, trackHubSkipHubName(database)); } } hPrintf("</B></SPAN>"); // Disable recommended track set panel when changing tracks, session, database char *sessionLabel = cartOptionalString(cart, hgsOtherUserSessionLabel); char *oldDb = hashFindVal(oldVars, "db"); if (sessionLabel) { - if (defaultTracks || hideAll || + if (defaultTracks || hideAll || hideTracks || (oldDb && differentString(database, oldDb)) || !hasRecTrackSet(cart) || sameString(sessionLabel, "off")) cartRemove(cart, hgsOtherUserSessionLabel); } sessionLabel = cartOptionalString(cart, hgsOtherUserSessionLabel); if (sessionLabel) { char *panel = "recTrackSetsPanel"; boolean isSessChanged = FALSE; if (recTrackSetsChangeDetectEnabled()) isSessChanged = hasSessionChanged(); struct dyString *hoverText = dyStringNew(0); dyStringPrintf(hoverText, "Your browser is displaying the %s track set%s. " " Click to change to another.", sessionLabel,