Indicator shows the add-on enabled
This commit is contained in:
parent
2c366ac3b1
commit
129aae38df
9 changed files with 86 additions and 3 deletions
|
@ -14,10 +14,12 @@ export default class Common {
|
|||
input.onKey(key => keymapper.key(key));
|
||||
|
||||
this.store = store;
|
||||
this.prevEnabled = this.store.getState().addon.enabled;
|
||||
|
||||
this.reloadSettings();
|
||||
|
||||
messages.onMessage(this.onMessage.bind(this));
|
||||
store.subscribe(() => this.update());
|
||||
}
|
||||
|
||||
onMessage(message) {
|
||||
|
@ -27,6 +29,18 @@ export default class Common {
|
|||
}
|
||||
}
|
||||
|
||||
update() {
|
||||
let enabled = this.store.getState().addon.enabled;
|
||||
if (enabled !== this.prevEnabled) {
|
||||
this.prevEnabled = enabled;
|
||||
|
||||
browser.runtime.sendMessage({
|
||||
type: messages.ADDON_ENABLED_RESPONSE,
|
||||
enabled,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
reloadSettings() {
|
||||
browser.runtime.sendMessage({
|
||||
type: messages.SETTINGS_QUERY,
|
||||
|
|
|
@ -48,11 +48,18 @@ export default class TopContent {
|
|||
}
|
||||
|
||||
onMessage(message) {
|
||||
let addonState = this.store.getState().addon;
|
||||
|
||||
switch (message.type) {
|
||||
case messages.CONSOLE_UNFOCUS:
|
||||
this.win.focus();
|
||||
consoleFrames.blur(window.document);
|
||||
return Promise.resolve();
|
||||
case messages.ADDON_ENABLED_QUERY:
|
||||
return Promise.resolve({
|
||||
type: messages.ADDON_ENABLED_RESPONSE,
|
||||
enabled: addonState.enabled,
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Reference in a new issue