mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
2 lines
1.7 KiB
JavaScript
2 lines
1.7 KiB
JavaScript
$.ui.plugin.add("draggable","scrollPanel",{drag:function(a,b){var c=$(this).data("draggable");clearTimeout(c.timeout);var d=b.options,e=c.element,f=d.panel,g=f.position(),h=f.width(),i=f.height();if(viewport=f.parent(),viewport_w=viewport.width(),viewport_h=viewport.height(),element_w=e.width(),element_h=e.height(),moved=!1,close_dist=5,nudge=23,p_min_x=-(h-viewport_w),p_min_y=-(i-viewport_h),p_max_x=0,p_max_y=0,min_vis_x=-g.left,max_vis_x=min_vis_x+viewport_w,min_vis_y=-g.top,max_vis_y=min_vis_y+viewport_h,mouse_x=b.position.left+c.offset.click.left,mouse_y=b.position.top+c.offset.click.top,g.left<p_max_x&&mouse_x-close_dist<min_vis_x){var j=Math.min(nudge,p_max_x-g.left);f.css("left",g.left+j),moved=!0,c.offset.parent.left+=j,b.position.left-=j}if(!moved&&g.left>p_min_x&&mouse_x+close_dist>max_vis_x){var j=Math.min(nudge,g.left-p_min_x);f.css("left",g.left-j),moved=!0,c.offset.parent.left-=j,b.position.left+=j}if(!moved&&g.top<p_max_y&&mouse_y-close_dist<min_vis_y){var j=Math.min(nudge,p_max_y-g.top);f.css("top",g.top+j);var k=f.position().top-g.top;c.offset.parent.top+=k,b.position.top-=k,moved=!0}if(!moved&&g.top>p_min_y&&mouse_y+close_dist>max_vis_y){var j=Math.min(nudge,g.top-p_min_x);f.css("top",g.top-j+"px");var k=g.top-f.position().top;c.offset.parent.top-=k,b.position.top+=k,moved=!0}b.position.left=Math.max(b.position.left,0),b.position.top=Math.max(b.position.top,0),b.position.left=Math.min(b.position.left,h-element_w),b.position.top=Math.min(b.position.top,i-element_h),moved&&$.ui.ddmanager.prepareOffsets(c,a),moved&&(c.old_e=a,c.timeout=setTimeout(function(){c.mouseMove(a)},50))},stop:function(){var a=$(this).data("draggable");clearTimeout(a.timeout)}});
|
|
//# sourceMappingURL=../maps/galaxy.ui.scrollPanel.js.map
|