Hello all, Loading (startup) performance problem: -------------------------------------------------- I just had time to look at the elm_genlist performance problem again. Sometime ago, I asked the list about elm_genlist's walking through the list at startup in order to determine the list's width and height. However, the performance problem when loading a huge list of items to a genlist still persists. While it is okay on my desktop, it really freezes up my target (ARM926ejs @ 400MHz) for quite some time.
I suggest adding a new API: elm_genlist_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous) to let the genlist know about the list's nature and uses the first item's width and height as a reference for the remaining list items. 'homogeneous' also implies 'compress' mode. On my target, it loads 1000+ items fine this way without rendering the system unresponsive. genlist already does lazy-loading quite well. This will make it 'lazier' if the list items are of the same size. Scrolling performance problem: -------------------------------------------------- Also, I suggest adding another API: elm_genlist_block_count_set(Evas_Object *obj, int max) to let the programmer decides what's the optimal block size for his/her particular target. I believe this value is currently hard-coded '32'. The problem is that when the idler renders this chunk of items, it will slow down the system when the user scrolls around outside the 32-item block already rendered. I already tested my version on my target. It seems to work quite well even on a big list (1000+ items). Any thoughts? Thanks in advance for inputs. brian -- brian ------------------ Cool-Karaoke - The smallest recording studio, in your palm, open-sourced http://cool-idea.com.tw/ iMaGiNaTiOn iS mOrE iMpOrTaNt tHaN kNoWlEdGe ------------------------------------------------------------------------------ Throughout its 18-year history, RSA Conference consistently attracts the world's best and brightest in the field, creating opportunities for Conference attendees to learn about information security's most important issues through interactions with peers, luminaries and emerging and established companies. http://p.sf.net/sfu/rsaconf-dev2dev _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel