xP: separate input buffers

This commit is contained in:
Přemysl Eric Janouch 2022-09-06 23:17:47 +02:00
parent 5fd76ba6f9
commit 976e7bfbb4
Signed by: p
GPG Key ID: A0420B94F92B9493

View File

@ -163,13 +163,22 @@ rpc.addEventListener('BufferRemove', event => {
})
rpc.addEventListener('BufferActivate', event => {
let e = event.detail
let e = event.detail, b = buffers.get(e.bufferName)
let old = buffers.get(bufferCurrent)
bufferCurrent = e.bufferName
setTimeout(() => {
let el = document.getElementById('input')
if (el !== null)
el.focus()
})
let textarea = document.getElementById('input')
if (textarea === null)
return
textarea.focus()
if (old !== undefined)
old.input = textarea.value
if (b !== undefined)
textarea.value = b.input || ''
else
textarea.value = ''
})
rpc.addEventListener('BufferLine', event => {
@ -388,8 +397,6 @@ function onKeyDown(event) {
event.preventDefault()
}
// TODO: This should be remembered across buffer switches,
// and we'll probably have to intercept /all/ key presses.
let Input = {
view: vnode => {
return m('textarea#input', {