Thank you for reporting this bug. We will make it our priority to review this report.
[DUPE-177] List scrolling issue in 0.92
There is something seriously wrong with the list since 0.92 on iphone, but it works fine in chrome (or is it just because it's a faster hardware ?)
The scrolling is a lot slower than 0.91 which was a huge improvement over 0.9.
It doesn't feel smooth at all and seems to freeze sometimes. I have to swipe my finger multiple times before it starts scrolling again.
I don't have much more informations unfortunately. But I wanted to see if more people have this issue ?
Do you have the details on what is in your list? Some source of your issue would be helpful.
I can reproduce it with the list example unmodified running on an ipod touch 1st gen. And again, it was fine with 0.91.
Thanks for the update, also what iOS is it running?
also with my nexus one (froyo 2.2) now scrolling list is more slow then version 0.91!
List scrolling issue in version 0.92
I also have the same problem with my nexus one froyo 2.2 the scrolling list is slow as compared to the version 0.91!!!
Submit an Article
Yes I'm talking about the example from the SDK.
I just tested without the disclosure icons. It's better but still slower than 0.91, it's not smooth.
There is also a weird little effect when you touch the list for the first time, it moves a bit to the right then back to the left, and I can see part of a second header under the floating header (both labeled "A"). That doesn't bother me much, it's just a small visual artifact.
Sometimes I can also see the previous group header on top of the current group (like A over B header). It happens when u scroll down slowly and both headers are at the top of the list, scroll down some more and they overlap in the wrong order. It doesn't happen when you scroll up.
The reason that the performance significantly changed between 0.9.1 and 0.9.2 (although we didn't change much in the Scroller class itself) was that we added a lot of documentation, which increased the file size. This increased the compilation time of first time code execution, and thus the performance of the scroller. After switching out ext-touch-debug with ext-touch in the examples, everything started performing like before.
The reason Froyo didn't really suffer from this, is that they are using V8 engine, which compiles much faster, and thus the performance hit isn't that noticeable. The same applies to newer generation iPhones, which have better hardware specs and compiles faster.
For now we have updated all examples to use ext-touch instead of ext-touch-debug, and we will keep you guys posted on further discoveries and developments regarding these issues. More details on the issue are below for the technically minded.
User touches the screen for the first time
TouchEventManger fires touchstart event (compile)
Scroller executes onTouchStart (compile)
On older generation iPhones and Android 2.1, this compilation time could add up to several hundreds of milliseconds. During this time, the browser wouldn't fire any touch events, and the native behavior (scrolling the whole page) would take over. Then when you start moving, the same thing happened again.
User moves finger
TouchEventManager fires touchmove (compile)
Scroller listens for touchmove and executes onTouchMove (compile)
TouchEventManager fires scroll for first time (compile)
Scroller fires onScroll (compile)
During all this compiling, again the browser wouldn't fire any events and the native browser behavior would take over.