stever
8 May 2009, 4:05 PM
Try hovering over tabs in this example:
http://extjs.com/deploy/ext-3.0-rc1.1/examples/tabs/tabs.html
I made a quick fix in the tab panel class but later came upon other similar bugs signaling a deeper problem. In these cases the hover class was being added on random elements!
addClassOnOver() and addClassOnFocus() really mean to have the pattern of addClassOnClick(), saving the dom element via closure, not a reference to this, which in the case of the Fly element points to different things at different times.
Also, in the same file, repaint() has the dom via closure, yet forces a creation of Element even if the caller is using a flyweight. It doesn't mark it as _internal either. That part should read Ext.fly(dom,INTERNAL).removeClass(...).
Hmm... I should get a discount...
http://extjs.com/deploy/ext-3.0-rc1.1/examples/tabs/tabs.html
I made a quick fix in the tab panel class but later came upon other similar bugs signaling a deeper problem. In these cases the hover class was being added on random elements!
addClassOnOver() and addClassOnFocus() really mean to have the pattern of addClassOnClick(), saving the dom element via closure, not a reference to this, which in the case of the Fly element points to different things at different times.
Also, in the same file, repaint() has the dom via closure, yet forces a creation of Element even if the caller is using a flyweight. It doesn't mark it as _internal either. That part should read Ext.fly(dom,INTERNAL).removeClass(...).
Hmm... I should get a discount...