Merge lp:~aacid/unity8/asyncLoaderForNavigationListViewDelegate into lp:unity8
Status: | Merged |
---|---|
Approved by: | Josh Arenson |
Approved revision: | 2496 |
Merged at revision: | 2560 |
Proposed branch: | lp:~aacid/unity8/asyncLoaderForNavigationListViewDelegate |
Merge into: | lp:unity8 |
Diff against target: |
117 lines (+52/-49) 1 file modified
qml/Dash/DashNavigationList.qml (+52/-49) |
To merge this branch: | bzr merge lp:~aacid/unity8/asyncLoaderForNavigationListViewDelegate |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Unity8 CI Bot | continuous-integration | Approve | |
Josh Arenson | Approve | ||
Review via email: mp+298507@code.launchpad.net |
Commit message
Make the delegate of DashNavigationList an async Loader
This list may be created while horizontally swiping through scopes
which means it may create all the visible delegates in a sync manner
while the swipe animation is happening and be jumpy
Previously the polish step of the list was taking around 230ms to in the amazon scope
now it's around 7ms without any noticeable delay in other places of the code
Description of the change
How to reproduce:
* Have the Amazon scope at 4th position
* Have a dummy as possible scope in 3rd position (i used 8coupon that is empty for me)
* Without the patch
* restart unity8-dash QSG_RENDER_TIMING=1
* tailf ~/.cache/
* Leave it finish outputting log
* Horizontally swipe to the second scope
* Around the middle of the new log lines you'll find a line with a high polish time, for me it was something like
qt.scenegraph.
Now repeat with the patch, the new debug line was
qt.scenegraph.
You'll see the polish time has decreased considerably (it's still high but because other reasons, mainly related to CardTool being a bit slow)
* Are there any related MPs required for this MP to build/function as expected?
No
* Did you perform an exploratory manual test run of your code change and any related functionality?
Yes
* If you changed the packaging (debian), did you subscribe the ubuntu-unity team to this MP?
N/A
* If you changed the UI, has there been a design review?
N/A
FAILED: Continuous integration, rev:2495 /unity8- jenkins. ubuntu. com/job/ lp-unity8- ci/1622/ /unity8- jenkins. ubuntu. com/job/ build/2162 /unity8- jenkins. ubuntu. com/job/ test-0- autopkgtest/ label=amd64, release= vivid+overlay, testname= qmluitests. sh/1144 /unity8- jenkins. ubuntu. com/job/ test-0- autopkgtest/ label=amd64, release= xenial+ overlay, testname= qmluitests. sh/1144 /unity8- jenkins. ubuntu. com/job/ test-0- autopkgtest/ label=amd64, release= yakkety, testname= qmluitests. sh/1144 /unity8- jenkins. ubuntu. com/job/ build-0- fetch/2190 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= vivid+overlay/ 2097 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= xenial+ overlay/ 2097 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= yakkety/ 2097 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= vivid+overlay/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= vivid+overlay/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= yakkety/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= yakkety/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= vivid+overlay/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= vivid+overlay/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= yakkety/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= yakkety/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= vivid+overlay/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= vivid+overlay/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 2088/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= yakkety/ 2088 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= yakkety/ 2088/artifact/ output/ *zip*/output. zip
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
UNSTABLE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild: /unity8- jenkins. ubuntu. com/job/ lp-unity8- ci/1622/ rebuild
https:/