reopen command line after error
This commit is contained in:
parent
e0bff54a82
commit
29f82d3a7f
3 changed files with 17 additions and 5 deletions
|
@ -10,6 +10,8 @@ export default class ConsoleFrame {
|
|||
|
||||
this.element = element;
|
||||
|
||||
this.errorShown = true;
|
||||
|
||||
this.hide();
|
||||
}
|
||||
|
||||
|
@ -21,6 +23,7 @@ export default class ConsoleFrame {
|
|||
text: text
|
||||
};
|
||||
messages.send(this.element.contentWindow, message);
|
||||
this.errorShown = false;
|
||||
}
|
||||
|
||||
showError(text) {
|
||||
|
@ -31,6 +34,8 @@ export default class ConsoleFrame {
|
|||
text: text
|
||||
};
|
||||
messages.send(this.element.contentWindow, message);
|
||||
this.errorShown = true;
|
||||
this.element.blur();
|
||||
}
|
||||
|
||||
showFrame() {
|
||||
|
@ -40,5 +45,10 @@ export default class ConsoleFrame {
|
|||
hide() {
|
||||
this.element.style.display = 'none';
|
||||
this.element.blur();
|
||||
this.errorShown = false;
|
||||
}
|
||||
|
||||
isErrorShown() {
|
||||
return this.element.style.display === 'block' && this.errorShown;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -57,15 +57,15 @@ window.addEventListener('load', () => {
|
|||
});
|
||||
|
||||
const showCommand = (text) => {
|
||||
let input = window.document.querySelector('#vimvixen-console-command-input');
|
||||
input.value = text;
|
||||
input.focus();
|
||||
|
||||
let command = window.document.querySelector('#vimvixen-console-command');
|
||||
command.style.display = 'block';
|
||||
|
||||
let error = window.document.querySelector('#vimvixen-console-error');
|
||||
error.style.display = 'none';
|
||||
|
||||
let input = window.document.querySelector('#vimvixen-console-command-input');
|
||||
input.value = text;
|
||||
input.focus();
|
||||
}
|
||||
|
||||
const showError = (text) => {
|
||||
|
|
|
@ -91,7 +91,9 @@ window.addEventListener("keypress", (e) => {
|
|||
messages.receive(window, (message) => {
|
||||
switch (message.type) {
|
||||
case 'vimvixen.command.blur':
|
||||
vvConsole.hide();
|
||||
if (!vvConsole.isErrorShown()) {
|
||||
vvConsole.hide();
|
||||
}
|
||||
break;
|
||||
case 'vimvixen.command.enter':
|
||||
browser.runtime.sendMessage({
|
||||
|
|
Reference in a new issue