We profiled this with Florian, and it ends up that Repeater is no longer
creating the bunch of components and then renders, but it creates each
delegate asynchronously after which it renders each of them separately.
So instead of a 1000 block create then render we have 1000 create +
render, and sniffed rendering between creates slows down the things.
This will always happen when page is loaded asynchronously and the
loaded page has a Repeater, until upstream does something with the
Repeater to load faster.

Using ListView with a cache to fit the whole model content behaves
differently, at least the visible items are created in a block
synchronously then rendered, and the rest of the invisible ones are
created asynchronously afterwards. So this may be a better approach for
use cases we have in the attached example.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to ubuntu-ui-toolkit in
Ubuntu.
https://bugs.launchpad.net/bugs/1510201

Title:
  AdaptativeLayout take longer to show a page

Status in Canonical System Image:
  Confirmed
Status in ubuntu-ui-toolkit package in Ubuntu:
  New

Bug description:
  Device: krillin
  Image: Ubuntu 15.04 (r153)

  
  I created a small/simple example with Pages using the new AdaptativeLayout.

  On this example the second page takes about 2.6 secs to show the page.
  While it only took 1.3 secs (Still a long time) when using PageStack.

  
  OBS:  You can easily change the example to use PageStack just changing the 
commented lines.

To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-devices-system-image/+bug/1510201/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to