c4cf39d819e7051bdf1f018a0cbdf09463b54731 tdreszer Tue Jun 28 15:18:00 2011 -0700 Fixed redmine 2813 note 23. The gene autocomplete dialog overflowed the page and had bad css. diff --git src/hg/js/hgGateway.js src/hg/js/hgGateway.js index 5e3d794..76d4f76 100644 --- src/hg/js/hgGateway.js +++ src/hg/js/hgGateway.js @@ -1,63 +1,75 @@ var newJQuery = false; // temporary #define for use while testing jQuery 1.5/jQuery UI 1.8 in dev trees $(document).ready(function() { if(document.getElementById("hgt.newJQuery") != null) { newJQuery = true; } if(newJQuery) { $('input#suggest').autocomplete({ delay: 500, minLength: 2, // XXXX necessary still? autowidth: true, source: ajaxGet(function () {return document.orgForm.db.value;}, new Object, true), + open: function(event, ui) { + var pos = $(this).offset().top + $(this).height(); + if (!isNaN(pos)) { + var maxHeight = $(window).height() - pos - 30; // take off a little more because IE needs it + var auto = $('.ui-autocomplete'); + var curHeight = $(auto).children().length * 21; + if (curHeight > maxHeight) + $(auto).css({maxHeight: maxHeight+'px',overflow:'scroll'}); + else + $(auto).css({maxHeight: 'none',overflow:'hidden'}); + } + }, select: function (event, ui) { document.mainForm.position.value = ui.item.id; makeSureSuggestTrackIsVisible(); } }); } else { $('input#suggest').autocomplete({ delay: 500, minchars: 2, autowidth: true, ajax_get: ajaxGet(function () {return document.orgForm.db.value;}, new Object, false), callback: function (obj) { document.mainForm.position.value = obj.id; makeSureSuggestTrackIsVisible(); } }); } // default the image width to current browser window width var ele = $('input[name=pix]'); if(ele.length && (!ele.val() || ele.val().length == 0)) { ele.val(calculateHgTracksWidth()); } }); function submitButtonOnClick() { // onClick handler for the "submit" button. // Handles situation where user types a gene name into the gene box and immediately hits the submit button, // expecting the browser to jump to that gene. var gene = $('#suggest').val(); var db = $('input[name=db]').val(); if(gene && gene.length > 0) { var pos = lookupGene(db, gene); if(!pos) { // turn this into a full text search. pos = gene; } $('input[name=position]').val(pos); } return true; } function makeSureSuggestTrackIsVisible() { // make sure to show knownGene/refGene track in pack mode (redmine #3484). var track = $("#suggestTrack").val(); if(track) { $("").appendTo($(document.mainForm)); } }