disable input text overwritings; needs further throughts

This commit is contained in:
Araq 2017-09-06 16:36:27 +02:00
commit c324793f62

View file

@ -75,7 +75,7 @@ proc wrapEvent(d: Node; n: VNode; k: EventKind;
let action = action let action = action
let n = n let n = n
result = proc (ev: Event) = result = proc (ev: Event) =
if n.kind == VNodeKind.textarea or n.kind == VNodeKind.input: if n.kind == VNodeKind.textarea or n.kind == VNodeKind.input or n.kind == VNodeKind.select:
keyeventBody() keyeventBody()
else: action(ev, n) else: action(ev, n)
@ -370,10 +370,11 @@ proc diff(newNode, oldNode: VNode; parent, current: Node; kxi: KaraxInstance): E
if newNode.events.len != 0 or oldNode.events.len != 0: if newNode.events.len != 0 or oldNode.events.len != 0:
mergeEvents(newNode, oldNode, kxi) mergeEvents(newNode, oldNode, kxi)
if oldNode.kind == VNodeKind.input or oldNode.kind == VNodeKind.textarea: when false:
if oldNode.text != newNode.text: if oldNode.kind == VNodeKind.input or oldNode.kind == VNodeKind.textarea:
oldNode.text = newNode.text if oldNode.text != newNode.text:
oldNode.dom.value = newNode.text oldNode.text = newNode.text
oldNode.dom.value = newNode.text
let newLength = newNode.len let newLength = newNode.len
let oldLength = oldNode.len let oldLength = oldNode.len