about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2023-07-10 19:01:41 +0200
committerbptato <nincsnevem662@gmail.com>2023-07-10 19:03:15 +0200
commit34cffe0b658511ac18429c41453c24505c47c6d4 (patch)
tree5037af04a595ed76cced5290ab4685176f2b2011 /src
parent882ad61e765529fca79ebf79dcaa079e6bc970fb (diff)
downloadchawan-34cffe0b658511ac18429c41453c24505c47c6d4.tar.gz
buffer: fix textarea regression
Fix bug of not setting focus on clicked text area elements, which
would result in the input text being discarded.
Diffstat (limited to 'src')
-rw-r--r--src/buffer/buffer.nim8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/buffer/buffer.nim b/src/buffer/buffer.nim
index d322c03e..ca421e67 100644
--- a/src/buffer/buffer.nim
+++ b/src/buffer/buffer.nim
@@ -1031,11 +1031,15 @@ proc click(buffer: Buffer, button: HTMLButtonElement): ClickResult =
     result.repaint = buffer.setFocus(button)
 
 proc click(buffer: Buffer, textarea: HTMLTextAreaElement): ClickResult =
+  let repaint = buffer.setFocus(textarea)
   let readline = ReadLineResult(
     value: textarea.value,
-    area: true
+    area: true,
+  )
+  return ClickResult(
+    readline: some(readline),
+    repaint: repaint
   )
-  return ClickResult(readline: some(readline))
 
 proc click(buffer: Buffer, input: HTMLInputElement): ClickResult =
   result.repaint = buffer.restoreFocus()