When showing a list with over 100 items Material uses a 'view recycler'. This only adds the displayed items to the internal HTML document - as the list is scrolled items are removed and new ones added. This way the list stays responsive even if it has thousands of items. Early on in Material's development I noticed this could still be slow-ish, so I trimmed the code within this to as little as possible. Because of this it does not really handle text items - which you can see in your example as the font weight is not lighter for this "text" item as it is in the list with less than 100 items. Also, this recycler is faster if each list item has the same height.
Now I could change this limit to 150 - but then you'd have the same issue with 151 items. I could add text item handling, but this would only be for 2 lines of text, as each item has to be the same height.
Default skin does not suffer from this as it splits the list into pages, and therefore is not really one big list.
However, what is the point of showing an item in the list that cannot be streamed?
[Edit] I've updated Material (git/master) to better handle text items in lists of over 100 items. Lighter text is used, but still only a max of 2 lines are shown.
Now I could change this limit to 150 - but then you'd have the same issue with 151 items. I could add text item handling, but this would only be for 2 lines of text, as each item has to be the same height.
Default skin does not suffer from this as it splits the list into pages, and therefore is not really one big list.
However, what is the point of showing an item in the list that cannot be streamed?
[Edit] I've updated Material (git/master) to better handle text items in lists of over 100 items. Lighter text is used, but still only a max of 2 lines are shown.
Comment