From 6cbfedb89247b1fd9db5a3f95e55f9784db497cb Mon Sep 17 00:00:00 2001 From: leon Date: Tue, 7 Nov 2023 13:57:34 +0800 Subject: [PATCH] support listClass for bootstrap combobox --- Roo/bootstrap/form/ComboBox.js | 4 +++- roojs-bootstrap-debug.js | 4 +++- roojs-bootstrap.js | 6 +++--- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Roo/bootstrap/form/ComboBox.js b/Roo/bootstrap/form/ComboBox.js index 7b9b4629d8..97a62cbbd2 100644 --- a/Roo/bootstrap/form/ComboBox.js +++ b/Roo/bootstrap/form/ComboBox.js @@ -195,7 +195,7 @@ Roo.extend(Roo.bootstrap.form.ComboBox, Roo.bootstrap.form.TriggerField, { /** * @cfg {Number} maxHeight The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300) */ - maxHeight: 300, + // maxHeight: 300, // not used (change maxHeight in CSS. target the list using listClass) /** * @cfg {String} triggerAction The action to execute when the trigger field is activated. Use 'all' to run the * query specified by the allQuery config option (defaults to 'query') @@ -720,6 +720,8 @@ Roo.extend(Roo.bootstrap.form.ComboBox, Roo.bootstrap.form.TriggerField, { //this.list = new Roo.Layer({ // shadow: this.shadow, cls: [cls, this.listClass].join(' '), constrain:false //}); + + this.list.addClass(this.listClass); var _this = this; diff --git a/roojs-bootstrap-debug.js b/roojs-bootstrap-debug.js index 3829e7e821..117b541265 100644 --- a/roojs-bootstrap-debug.js +++ b/roojs-bootstrap-debug.js @@ -17075,7 +17075,7 @@ Roo.extend(Roo.bootstrap.form.ComboBox, Roo.bootstrap.form.TriggerField, { /** * @cfg {Number} maxHeight The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300) */ - maxHeight: 300, + // maxHeight: 300, // not used (change maxHeight in CSS. target the list using listClass) /** * @cfg {String} triggerAction The action to execute when the trigger field is activated. Use 'all' to run the * query specified by the allQuery config option (defaults to 'query') @@ -17600,6 +17600,8 @@ Roo.extend(Roo.bootstrap.form.ComboBox, Roo.bootstrap.form.TriggerField, { //this.list = new Roo.Layer({ // shadow: this.shadow, cls: [cls, this.listClass].join(' '), constrain:false //}); + + this.list.addClass(this.listClass); var _this = this; diff --git a/roojs-bootstrap.js b/roojs-bootstrap.js index e7340c5f8d..1f6c5fd9a0 100644 --- a/roojs-bootstrap.js +++ b/roojs-bootstrap.js @@ -713,7 +713,7 @@ var D=[];var E=o;for(var i=0;i0){L.cls+=' col-sm-'+this.l }this._initEventsCalled=true;if(!this.store){throw "can not find store for combo";}this.indicator=this.indicatorEl();this.store=Roo.factory(this.store,Roo.data);this.store.parent=this;if(Roo.XComponent.build_from_html){var e=this.el.dom,k=0;while(e){e=e.previousSibling; ++k;}this.el.remove();this.el=false;this.rendered=false;this.render(this.parent().getChildContainer(true),k);}if(Roo.isIOS&&this.useNativeIOS){this.initIOSView();return;}if(Roo.isTouch&&this.mobileTouchView){this.initTouchView();return;}if(this.tickable){this.initTickableEvents(); return;}Roo.bootstrap.form.ComboBox.superclass.initEvents.call(this);if(this.hiddenName){this.hiddenField=this.el.select('input.form-hidden-field',true).first();this.hiddenField.dom.value=this.hiddenValue!==undefined?this.hiddenValue:this.value!==undefined?this.value:''; -this.el.dom.removeAttribute('name');this.hiddenField.dom.setAttribute('name',this.hiddenName);}var A='x-combo-list';var B=this;(function(){var lw=B.listWidth||Math.max(B.inputEl().getWidth(),B.minListWidth);B.list.setWidth(lw);}).defer(100);this.list.on('mouseover',this.onViewOver,this); -this.list.on('mousemove',this.onViewMove,this);this.list.on('scroll',this.onViewScroll,this);if(!this.tpl){this.tpl=Roo.bootstrap.version==4?'{'+this.displayField+'}':'
  • {'+this.displayField+'}
  • '; +this.el.dom.removeAttribute('name');this.hiddenField.dom.setAttribute('name',this.hiddenName);}var A='x-combo-list';this.list.addClass(this.listClass);var B=this;(function(){var lw=B.listWidth||Math.max(B.inputEl().getWidth(),B.minListWidth);B.list.setWidth(lw); +}).defer(100);this.list.on('mouseover',this.onViewOver,this);this.list.on('mousemove',this.onViewMove,this);this.list.on('scroll',this.onViewScroll,this);if(!this.tpl){this.tpl=Roo.bootstrap.version==4?'{'+this.displayField+'}':'
  • {'+this.displayField+'}
  • '; }this.view=new Roo.View(this.list,this.tpl,{singleSelect:true,store:this.store,selectedClass:this.selectedClass});this.view.on('click',this.onViewClick,this);this.store.on('beforeload',this.onBeforeLoad,this);this.store.on('load',this.onLoad,this);this.store.on('loadexception',this.onLoadException,this); if(!this.editable){this.editable=true;this.setEditable(false);}this.keyNav=new Roo.KeyNav(this.inputEl(),{"up":function(e){this.inKeyMode=true;this.selectPrev();},"down":function(e){if(!this.isExpanded()){this.onTriggerClick();}else{this.inKeyMode=true;this.selectNext(); }},"enter":function(e){this.collapse();if(this.fireEvent("specialkey",this,e)){this.onViewClick(false);}return true;},"esc":function(e){this.collapse();},"tab":function(e){this.collapse();if(this.fireEvent("specialkey",this,e)){this.onViewClick(false);}return true; -- 2.39.2