The data which I have in the tree store, has got a rootnode with 3 child nodes and those nodes internally have 2, 3, 2 child nodes respectively. None of the nodes in the entire tree is expaned by default - meaning, I havne't used expanded: true in the store for nodes.
And also I have one controller where I have bound the events for this view as below:
So as soon as the store is loaded I expand the level1 nodes, and I bind event 'afteritemexpand' which triggers for all the nodes respectively as soon as the nodes are expanded, which iterates through the child nodes for the expanded node and does some stuff (not including it here as it might be irrelevant).
The setup which I have is working fine in Chrome and IE (v 9).
Strange thing happening here is, in Firefox, the afteritemexpand does not fire at all. So I believe, the code which is responsible to fire the 'afteritemexpand' event is not getting executed, as in ExtJS 4.2.1 src\tree\View.js the control return in the 'onExpand' method in one if condition, where comment says, 'The item is not visible yet'. But the lines of code are executed properly in Chrome and everything works as expected.
I tried to put some console logs in src\tree\View.js and realized that the afteritemexpand event fires after viewready and boxready in chrome, whilst in firefox nothing happens, because the control returned as I said above and didn't fire the events. And also in firefox, I got logs from View.js before I got the logs for the viewready and boxready.
And also when I try to get root node and its children (using getRootNode().childNodes) in viewready event, in firefox, I receive all the nodes in an array, whilst in chrome it returns an empty array.
I tried to reproduce the issue in a smaller workspace which could be posted here, but unfortunately I am not able to reproduce it.
I am not sure why this is happening, if not complete solution, any kind of pointer as in where shall I look for the problem, would be appreciated very well