14cb2006a261922f27924e0fed14f067ce90fd1e lrnassar Tue Apr 28 14:17:58 2026 -0700 Move chromAlias info icon next to chromosome position, refs #29201 Relocate the icon from the right side of the search bar to between the Multi-region button and the chromosome position display, per reviewer feedback that the prior location read ambiguously next to the search box. Show only the (i) glyph (drop the "Aliases" label), bump font-size to 110%, tighten margins, and rename the tooltip from "Also known as:" to "Alternate sequence names:". diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c index 4e2a4b4d710..63927f10708 100644 --- src/hg/hgTracks/hgTracks.c +++ src/hg/hgTracks/hgTracks.c @@ -8864,32 +8864,32 @@ continue; if (sameString(a->name, displayName) || sameString(a->name, nativeName)) continue; if (dy->stringSize > 0) dyStringAppend(dy, ", "); dyStringAppend(dy, a->name); } if (dy->stringSize == 0) { dyStringFree(&dy); return; } char *encoded = htmlEncode(dy->string); -printf("<span id='chromAliases' title='Also known as: %s'>" - "<a>ⓘ Aliases</a></span>", encoded); +printf("<span id='chromAliases' title='Alternate sequence names: %s'>" + "<a>ⓘ</a></span>", encoded); freeMem(encoded); dyStringFree(&dy); } unsigned getParaLoadTimeout() // get the parallel load timeout in seconds (defaults to 90) { char *paraLoadTimeoutStr = cartOptionalString(cart, "parallelFetch.timeout"); if (paraLoadTimeoutStr == NULL) paraLoadTimeoutStr = cfgOptionDefault("parallelFetch.timeout", "90"); // wait up to default 90 seconds. unsigned paraLoadTimeout = sqlUnsigned(paraLoadTimeoutStr); return paraLoadTimeout; @@ -9641,59 +9641,60 @@ char buf[256]; char *javascript = "document.location = '/cgi-bin/hgTracks?db=' + document.TrackForm.db.options[document.TrackForm.db.selectedIndex].value;"; if (containsStringNoCase(database, "zoo")) { hPuts("Organism "); printAssemblyListHtmlExtra(database, "change", javascript); } // multi-region button on position line, initially under hg.conf control if (multiRegionButtonTop) { printMultiRegionButton(); hPrintf(" "); } + if (cfgOptionBooleanDefault("showAliases", FALSE) && sameString(virtModeType, "default")) + printAliases(chromName, virtChromName); + if (virtualSingleChrom()) // DISGUISE VMODE safef(buf, sizeof buf, "%s", windowsSpanPosition()); else safef(buf, sizeof buf, "%s:%ld-%ld", virtChromName, virtWinStart+1, virtWinEnd); position = cloneString(buf); // position box char *pressedClass = ""; char *showVirtRegions = ""; if (differentString(virtModeType, "default")) { pressedClass = "pressed"; showVirtRegions = "show multi-region position ranges and "; } hPrintf("<span class='positionDisplay %s' id='positionDisplay' " "title='click to %s copy chromosome range to input box'>%s</span>", pressedClass, showVirtRegions, addCommasToPos(database, position)); hPrintf("<input type='hidden' name='position' id='position' value='%s'>\n", buf); sprintLongWithCommas(buf, virtWinEnd - virtWinStart); hPrintf(" <span id='size'>%s</span> bp. ", buf); hPrintf("<input class='positionInput' type='text' name='hgt.positionInput' id='positionInput'" " size='%d'>\n", multiRegionButtonTop ? 51 : 61); hWrites(" "); hButton("goButton", "Search"); printSearchHelpLink(); - if (cfgOptionBooleanDefault("showAliases", FALSE) && sameString(virtModeType, "default")) - printAliases(chromName, virtChromName); printPatchNote(); if (!trackHubDatabase(database)) { jsonObjectAdd(jsonForClient, "assemblySupportsGeneSuggest", newJsonBoolean(assemblySupportsGeneSuggest(database))); if (assemblySupportsGeneSuggest(database)) hPrintf("<input type='hidden' name='hgt.suggestTrack' id='suggestTrack' value='%s'>\n", assemblyGeneSuggestTrack(database)); } // hg.conf controlled links // database-specific link: 2 hg.conf settings, format <db>_TopLink{Label} struct slName *dbLinks = cfgNamesWithPrefix(database);