afdb90131d5c0ea91574e4fb65fc7983e6b5551f tdreszer Mon Feb 6 15:29:14 2012 -0800 Fix some edge cases when superChild composite is hidden by its superParent. Redmine 6622 diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c index 3187a31..899f0da 100644 --- src/hg/hgTrackUi/hgTrackUi.c +++ src/hg/hgTrackUi/hgTrackUi.c @@ -2781,34 +2781,42 @@ superTrackDropDown(cart, tdb, 1); } else { /* normal visibility control dropdown */ enum trackVisibility vis = tdb->visibility; boolean canPack = rTdbTreeCanPack(tdb); if (ajax) { vis = tdbVisLimitedByAncestry(cart, tdb, TRUE); // ajax popups should show currently inherited visability // composite children may inherit squish/pack vis so allow it. if (canPack == FALSE && tdbIsCompositeChild(tdb)) canPack = rTdbTreeCanPack(tdbGetComposite(tdb)); } else + { vis = hTvFromString(cartUsualString(cart,tdb->track, hStringFromTv(vis))); // But hgTrackUi page should show local vis - hTvDropDownClassVisOnlyAndExtra(tdb->track,vis, - canPack, "normalText visDD", trackDbSetting(tdb, "onlyVisibility"), - (tdb->parent != NULL ?"onchange='return visTriggersHiddenSelect(this);'":NULL)); + if (tdbIsSuperTrackChild(tdb)) + { + hTvDropDownClassVisOnlyAndExtra(tdb->track,vis,canPack, + "normalText superChild visDD", trackDbSetting(tdb, "onlyVisibility"), + "onchange='visTriggersHiddenSelect(this);'"); + } + else + hTvDropDownClassVisOnlyAndExtra(tdb->track,vis,canPack, + "normalText visDD", trackDbSetting(tdb, "onlyVisibility"),NULL); + } } if (!ajax) { printf(" "); cgiMakeButton("Submit", "Submit"); #ifdef SUBTRACK_CFG // Offer cancel button always? // composites and multiTracks (not standAlones or supers) if (tdbIsContainer(tdb)) { printf(" "); cgiMakeOnClickButton("window.history.back();","Cancel"); } #endif///def SUBTRACK_CFG if(tdbIsComposite(tdb))