From 004a0d5281fb1793f9106de06fc6758ff97a48fb Mon Sep 17 00:00:00 2001 From: Alex Yatskov Date: Wed, 28 Sep 2016 20:14:21 -0700 Subject: Fix activation bug --- ext/bg/js/yomichan.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'ext/bg') diff --git a/ext/bg/js/yomichan.js b/ext/bg/js/yomichan.js index f1b3ffc4..46a240a3 100644 --- a/ext/bg/js/yomichan.js +++ b/ext/bg/js/yomichan.js @@ -23,6 +23,7 @@ class Yomichan { Handlebars.registerHelper('kanjiLinks', kanjiLinks); this.translator = new Translator(); + this.options = null; this.importTabId = null; this.asyncPools = {}; this.ankiConnectVer = 0; @@ -30,8 +31,6 @@ class Yomichan { chrome.runtime.onMessage.addListener(this.onMessage.bind(this)); chrome.browserAction.onClicked.addListener(this.onBrowserAction.bind(this)); - chrome.tabs.onCreated.addListener(tab => this.onTabReady(tab.id)); - chrome.tabs.onUpdated.addListener(this.onTabReady.bind(this)); loadOptions().then(opts => { this.setOptions(opts); @@ -66,11 +65,6 @@ class Yomichan { return true; } - onTabReady(tabId) { - this.tabInvoke(tabId, 'setOptions', this.options); - this.tabInvoke(tabId, 'setEnabled', this.state === 'enabled'); - } - onBrowserAction() { switch (this.state) { case 'disabled': @@ -258,6 +252,14 @@ class Yomichan { return note; } + api_getEnabled({callback}) { + callback(this.state === 'enabled'); + } + + api_getOptions({callback}) { + loadOptions().then(opts => callback(opts)); + } + api_addDefinition({definition, mode, callback}) { const note = this.formatNote(definition, mode); this.ankiInvokeSafe('addNote', {note}, null, callback); -- cgit v1.2.3