f3f1e39e778e3a16206504e5d8b7ceacfae8464a
braney
  Sat Nov 21 13:51:40 2020 -0800
oops... wasn't setting the current font and style correctly

diff --git src/hg/hgTracks/config.c src/hg/hgTracks/config.c
index 1d4024f..dbb1942 100644
--- src/hg/hgTracks/config.c
+++ src/hg/hgTracks/config.c
@@ -122,30 +122,38 @@
 "n022024l.pfb",
 "p052003l.pfb",
 "p052004l.pfb",
 "p052023l.pfb",
 "p052024l.pfb",
 "z003034l.pfb",
 };
 
 char *emptyStyles[] = {
 "Normal"
 };
 
 static void textFontDropDown()
 /* Create drop down for font size. */
 {
+/* get current values for font and style */
+char *currentFontName = cloneString(tl.textFont);
+char *currentStyle = strchr(currentFontName, '-');
+if (currentStyle)
+    *currentStyle++ = 0;
+else
+    currentStyle = "Normal";
+
 char *faceNames[sizeof(freeTypeFontNames)];
 int ii;
 int numFonts = 0;
 struct dyString *dy = dyStringNew(1024);
 dyStringPrintf(dy, "  fontStyles = [];\n");
 
 int numStyle = 0;
 char *lastName = NULL;
 
 faceNames[numFonts++] = "Bitmap";
 dyStringPrintf(dy, "  fontStyles['Bitmap'] = ['Normal'];");
 
 for (ii=0; ii < ArraySize(freeTypeFontNames); ii++)
     {
     char *fontName = cloneString(freeTypeFontNames[ii]);
@@ -171,32 +179,34 @@
         dyStringPrintf(dy, ",");
     dyStringPrintf(dy, "'%s'", style);
     numStyle++;
 
     lastName = fontName;
     }
     dyStringPrintf(dy, "  ];\n");
 
 dyStringPrintf(dy, "  $(\"[name='%s']\").change(function()\n", textFontVar);
 dyStringPrintf(dy, "  {\n");
 dyStringPrintf(dy, "$(\"[name='textStyle']\").empty();");
 dyStringPrintf(dy, "  val= $(this).find(':selected').val(); \n");
 dyStringPrintf(dy, "  for(ii=0; ii < fontStyles[val].length; ii++) { $(\"[name='textStyle']\").append( new Option(fontStyles[val][ii],fontStyles[val][ii],))};\n");
 dyStringPrintf(dy, "  });\n");
 dyStringPrintf(dy, "$(\"[name='textFont']\").change();\n");
+dyStringPrintf(dy, "$(\"[name='textStyle']\").val('%s');\n", currentStyle);
 jsInline(dy->string);
-hDropList(textFontVar, faceNames, numFonts, tl.textFont);
+
+hDropList(textFontVar, faceNames, numFonts, currentFontName);
 }
 
 static void textStyleDropDown()
 /* Create drop down for font size. */
 {
 hDropList(textStyleVar, emptyStyles, ArraySize(emptyStyles), emptyStyles[0]);
 }
 
 static void textSizeDropDown()
 /* Create drop down for font size. */
 {
 static char *sizes[] = {"6", "8", "10", "12", "14", "18", "24", "34"};
 hDropList(textSizeVar, sizes, ArraySize(sizes), tl.textSize);
 }