X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/6a7e4474cba9d8be4b2ec445e10f1691f7277c50..0494b8d9b9bb03ab6c22b34dae81261e3cd7e3e6:/src/widgets/TabPanel.js diff --git a/src/widgets/TabPanel.js b/src/widgets/TabPanel.js index c9637702..712f65f9 100644 --- a/src/widgets/TabPanel.js +++ b/src/widgets/TabPanel.js @@ -1,8 +1,8 @@ /*! - * Ext JS Library 3.2.0 - * Copyright(c) 2006-2010 Ext JS, Inc. - * licensing@extjs.com - * http://www.extjs.com/license + * Ext JS Library 3.3.1 + * Copyright(c) 2006-2010 Sencha Inc. + * licensing@sencha.com + * http://www.sencha.com/license */ /** * @class Ext.TabPanel @@ -588,9 +588,6 @@ new Ext.TabPanel({ if(this.rendered){ var items = this.items; this.initTab(c, items.indexOf(c)); - if(items.getCount() == 1 && !this.collapsed){ - this.syncSize(); - } this.delegateUpdates(); } }, @@ -743,13 +740,14 @@ new Ext.TabPanel({ // private delegateUpdates : function(){ + var rendered = this.rendered; if(this.suspendUpdates){ return; } - if(this.resizeTabs && this.rendered){ + if(this.resizeTabs && rendered){ this.autoSizeTabs(); } - if(this.enableTabScroll && this.rendered){ + if(this.enableTabScroll && rendered){ this.autoScrollTabs(); } }, @@ -817,13 +815,15 @@ new Ext.TabPanel({ Ext.fly(oldEl).removeClass('x-tab-strip-active'); } } + this.activeTab = item; if(item){ var el = this.getTabEl(item); Ext.fly(el).addClass('x-tab-strip-active'); - this.activeTab = item; this.stack.add(item); this.layout.setActiveItem(item); + // Need to do this here, since setting the active tab slightly changes the size + this.delegateUpdates(); if(this.scrolling){ this.scrollToTab(item, this.animScroll); } @@ -863,10 +863,11 @@ new Ext.TabPanel({ pos = this.getScrollPos(), l = this.edge.getOffsetsTo(this.stripWrap)[0] + pos; - if(!this.enableTabScroll || count < 1 || cw < 20){ // 20 to prevent display:none issues + if(!this.enableTabScroll || cw < 20){ // 20 to prevent display:none issues return; } - if(l <= tw){ + if(count == 0 || l <= tw){ + // ensure the width is set if there's no tabs wd.scrollLeft = 0; wrap.setWidth(tw); if(this.scrolling){