View Full Version : [FIXED][3.0rc1] show() with an Element hides the buttons
stever
27 Apr 2009, 7:04 PM
Try this on both IE7 (or IE8 in compatibility mode) and Firefox:
new Ext.Window({title:'test', height:200,width:300, items:{height:40},buttons:[{text:'t1'},{text:'t2'}]}).show(Ext.getBody())
In IE7, the buttons do not get displayed.
stever
1 May 2009, 10:56 AM
Seems that the buttons are also hidden in Safari (and Chrome?).
Animal
2 May 2009, 11:51 PM
This must be fixed in SVN because I can't reproduce it in any examples pages in my development directory.
I think I might have committed a fix for this.
aconran
4 May 2009, 10:31 AM
Looks resolved. Steve R, could you please confirm?
stever
4 May 2009, 6:43 PM
Not fixed. I just tried with the SVN of this minute, opened up IE8, hit compatibility mode button, and added the example into my local build and got this again:
new Ext.Window({title:'test', height:200,width:300, items:{height:40},buttons:[{text:'t1'},{text:'t2'}]}).show(Ext.getBody())
Confirmed, it only happens with animations. Try the following:
Ext.override(Ext.Window, {
afterShow : function(isAnim){
this.proxy.hide();
this.el.setStyle('display', 'block');
this.el.show();
if(this.maximized){
this.fitContainer();
}
if(Ext.isMac && Ext.isGecko){ // work around stupid FF 2.0/Mac scroll bar bug
this.cascade(this.setAutoScroll);
}
if(this.monitorResize || this.modal || this.constrain || this.constrainHeader){
Ext.EventManager.onWindowResize(this.onWindowResize, this);
}
this.doConstrain();
if(this.layout){
this.doLayout();
}
if(this.keyMap){
this.keyMap.enable();
}
this.toFront();
this.updateHandles();
if(isAnim && (Ext.isIE || Ext.isWebKit)){
var sz = this.getSize();
this.onResize(sz.width, sz.height);
}
this.fireEvent("show", this);
},
// private
animShow : function(){
this.proxy.show();
this.proxy.setBox(this.animateTarget.getBox());
this.proxy.setOpacity(0);
var b = this.getBox(false);
b.callback = this.afterShow.createDelegate(this, [true], false);
b.scope = this;
b.duration = .25;
b.easing = 'easeNone';
b.opacity = .5;
b.block = true;
this.el.setStyle('display', 'none');
this.proxy.shift(b);
}
});
stever
5 May 2009, 4:52 PM
The fix that is in SVN works great. Thanks!
Powered by vBulletin® Version 4.1.5 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.