From a6b197ca73a6be50c5c5bf391391c9971ff8c5e2 Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Sat, 7 Oct 2017 14:14:02 +0900 Subject: reload settings on content --- src/components/background.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/components') diff --git a/src/components/background.js b/src/components/background.js index 487e3af..de44dae 100644 --- a/src/components/background.js +++ b/src/components/background.js @@ -19,6 +19,8 @@ export default class BackgroundComponent { }); } }); + browser.tabs.onUpdated.addListener(this.onTabUpdated.bind(this)); + browser.tabs.onActivated.addListener(this.onTabActivated.bind(this)); } update() { @@ -62,4 +64,22 @@ export default class BackgroundComponent { this.store.dispatch(settingsActions.load()); } } + + onTabActivated(info) { + this.syncSettings(info.tabId); + } + + onTabUpdated(id, info) { + if (info.url) { + this.syncSettings(id); + } + } + + syncSettings(id) { + let { settings } = this.store.getState().setting; + return browser.tabs.sendMessage(id, { + type: messages.CONTENT_SET_SETTINGS, + settings, + }); + } } -- cgit v1.2.3