1/*! 2 * Copyright (c) 2009 - 2013 Erik van den Berg (http://www.tweego.nl/jeegoocontext) 3 * Licensed under MIT (http://www.opensource.org/licenses/mit-license.php) license. 4 * Consider linking back to author's homepage: http://www.tweego.nl 5 * 6 * Contributors: 7 * Denis Evteev 8 * Roman Imankulov (www.netangels.ru) 9 * Julian Verdurmen 10 * 11 * Version: 2.0.0 12 * Requires jQuery 1.4.2+ 13 */ 14(function(e){var h;var b;var a=function(i,j){return{width:i-e(window).width()-e(window).scrollLeft(),height:j-e(window).height()-e(window).scrollTop()}};var c=function(l){if(b[h.activeId].currentHover){var j=l?b[h.activeId].currentHover.nextAll(":not(."+b[h.activeId].separatorClass+"):visible:first"):b[h.activeId].currentHover.prevAll(":not(."+b[h.activeId].separatorClass+"):visible:first");if(j.length==0){j=b[h.activeId].currentHover.parent().find("> li:visible");j=(l?e(j[0]):e(j[j.length-1]))}j.mouseover()}else{var k=e("#"+h.activeId+", #"+h.activeId+" ul").filter(function(){return(e(this).is(":visible")&&e(this).parents(":hidden").length==0)});if(k.length>0){var i=e(k[k.length-1]).find("> li:visible");e(i[(l?0:(i.length-1))]).mouseover()}}};var f=function(){for(cm in b){e(b[cm].allContext).removeClass(h.activeClass)}};var g=function(){if(h.activeId){e("#"+h.activeId).add("#"+h.activeId+" ul").hide()}clearInterval(h.keyUpDown);h.keyUpDownStop=false;if(b[h.activeId]){b[h.activeId].currentHover=null}h.activeId=null;e(document).unbind(".jeegoocontext");e(window).unbind("resize.jeegoocontext")};var d=function(i){if(h.activeId&&b[h.activeId].onHide){if(b[h.activeId].onHide.apply(e("#"+h.activeId),[i,b[h.activeId].context])==false){return false}}f();g()};e.fn.jeegoocontext=function(m,i){if(!h){h={}}if(!b){b={}}if(i&&i.menuClass){h.menuClass=i.menuClass}if(!h.menuClass){h.menuClass="jeegoocontext"}if(i&&i.activeClass){h.activeClass=i.activeClass}if(!h.activeClass){h.activeClass="active"}b[m]=e.extend({hoverClass:"hover",submenuClass:"submenu",separatorClass:"separator",operaEvent:"ctrl+click",wrapper:"body",fadeIn:200,delay:300,keyDelay:100,widthOverflowOffset:0,heightOverflowOffset:0,submenuLeftOffset:0,submenuTopOffset:0,autoAddSubmenuArrows:true,startLeftOffset:0,startTopOffset:0,keyboard:true},i||{});b[m].allContext=this.selector;e("#"+m).delegate("li","mouseover.jeegoocontext",function(s){var t=b[m].currentHover=e(this);clearTimeout(b[m].show);clearTimeout(b[m].hide);e("#"+m).find("*").removeClass(b[m].hoverClass);var n=t.parents("li");t.add(t.find("> *")).add(n).add(n.find("> *")).addClass(b[m].hoverClass);var q=true;if(b[m].onHover){if(b[m].onHover.apply(this,[s,b[m].context])==false){q=false}}if(!b[m].proceed){b[m].show=setTimeout(function(){b[m].proceed=true;t.mouseover()},b[m].delay);return false}b[m].proceed=false;t.parent().find("ul").not(t.find("> ul")).hide();if(!q){s.preventDefault();return false}var r=t.find("> ul");if(r.length!=0){var p=t.offset();var o=a((p.left+t.parent().width()+b[m].submenuLeftOffset+r.width()+b[m].widthOverflowOffset),(p.top+b[m].submenuTopOffset+r.height()+b[m].heightOverflowOffset));var v=r.parent().parent().width();var u=p.top-t.parent().offset().top;r.css({left:(o.width>0&&!b[m].ignoreWidthOverflow)?(-v-b[m].submenuLeftOffset+"px"):(v+b[m].submenuLeftOffset+"px"),top:(o.height>0&&!b[m].ignoreHeightOverflow)?(u-o.height+b[m].submenuTopOffset)+"px":u+b[m].submenuTopOffset+"px"});r.fadeIn(b[m].fadeIn)}s.stopPropagation()}).delegate("li","click.jeegoocontext",function(n){if(b[m].onSelect){if(b[m].onSelect.apply(this,[n,b[m].context])==false){return false}}g();e(b[m].context).removeClass(h.activeClass);n.stopPropagation()});var l=document.createElement("div");l.setAttribute("oncontextmenu","");var j=b[m].event;if(!j){j=(typeof l.oncontextmenu!="undefined")?"contextmenu.jeegoocontext":b[m].operaEvent+".jeegoocontext"}else{j+=".jeegoocontext"}if(j.indexOf("+")!=-1){var k=j.split("+",2);b[m].modifier=k[0]+"Key";j=k[1]}return e(b[m].wrapper).delegate(b[m].allContext,j,function(r){if(typeof b[m].modifier=="string"&&!r[b[m].modifier]){return}b[m].context=this;var q=e("#"+m);var p,o;if(b[m].openBelowContext){var n=e(this).offset();p=n.left;o=n.top+e(this).outerHeight()}else{p=r.pageX;o=r.pageY}p+=b[m].startLeftOffset;o+=b[m].startTopOffset;var s=a((p+q.width()+b[m].widthOverflowOffset),(o+q.height()+b[m].heightOverflowOffset));if(!b[m].ignoreWidthOverflow&&s.width>0){p-=s.width}if(!b[m].openBelowContext&&!b[m].ignoreHeightOverflow&&s.height>0){o-=s.height}if(b[m].onShow){if(b[m].onShow.apply(q,[r,b[m].context,p,o])==false){return false}}
14g();h.activeId=m;e("#"+h.activeId).add("#"+h.activeId+" ul").hide();f();e(b[m].context).addClass(h.activeClass);q.find("li, li > *").removeClass(b[m].hoverClass);if(b[m].autoAddSubmenuArrows){q.find("li:has(ul)").not(":has(span."+b[m].submenuClass+")").prepend('<span class="'+b[m].submenuClass+'"></span>');q.find("li").not(":has(ul)").find("> span."+b[m].submenuClass).remove()}q.css({left:p+"px",top:o+"px"}).fadeIn(b[m].fadeIn);if(b[m].openBelowContext){e(window).bind("resize.jeegoocontext",function(){e("#"+m).css("left",e(b[m].context).offset().left+b[m].startLeftOffset+"px")})}e(document).bind("mouseover.jeegoocontext",function(t){if(e(t.relatedTarget).parents("#"+m).length>0){clearTimeout(b[m].show);var u=e(t.relatedTarget).parent().find("li");u.add(u.find("> *")).removeClass(b[m].hoverClass);b[h.activeId].currentHover=null;b[m].hide=setTimeout(function(){u.find("ul").hide();if(b[m].autoHide){d(t)}},b[m].delay)}}).bind("click.jeegoocontext",d);if(b[m].keyboard){e(document).bind("keydown.jeegoocontext",function(v){switch(v.which){case 38:if(h.keyUpDownStop){return false}c();h.keyUpDown=setInterval(c,b[h.activeId].keyDelay);h.keyUpDownStop=true;return false;case 39:if(b[h.activeId].currentHover){b[h.activeId].currentHover.find("ul:visible:first li:visible:first").mouseover()}else{var u=e("#"+h.activeId+", #"+h.activeId+" ul:visible");if(u.length>0){e(u[u.length-1]).find(":visible:first").mouseover()}}return false;case 40:if(h.keyUpDownStop){return false}c(true);h.keyUpDown=setInterval(function(){c(true)},b[h.activeId].keyDelay);h.keyUpDownStop=true;return false;case 37:if(b[h.activeId].currentHover){e(b[h.activeId].currentHover.parents("li")[0]).mouseover()}else{var t=e("#"+h.activeId+" li."+b[h.activeId].hoverClass);if(t.length>0){e(t[t.length-1]).mouseover()}}return false;case 13:if(b[h.activeId].currentHover){b[h.activeId].currentHover.click()}else{d(v)}break;case 27:d(v);break;default:break}}).bind("keyup.jeegoocontext",function(t){clearInterval(h.keyUpDown);h.keyUpDownStop=false})}return false})}})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.