<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
Something that irks me about starting Amarok is the long delay before
the
MainWindow shows, particularly if you have a large playlist.<br>
<br>
When I start Amarok on my "Media" virtual desktop, I can't switch to my
"Work" virtual desktop
to do something useful until MainWindow shows and X11 locks it to the
right virtual desktop. That takes 13 seconds; an annoyance.<br>
<br>
I did an experiment a while ago where the previous playlist was loaded
on a
QTimer::singleShot() instead of during the constructors.<br>
<br>
I think that with a recent patch from Nikil Marathe / Nikolaj, Amarok
now contains all the patches necessary to do that.<br>
<br>
<br>
----<br>
Timings: with my 8000-track playlist, the time for MainWinow to show
goes from 13 to 3.5 seconds,
which is "tolerable" territory.<br>
<br>
MainWindow then "freezes" (stays blank) for 9 seconds while it loads
the playlist, but I'm liberated to do something else.<br>
<br>
Could keep the Splash
Screen up during that time. Future elaboration: load the playlist in a
background
thread.<br>
<br>
<br>
----<br>
Some minor points:<br>
<ul>
  <li>The QTimer call needs to go at the end of 'App::continueInit()'
in App.cpp.<br>
If you start the QTimer in PlaylistActions, it triggers too soon.<br>
    <br>
  </li>
  <li>It allows us to get rid of some constructor ordering trickery,
e.g. forced early init of The::playlistManager().<br>
    <br>
  </li>
  <li>In Dynamic Playlist mode, new tracks will be chosen before
'restoreDefaultPlaylist()' gets the chance to run.<br>
  </li>
</ul>
<br>
<br>
----<br>
What do you think of this?<br>
<br>
    Cheers,<br>
    Nanno<br>
<br>
</body>
</html>