In my application the number of different frames/screens is rapidly growing. I noticed that if I made the frame switch so that each time the frame was removed it would destroy the screen and recreate it next time it was shown, the speed at which the screen was displayed could have been a bit better (not that it was slow even with that technique). So I replaced it so that the screen is kept in memory and the screen is just displayed according to which frame we are viewing. Everything works just fine and now the UI is noticeably faster. But one thing that I noticed was that even though the screen is not currently displayed, it still gets the updates from the data provider.. Is this by design ? Wouldn't it be more resource effective to seize fetching the data from the provider while the screen is not being displayed ? And also, should widget.isVisible() really return true even though the screen it is in is not currently visible ? I was trying to make a modification to the data provider where it only dispatches the update events when widget.isVisible() == true, but it seems that it is always true, unless I explicitly set it to false..

