* optimize startup user experience

This commit is contained in:
Reinhard Pointner 2012-07-14 14:50:07 +00:00
parent 8a5422bb3d
commit 3182f15d03
1 changed files with 4 additions and 7 deletions

View File

@ -130,7 +130,10 @@ public class Main {
System.exit(-1); // starting up UI failed System.exit(-1); // starting up UI failed
} }
// pre-load certain classes and resources in the background // pre-load media.types (when loaded during DnD it will freeze the UI for a few hundred milliseconds)
MediaTypes.getDefault();
// pre-load certain resources in the background
warmupCachedResources(); warmupCachedResources();
// check for application updates (only when installed, i.e. not running via fatjar or webstart) // check for application updates (only when installed, i.e. not running via fatjar or webstart)
@ -261,17 +264,11 @@ public class Main {
@Override @Override
public void run() { public void run() {
try { try {
// pre-load media.types (when loaded during DnD it will freeze the UI for a few hundred milliseconds)
MediaTypes.getDefault();
// pre-load movie/series index // pre-load movie/series index
List<String> dummy = Collections.singletonList(""); List<String> dummy = Collections.singletonList("");
MediaDetection.stripReleaseInfo(dummy, true); MediaDetection.stripReleaseInfo(dummy, true);
MediaDetection.matchSeriesByName(dummy, -1); MediaDetection.matchSeriesByName(dummy, -1);
MediaDetection.matchMovieName(dummy, true, -1); MediaDetection.matchMovieName(dummy, true, -1);
// pre-load Groovy script engine
new ExpressionFormat("").format("");
} catch (Exception e) { } catch (Exception e) {
Logger.getLogger(getClass().getName()).log(Level.WARNING, e.getMessage(), e); Logger.getLogger(getClass().getName()).log(Level.WARNING, e.getMessage(), e);
} }