From 7c9d64e95f19528f4618432ff6fa8632e4027b6f Mon Sep 17 00:00:00 2001 From: Alex Yatskov Date: Wed, 6 Apr 2016 20:48:36 -0700 Subject: Options now work --- ext/bg/background.html | 1 + ext/bg/js/yomichan.js | 24 +++++++++++++----------- 2 files changed, 14 insertions(+), 11 deletions(-) (limited to 'ext/bg') diff --git a/ext/bg/background.html b/ext/bg/background.html index 6e917561..9f07ef6e 100644 --- a/ext/bg/background.html +++ b/ext/bg/background.html @@ -7,6 +7,7 @@ + diff --git a/ext/bg/js/yomichan.js b/ext/bg/js/yomichan.js index 5f330e24..fe7007eb 100644 --- a/ext/bg/js/yomichan.js +++ b/ext/bg/js/yomichan.js @@ -23,24 +23,26 @@ class Yomichan { this.translator = new Translator(); this.updateState('disabled'); - this.updateOptions({}); - chrome.runtime.onMessage.addListener(this.onMessage.bind(this)); - chrome.browserAction.onClicked.addListener(this.onBrowserAction.bind(this)); + loadOptions((opts) => { + this.updateOptions(opts); - loadOptions((opts) => this.updateOptions(opts)); + chrome.runtime.onMessage.addListener(this.onMessage.bind(this)); + chrome.browserAction.onClicked.addListener(this.onBrowserAction.bind(this)); + }); } onMessage(request, sender, callback) { const {action, data} = request; - const handler = { - findKanji: ({text}) => this.translator.onFindKanji(text), - findTerm: ({text}) => this.translator.findTerm(text), - getState: () => this.state, - renderTemplate: ({data, template}) => Handlebars.templates[template](data) - }[action]; + const handlers = { + findKanji: ({text}) => this.translator.onFindKanji(text), + findTerm: ({text}) => this.translator.findTerm(text), + getState: () => this.state, + getOptions: () => this.options, + renderText: ({data, template}) => Handlebars.templates[template](data) + }; - const result = handler.call(this, data); + const result = handlers[action].call(this, data); if (callback !== null) { callback(result); } -- cgit v1.2.3