108f935f3af0dda80da1fcb07b079434cc82e65e larrym Fri Nov 4 17:32:31 2011 -0700 restore newVisibility functionality which got accidentally refactored out diff --git src/hg/js/hgTracks.js src/hg/js/hgTracks.js index 0ad58e3..55c72aa 100644 --- src/hg/js/hgTracks.js +++ src/hg/js/hgTracks.js @@ -1879,31 +1879,31 @@ dragReorder.init(); dragSelect.load(false); imageV2.markAsDirtyPage(); } else if (!imageV2.mapIsUpdateable) { jQuery('body').css('cursor', 'wait'); if(selectUpdated) { // assert(document.TrackForm); document.TrackForm.submit(); } else { // add a hidden with new visibility value var form = $(document.TrackHeaderForm); $("<input type='hidden' name='"+id+"'value='"+cmd+"'>").appendTo(form); document.TrackHeaderForm.submit(); } } else { - imageV2.requestImgUpdate(id, id+"="+cmd, ""); + imageV2.requestImgUpdate(id, id + "=" + cmd, "", cmd); } } }, makeHitCallback: function (title) { // stub to avoid problem with a function closure w/n a loop return function(menuItemClicked, menuObject) { rightClick.hit(menuItemClicked, menuObject, title); return true; }; }, reloadFloatingItem: function () { // currently dead (experimental code) if(rightClick.floatingMenuItem) { $('#img_data_' + rightClick.floatingMenuItem).parent().makeFloat( @@ -2535,51 +2535,53 @@ // >1x dragScrolling needs some extra care. if(hgTracks.imgBoxPortal && (hgTracks.imgBoxWidth > hgTracks.imgBoxPortalWidth)) { if (hgTracks.imgBoxPortalLeft != undefined) { $(tr).find('.panImg').css({'left': hgTracks.imgBoxPortalLeft }); $(tr).find('.tdData').css( {'backgroundPosition': hgTracks.imgBoxPortalLeft}); } } return true; } } return false; }, - requestImgUpdate: function (trackName,extraData,loadingId) + requestImgUpdate: function (trackName,extraData,loadingId,newVisibility) { + // extraData, loadingId and newVisibility are optional var data = "hgt.trackImgOnly=1&hgsid=" + getHgsid() + "&hgt.trackNameFilter=" + trackName; if(extraData != undefined && extraData != "") data += "&" + extraData; if(loadingId == undefined || loadingId == "") loadingId = showLoadingImage("tr_" + trackName); var getOrPost = "GET"; if ((data.length) > 2000) // extraData could contain a bunch of changes from the cfg dialog getOrPost = "POST"; $.ajax({ type: getOrPost, url: "../cgi-bin/hgTracks", data: data, dataType: "html", trueSuccess: imageV2.updateImgAndMap, success: catchErrorOrDispatch, error: errorHandler, cmd: 'refresh', loadingId: loadingId, id: trackName, + newVisibility: newVisibility, cache: false }); }, updateImgAndMap: function (response, status) { // Handle ajax response with an updated trackMap image, map and optional ideogram. // // this.cmd can be used to figure out which menu item triggered this. // this.id == appropriate track if we are retrieving just a single track. // update local hgTracks.trackDb to reflect possible side-effects of ajax request. var json = scrapeVariable(response, "hgTracks"); var oldTrackDb = hgTracks.trackDb; if(json == undefined) { showWarning("hgTracks object is missing from the response");