ae63ce55185746c5fabb2ead8cc20215faada36d
max
  Mon Nov 3 08:03:14 2025 -0800
adding ancient dna track, refs #36592

diff --git src/hg/js/subCfg.js src/hg/js/subCfg.js
index c8d0dd8d8dd..e18ecfdd32a 100644
--- src/hg/js/subCfg.js
+++ src/hg/js/subCfg.js
@@ -40,50 +40,55 @@
     visIndependent: false,
     viewTags: [],
 
     markChange: function (eventObj, obj)
     { // Marks a control as having been changed by the user.  Naming will send value to cart.
       // Note this is often called directly as the onchange event function
         if (!obj || $.type(obj) === "string")
             obj = this;
 
         $(obj).addClass('changed');
 
         // if the user checked a child checkbox that used to be unchecked, and the parent composite is on hide,
         // then set the parent composite to pack
         var compEl = $("[name='"+this.compositeName+"'");
         if (compEl.length!==0 && obj.type==="checkbox" && obj.checked && compEl.val()==="hide")
-            compEl.val("pack");
-
-        // if the user unchecked a child checkbox that used to be checked, and the parent composite is on pack,
-        // and no more child is checked, then set the parent composite to hide.
-        var subCfgs = $(".subCB:checked");
-        if (subCfgs.length===0)
-            compEl.val("hide");
+            compEl.val("pack").change();
 
         // checkboxes have hidden boolshads which should be marked when unchecked
         if (obj.type === "checkbox") {
             var boolshad = normed($("input.cbShadow#boolshad\\."+obj.id));
             if (boolshad) {
                 $(boolshad).addClass('changed');
 	    } else {
 		boolshad = normed($("input.cbShadow[name='boolshad\\." + obj.name+"']"));
 		if (boolshad) {
 		    $(boolshad).addClass('changed');
 		}
             }
+            
+            // if the user unchecked a child checkbox that used to be checked, and the parent composite is on pack,
+            // and no more child is checked, then set the parent composite to hide.
+            var subCfgs = $(".subCB:checked");
+            if (subCfgs.length===0) {
+                //$(obj).val("pack"); // 
+                //compEl.val("hide").change();
+                compEl.val("hide");
+                $(obj).val("hide");
+            }
         }
+        
     },
 
     clearChange: function (obj)
     { // Mark as unchanged
         $(obj).removeClass('changed');
 
         // checkboxes have hidden boolshads which should be cleared in tandem
         if (obj.type === "checkbox") {
             var boolshad = normed($("input.cbShadow#boolshad\\."+obj.id));
             if (boolshad) {
                 $(boolshad).removeClass('changed');
 	    } else {
 		boolshad = normed($("input.cbShadow[name='boolshad\\." + obj.name+"']"));
 		if (boolshad) {
 		    $(boolshad).removeClass('changed');