diff options
Diffstat (limited to 'src/background/components/background.js')
-rw-r--r-- | src/background/components/background.js | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/src/background/components/background.js b/src/background/components/background.js deleted file mode 100644 index c7a79a1..0000000 --- a/src/background/components/background.js +++ /dev/null @@ -1,67 +0,0 @@ -import messages from 'shared/messages'; -import * as commandActions from 'background/actions/command'; -import * as settingActions from 'background/actions/setting'; -import * as findActions from 'background/actions/find'; -import * as tabActions from 'background/actions/tab'; -import * as completions from '../shared/completions'; - -export default class BackgroundComponent { - constructor(store) { - this.store = store; - - browser.runtime.onMessage.addListener((message, sender) => { - try { - return this.onMessage(message, sender); - } catch (e) { - return browser.tabs.sendMessage(sender.tab.id, { - type: messages.CONSOLE_SHOW_ERROR, - text: e.message, - }); - } - }); - } - - onMessage(message, sender) { - let settings = this.store.getState().setting; - let find = this.store.getState().find; - - switch (message.type) { - case messages.OPEN_URL: - if (message.newTab) { - let action = tabActions.openNewTab( - message.url, sender.tab.id, message.background, - settings.value.properties.adjacenttab); - return this.store.dispatch(action, sender); - } - return this.store.dispatch( - tabActions.openToTab(message.url, sender.tab), sender); - case messages.CONSOLE_ENTER_COMMAND: - this.store.dispatch( - commandActions.exec(sender.tab, message.text, settings.value), - sender - ); - return this.broadcastSettingsChanged(); - case messages.SETTINGS_QUERY: - return Promise.resolve(this.store.getState().setting.value); - case messages.CONSOLE_QUERY_COMPLETIONS: - return completions.complete(message.text, settings.value); - case messages.SETTINGS_RELOAD: - this.store.dispatch(settingActions.load()); - return this.broadcastSettingsChanged(); - case messages.FIND_GET_KEYWORD: - return Promise.resolve(find.keyword); - case messages.FIND_SET_KEYWORD: - this.store.dispatch(findActions.setKeyword(message.keyword)); - return Promise.resolve({}); - } - } - - async broadcastSettingsChanged() { - let tabs = await browser.tabs.query({}); - for (let tab of tabs) { - browser.tabs.sendMessage(tab.id, { - type: messages.SETTINGS_CHANGED, - }); - } - } -} |