From e1cf723dee1b5b0b942267f5e9cdc80be3f173de Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 28 Feb 2024 14:11:42 +0800 Subject: [PATCH] bugfix --- bricks/bricks.js | 2 +- bricks/layout.js | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/bricks/bricks.js b/bricks/bricks.js index cb6c761..97b9e71 100755 --- a/bricks/bricks.js +++ b/bricks/bricks.js @@ -90,8 +90,8 @@ bricks.widgetBuild = async function(desc, widget){ console.log('widgetBuild():',desc.widgettype, 'not registered', bricks.Factory.widgets_kw); return null; } - desc.options.baseURI = base_url; var options = desc.options || {}; + options.baseURI = base_url; let w = new klass(options); if (desc.id){ w.set_id(desc.id); diff --git a/bricks/layout.js b/bricks/layout.js index 252f36a..205a5c4 100755 --- a/bricks/layout.js +++ b/bricks/layout.js @@ -7,17 +7,16 @@ bricks.Layout = class extends bricks.JsWidget { } add_widget(w, index){ - if (! index || index>=this.children.length){ + if (index >=0 && index < this.children.length){ + var pos_w = this.children[index]; + this.dom_element.insertBefore(w.dom_element, pos_w.dom_element); + this.children.insert(index+1, w); + } else { // append child at end w.parent = this; this.children.push(w); this.dom_element.appendChild(w.dom_element); - return } - // insert to where index point out - var pos_w = this.children[index]; - this.dom_element.insertBefore(w.dom_element, pos_w.dom_element); - this.children.insert(index+1, w); w.dispatch('on_parent', this); } remove_widgets_at_begin(cnt){