improve the theme changing so it now checks to see if the stylesheet is loaded before refreshing the ui

This commit is contained in:
Damien Churchill 2008-08-12 12:02:30 +00:00
commit 07f65d8a22

View file

@ -1120,11 +1120,19 @@ Deluge.UI = {
this.themecss = new Asset.css('/template/static/themes/' + name + '/style.css'); this.themecss = new Asset.css('/template/static/themes/' + name + '/style.css');
Cookie.write('theme', name); Cookie.write('theme', name);
if (this.overlay) { if (this.overlay) {
var temp = function() { var refresh = function() {
this.vbox.refresh(); this.vbox.refresh();
this.vbox.calculatePositions(); this.vbox.calculatePositions();
this.overlay.dispose(); this.overlay.dispose();
}.bind(this).delay(500); }.bind(this);
var check = function() {
if (document.styleSheets[2]) {
if (document.styleSheets[2].href == this.themecss.href) {
refresh();
$clear(check);
}
}
}.periodical(50, this);
}; };
}, },