more broadcast message

jh-changes
Shin'ya Ueoka 7 years ago
parent 6a2bfc51ba
commit e6c5aea074
  1. 16
      src/console/console.js
  2. 18
      src/content/index.js

@ -1,8 +1,5 @@
import './console.scss'; import './console.scss';
import Completion from './completion'; import Completion from './completion';
import * as messages from '../shared/messages';
const parent = window.parent;
// TODO consider object-oriented // TODO consider object-oriented
var prevValue = ""; var prevValue = "";
@ -30,7 +27,7 @@ const keyupMessage = (input) => {
}; };
const handleBlur = () => { const handleBlur = () => {
messages.send(parent, blurMessage()); return browser.runtime.sendMessage(blurMessage());
}; };
const completeNext = () => { const completeNext = () => {
@ -66,11 +63,9 @@ const completePrev = () => {
const handleKeydown = (e) => { const handleKeydown = (e) => {
switch(e.keyCode) { switch(e.keyCode) {
case KeyboardEvent.DOM_VK_ESCAPE: case KeyboardEvent.DOM_VK_ESCAPE:
messages.send(parent, blurMessage()); return browser.runtime.sendMessage(blurMessage());
break;
case KeyboardEvent.DOM_VK_RETURN: case KeyboardEvent.DOM_VK_RETURN:
messages.send(parent, keydownMessage(e.target)); return browser.runtime.sendMessage(keydownMessage(e.target));
break;
case KeyboardEvent.DOM_VK_TAB: case KeyboardEvent.DOM_VK_TAB:
if (e.shiftKey) { if (e.shiftKey) {
completePrev(); completePrev();
@ -90,8 +85,8 @@ const handleKeyup = (e) => {
if (e.target.value === prevValue) { if (e.target.value === prevValue) {
return; return;
} }
messages.send(parent, keyupMessage(e.target));
prevValue = e.target.value; prevValue = e.target.value;
return browser.runtime.sendMessage(keyupMessage(e.target));
}; };
window.addEventListener('load', () => { window.addEventListener('load', () => {
@ -115,9 +110,8 @@ const showCommand = (text) => {
completion = null; completion = null;
let container = window.document.querySelector('#vimvixen-console-completion'); let container = window.document.querySelector('#vimvixen-console-completion');
container.innerHTML = ''; container.innerHTML = '';
messages.send(parent, keyupMessage(input));
return Promise.resolve(); return browser.runtime.sendMessage(keyupMessage(input));
} }
const showError = (text) => { const showError = (text) => {

@ -1,7 +1,6 @@
import * as scrolls from './scrolls'; import * as scrolls from './scrolls';
import * as histories from './histories'; import * as histories from './histories';
import * as actions from '../shared/actions'; import * as actions from '../shared/actions';
import * as messages from '../shared/messages';
import ConsoleFrame from '../console/console-frame'; import ConsoleFrame from '../console/console-frame';
import Follow from './follow'; import Follow from './follow';
@ -84,28 +83,27 @@ const doCompletion = (line) => {
vvConsole.showError(err.message); vvConsole.showError(err.message);
}); });
} }
return Promise.resolve();
}; };
messages.receive(window, (message) => { browser.runtime.onMessage.addListener((action) => {
switch (message.type) { switch (action.type) {
case 'vimvixen.command.blur': case 'vimvixen.command.blur':
if (!vvConsole.isErrorShown()) { if (!vvConsole.isErrorShown()) {
vvConsole.hide(); vvConsole.hide();
} }
break; return Promise.resolve();
case 'vimvixen.command.enter': case 'vimvixen.command.enter':
browser.runtime.sendMessage({ return browser.runtime.sendMessage({
type: 'event.cmd.enter', type: 'event.cmd.enter',
text: message.value text: action.value
}).catch((err) => { }).catch((err) => {
console.error("Vim Vixen:", err); console.error("Vim Vixen:", err);
vvConsole.showError(err.message); vvConsole.showError(err.message);
}); });
break;
case 'vimvixen.command.change': case 'vimvixen.command.change':
doCompletion(message.value); return doCompletion(action.value);
break;
default: default:
return; return Promise.resolve();
} }
}); });