a95e62ef193d062981f524a0b7b845727965e69e
larrym
  Tue Aug 31 14:01:24 2010 -0700
keep local state in sync if user changed visibility in hgTrackUi dialog
diff --git src/hg/js/hgTracks.js src/hg/js/hgTracks.js
index d00de36..1c77c96 100644
--- src/hg/js/hgTracks.js
+++ src/hg/js/hgTracks.js
@@ -1835,9 +1835,20 @@
                                                 $('#tr_' + popUpTrackName).remove();
                                                 initImgTblButtons();
                                                 loadImgAreaSelect(false);
+                                            } else {
+                                                var o = getAllVars($('#pop'));
+                                                // Keep local state in sync if user changed visibility
+                                                var newVisibility = o[popUpTrackName];
+                                                if(newVisibility != null) {
+                                                    $("select[name=" + popUpTrackName + "]").each(function(t) {
+                                                        $(this).val(newVisibility);
+                                                    });
+                                                    var rec = trackDbJson[popUpTrackName];
+                                                    if(rec) {
+                                                        rec.localVisibility = newVisibility;
                                             }
-                                            else {
-                                                var urlData = getAllVarsAsUrlData($('#pop'));
+                                                }
+                                                var urlData = objectToQueryString(o);
                                                 if(mapIsUpdateable) {
                                                 updateTrackImg(popUpTrackName,urlData,"");
                                                 } else {