Hi,

are there any news on this subject?
If not, how many objects/structures should be modified to accomplish the task? I mean, is this a modification only on Mx or should Clutter also be included in the changes [i.e. ClutterModel etc.]?

Thanks and Regards,
Massimo

On 06/16/2011 12:28 AM, Lionel Landwerlin wrote:
Hi Massimo,

We had this discussion recently (off the mailing list), regarding big
lists of items in media explorer
(https://github.com/media-explorer/media-explorer ).

As a short term solution, the Mx toolkit has recently integrated an
ActorManager :

https://github.com/clutter-project/mx/blob/master/mx/mx-actor-manager.h

Here are 2 examples of usage of MxActorManager :

https://github.com/media-explorer/media-explorer/blob/master/mex/mex-content-proxy.c#L184

https://github.com/media-explorer/media-explorer/blob/master/mex/mex-explorer.c#L429

The idea is to prevent to block the main loop (and so the whole UI) when
adding 1000+ items, by using an idle function.

Of course this is just a workaround, and the right solution would be to
not create more actors than what you see on the screen (or a factor of
that number), and remap actors that just disappeared to a new item
further up/down the list while you're scrolling.

The downside of this solution is that it means rewriting quite a few
containers to handle that new way dealing with huge list.

Regards,

--
Lionel

On Wed, 2011-06-15 at 23:36 +0200, Massimo Cora' wrote:
Hi,

let's say that I have 1000+ items (ClutterActors) to insert in a
vertical MxListView with kinetic scrolling. Right now they're added all
at once, which isn't the best option for my case because it slows done
the painting of the whole widget.
I was wondering if using an async version of model_changed_cb ()  [on
mx-list-view.c] could speed up the things. In particular I'd like to put
async the call to clutter_container_add_actor ().
Before adventuring in complex things I'd like to ask what you think
about this.
BTW I already tried the way to add chunks via on_idle functions, but
they weren't fluid at all, blocking the whole user interface for some
moments.

what are you suggestions?

Thanks and Regards,
Massimo

_______________________________________________
clutter-app-devel-list mailing list
clutter-app-devel-list@clutter-project.org
http://lists.clutter-project.org/listinfo/clutter-app-devel-list


_______________________________________________
clutter-app-devel-list mailing list
clutter-app-devel-list@clutter-project.org
http://lists.clutter-project.org/listinfo/clutter-app-devel-list

_______________________________________________
clutter-app-devel-list mailing list
clutter-app-devel-list@clutter-project.org
http://lists.clutter-project.org/listinfo/clutter-app-devel-list

Reply via email to