Merge lp://staging/~fboucault/music-app/startup_time into lp://staging/music-app
Proposed by
Florian Boucault
Status: | Merged |
---|---|
Approved by: | Andrew Hayzen |
Approved revision: | 1020 |
Merged at revision: | 1019 |
Proposed branch: | lp://staging/~fboucault/music-app/startup_time |
Merge into: | lp://staging/music-app |
Diff against target: |
481 lines (+81/-76) 17 files modified
app/components/CoverGrid.qml (+5/-1) app/components/Delegates/MusicListItem.qml (+1/-1) app/components/ListItemReorderComponent.qml (+1/-0) app/components/MusicToolbar.qml (+2/-0) app/components/NowPlayingToolbar.qml (+5/-0) app/components/Walkthrough/Slide1.qml (+1/-0) app/components/Walkthrough/Slide2.qml (+1/-0) app/components/Walkthrough/Slide3.qml (+1/-0) app/components/Walkthrough/Walkthrough.qml (+2/-0) app/music-app.qml (+51/-22) app/ui/Albums.qml (+0/-10) app/ui/Artists.qml (+0/-10) app/ui/Genres.qml (+0/-10) app/ui/LibraryEmptyState.qml (+3/-0) app/ui/Playlists.qml (+0/-10) app/ui/Recent.qml (+0/-10) tests/autopilot/music_app/__init__.py (+8/-2) |
To merge this branch: | bzr merge lp://staging/~fboucault/music-app/startup_time |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Jenkins Bot | continuous-integration | Approve | |
Andrew Hayzen | Approve | ||
Review via email:
|
Commit message
Improve startup time (by around 900ms on BQ E4.5):
- load Icons asynchronously.
- load Images asynchronously.
- load Tabs on demand.
Description of the change
Improve startup time (by around 900ms on BQ E4.5):
- load Icons asynchronously.
- load Images asynchronously.
- load Tabs on demand.
To post a comment you must log in.
Thank you for looking into this :-)
FYI, we had a branch to do the tabs on demand and async before, but decided against it as it caused a flicker in the GridView and the thumbnailer needed to reload all the cover art (eg going from Artists- >Albums- >Artists) . I wonder if we can make it smoother by fading the items or something? But even then, before, we preferred smoothness of changing tabs over loading performance in that case.
I'll see if I can find the branch, because what we also tried was loading the selected tab in async, and then once that has loaded, load the other tabs in the background async and then not unloading them so that there is no flicker.
Also, we know that the localstorage solution for restoring the queue on startup is slow, I'm currently resolving this upstream by fixing the load and save methods of the new Playlist component within qtubuntu-media and qtmultimedia. So don't worry about trying to speed up that part if you find it is slow :-)
Furthermore, I've found if you go Artists- >Albums- >Artists and scroll, you seem to have a double GridView in the Artists tab for some reason - I don't remember seeing this before.