From 3ee4302e2252b3b1828a9607c44b63582a14b86c Mon Sep 17 00:00:00 2001 From: john Date: Fri, 10 Aug 2018 11:53:25 +0800 Subject: [PATCH] Roo/bootstrap/Menu.js roojs-bootstrap.js roojs-bootstrap-debug.js --- Roo/bootstrap/Menu.js | 4 +++- roojs-bootstrap-debug.js | 4 +++- roojs-bootstrap.js | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Roo/bootstrap/Menu.js b/Roo/bootstrap/Menu.js index 214b454f24..4dee71464e 100644 --- a/Roo/bootstrap/Menu.js +++ b/Roo/bootstrap/Menu.js @@ -271,9 +271,11 @@ Roo.extend(Roo.bootstrap.Menu, Roo.bootstrap.Component, { } if(_e !== false){ this.fireEvent("beforeshow", this); - xy = this.el.adjustForConstraints(xy); + // xy = this.el.adjustForConstraints(xy); } + xy = this.el.adjustForConstraints(xy); + //this.el.show(); this.hideMenuItems(); this.hidden = false; diff --git a/roojs-bootstrap-debug.js b/roojs-bootstrap-debug.js index f03cd163d6..f422a40d67 100644 --- a/roojs-bootstrap-debug.js +++ b/roojs-bootstrap-debug.js @@ -2238,9 +2238,11 @@ Roo.extend(Roo.bootstrap.Menu, Roo.bootstrap.Component, { } if(_e !== false){ this.fireEvent("beforeshow", this); - xy = this.el.adjustForConstraints(xy); + // xy = this.el.adjustForConstraints(xy); } + xy = this.el.adjustForConstraints(xy); + //this.el.show(); this.hideMenuItems(); this.hidden = false; diff --git a/roojs-bootstrap.js b/roojs-bootstrap.js index ca097f1999..c43e987978 100644 --- a/roojs-bootstrap.js +++ b/roojs-bootstrap.js @@ -86,8 +86,8 @@ this.triggerEl.on(Roo.isTouch?'touchstart':'mouseup',this.onTriggerPress,this);t this.el.on("mouseout",this.onMouseOut,this);},findTargetItem:function(e){var t=e.getTarget(".dropdown-menu-item",this.el,true);if(!t){return false;}if(t&&t.id){return this.menuitems.get(t.id);}return false;},onTouch:function(e){Roo.log("menu.onTouch");this.onClick(e); },onClick:function(e){Roo.log("menu.onClick");var t=this.findTargetItem(e);if(!t||t.isContainer){return;}Roo.log(e);Roo.log('pass click event');t.onClick(e);this.fireEvent("click",this,t,e);var A=this;if(!t.href.length||t.href=='#'){(function(){A.hide();} ).defer(100);}},onMouseOver:function(e){var t=this.findTargetItem(e);this.fireEvent("mouseover",this,e,t);},isVisible:function(){return !this.hidden;},onMouseOut:function(e){var t=this.findTargetItem(e);this.fireEvent("mouseout",this,e,t);},show:function(el,A,B){this.parentMenu=B; -if(!this.el){this.render();}this.fireEvent("beforeshow",this);this.showAt(this.el.getAlignToXY(el,A||this.defaultAlign),B,false);},showAt:function(xy,A,_e){this.parentMenu=A;if(!this.el){this.render();}if(_e!==false){this.fireEvent("beforeshow",this);xy=this.el.adjustForConstraints(xy); -}this.hideMenuItems();this.hidden=false;this.triggerEl.addClass('open');if(this.el.getWidth()+xy[0]>Roo.lib.Dom.getViewWidth()){xy[0]=xy[0]-this.el.getWidth()+this.triggerEl.getWidth();}if(this.el.getStyle('top')!='auto'&&this.el.getStyle('top').slice(-1)!="%"){this.el.setXY(xy); +if(!this.el){this.render();}this.fireEvent("beforeshow",this);this.showAt(this.el.getAlignToXY(el,A||this.defaultAlign),B,false);},showAt:function(xy,A,_e){this.parentMenu=A;if(!this.el){this.render();}if(_e!==false){this.fireEvent("beforeshow",this);}xy=this.el.adjustForConstraints(xy); +this.hideMenuItems();this.hidden=false;this.triggerEl.addClass('open');if(this.el.getWidth()+xy[0]>Roo.lib.Dom.getViewWidth()){xy[0]=xy[0]-this.el.getWidth()+this.triggerEl.getWidth();}if(this.el.getStyle('top')!='auto'&&this.el.getStyle('top').slice(-1)!="%"){this.el.setXY(xy); }this.focus();this.fireEvent("show",this);},focus:function(){return;if(!this.hidden){this.doFocus.defer(50,this);}},doFocus:function(){if(!this.hidden){this.focusEl.focus();}},hide:function(A){this.hideMenuItems();if(this.el&&this.isVisible()){this.fireEvent("beforehide",this); if(this.activeItem){this.activeItem.deactivate();this.activeItem=null;}this.triggerEl.removeClass('open');;this.hidden=true;this.fireEvent("hide",this);}if(A===true&&this.parentMenu){this.parentMenu.hide(true);}},onTriggerClick:function(e){Roo.log('trigger click'); var A=e.getTarget();Roo.log(A.nodeName.toLowerCase());if(A.nodeName.toLowerCase()==='i'){e.preventDefault();}},onTriggerPress:function(e){Roo.log('trigger press');var A=Roo.get(e.getTarget());if(A.findParent('.dropdown-menu')||A.findParent('.treeview-menu')){Roo.log('is treeview or dropdown?'); -- 2.39.2