diff --git a/ext/bg/js/translator.js b/ext/bg/js/translator.js index dfe54623..aa11ea63 100644 --- a/ext/bg/js/translator.js +++ b/ext/bg/js/translator.js @@ -87,14 +87,12 @@ class Translator { return {length, definitions}; } - async findTermsDeinflected(text, dictionaries, cache) { - await this.prepare(); - + async findTermsDeinflected(text, titles, cache) { const definer = async term => { if (cache.hasOwnProperty(term)) { return cache[term]; } else { - return cache[term] = await this.database.findTerms(term, dictionaries); + return cache[term] = await this.database.findTerms(term, titles); } }; @@ -108,8 +106,6 @@ class Translator { } async findKanji(text, dictionaries) { - await this.prepare(); - let definitions = []; const processed = {}; const titles = Object.keys(dictionaries); @@ -129,7 +125,6 @@ class Translator { return definitions; } - static loadRules(url) { return new Promise((resolve, reject) => { const xhr = new XMLHttpRequest(); diff --git a/ext/bg/js/yomichan.js b/ext/bg/js/yomichan.js index e0bdabc3..acc560ce 100644 --- a/ext/bg/js/yomichan.js +++ b/ext/bg/js/yomichan.js @@ -25,9 +25,12 @@ window.yomichan = new class { this.anki = new AnkiNull(); this.options = null; - this.translator.prepare().then(optionsLoad).then(this.optionsSet.bind(this)).then(() => { + this.translator.prepare().then(optionsLoad).then(options => { + this.optionsSet(options); + chrome.commands.onCommand.addListener(this.onCommand.bind(this)); chrome.runtime.onMessage.addListener(this.onMessage.bind(this)); + if (this.options.general.showGuide) { chrome.tabs.create({url: chrome.extension.getURL('/bg/guide.html')}); }