Make jax configuration wait until after main configuration completes

This commit is contained in:
Davide P. Cervone 2011-03-05 18:09:55 -05:00
parent 0e458db9d4
commit af97e9f6a6
2 changed files with 16 additions and 11 deletions

File diff suppressed because one or more lines are too long

View File

@ -1761,20 +1761,25 @@ MathJax.Hub.Startup = {
return AJAX.loadComplete(this.directory+"/"+file); return AJAX.loadComplete(this.directory+"/"+file);
} else { } else {
var queue = CALLBACK.Queue(); var queue = CALLBACK.Queue();
queue.Push(["Post",HUB.Startup.signal,this.id+" Jax Config"]); queue.Push(
queue.Push(["Config",this]); HUB.Register.StartupHook("End Config",{}), // wait until config complete
queue.Push(["Post",HUB.Startup.signal,this.id+" Jax Require"]); ["Post",HUB.Startup.signal,this.id+" Jax Config"],
["Config",this],
["Post",HUB.Startup.signal,this.id+" Jax Require"]
);
if (this.require) { if (this.require) {
var require = this.require; if (!(require instanceof Array)) {require = [require]} var require = this.require; if (!(require instanceof Array)) {require = [require]}
for (var i = 0, m = require.length; i < m; i++) {queue.Push(AJAX.Require(require[i]))} for (var i = 0, m = require.length; i < m; i++) {queue.Push(AJAX.Require(require[i]))}
} }
return queue.Push(
// Config may set the extensions, so use a function to delay making the reference // Config may set the extensions, so use a function to delay making the reference
queue.Push([function (config,id) {return MathJax.Hub.Startup.loadArray(config.extensions,"extensions/"+id)},this.config||{},this.id]); [function (config,id) {return MathJax.Hub.Startup.loadArray(config.extensions,"extensions/"+id)},this.config||{},this.id],
queue.Push(["Post",HUB.Startup.signal,this.id+" Jax Startup"]); ["Post",HUB.Startup.signal,this.id+" Jax Startup"],
queue.Push(["Startup",this]); ["Startup",this],
queue.Push(["Post",HUB.Startup.signal,this.id+" Jax Ready"]); ["Post",HUB.Startup.signal,this.id+" Jax Ready"],
queue.Push([function (THIS) {THIS.Process = THIS.Translate},this.constructor.prototype]); [function (THIS) {THIS.Process = THIS.Translate},this.constructor.prototype],
return queue.Push(["loadComplete",AJAX,this.directory+"/"+file]); ["loadComplete",AJAX,this.directory+"/"+file]
);
} }
} }
},{ },{