I am going to head down the obvious path here .. is there a reason for this?
You are waiting on 450+ (assuming 50 are visible) rows to render that are not visible to the user each time you clicking the tab.
I didn't verify if the Ext JS 4.1 implementation really re-render all the rows in each switch of tab. It's likely the implementation could be different so that it does less rendering and layout as possible. Why not having the new tab be a card on top of the old one without doing much to the hidden card so that the hidden card can come back on top without much work?
Do we agree there is something to improve with Ext JS handling of this use case ?
Answers to your vague question:
- Lazy rendering is not supported by Ext JS 4.1 when we want to do client side sorting/filtering
- Scrolling is way faster without lazy rendering, even if lazy rendering do not involve server call
- Ext JS is used by enterprise application, and enterprise application deal with data, lot of it
- Users hate paging
- I don't control users requirements, they want to see 1000 rows, I negotiated 500.