From 848f79c2c75bfdebf7ce405a4b7a480fac2ea251 Mon Sep 17 00:00:00 2001 From: Rasmus Porsager Date: Mon, 21 Nov 2016 02:12:56 +0100 Subject: [PATCH 1/3] Don't set same value of options in focused select - fixes #1413 --- render/render.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/render/render.js b/render/render.js index c2dbd4ca..c706edf3 100644 --- a/render/render.js +++ b/render/render.js @@ -432,6 +432,8 @@ module.exports = function($window) { else if (key in element && !isAttribute(key) && ns === undefined) { //setting input[value] to same value by typing on focused element moves cursor to end in Chrome if (vnode.tag === "input" && key === "value" && vnode.dom.value === value && vnode.dom === $doc.activeElement) return + //setting option[value] to same value while having select open blinks select dropdown in Chrome + if (vnode.tag === "option" && key1 === "value" && vnode.dom.value === value && vnode.dom.parentNode === $doc.activeElement) return element[key] = value } else { From af01c3c89fb44227ee383d08635f3aa2bc4b5583 Mon Sep 17 00:00:00 2001 From: porsager Date: Mon, 21 Nov 2016 02:27:59 +0100 Subject: [PATCH 2/3] Use correct key name --- render/render.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/render/render.js b/render/render.js index c706edf3..c74a3e41 100644 --- a/render/render.js +++ b/render/render.js @@ -433,7 +433,7 @@ module.exports = function($window) { //setting input[value] to same value by typing on focused element moves cursor to end in Chrome if (vnode.tag === "input" && key === "value" && vnode.dom.value === value && vnode.dom === $doc.activeElement) return //setting option[value] to same value while having select open blinks select dropdown in Chrome - if (vnode.tag === "option" && key1 === "value" && vnode.dom.value === value && vnode.dom.parentNode === $doc.activeElement) return + if (vnode.tag === "option" && key === "value" && vnode.dom.value === value && vnode.dom.parentNode === $doc.activeElement) return element[key] = value } else { From fd484f97664224eaa9b1bfaa473a88c67aa1a72f Mon Sep 17 00:00:00 2001 From: porsager Date: Mon, 21 Nov 2016 09:59:21 +0100 Subject: [PATCH 3/3] Fix options inside optgroups (active check is unnecessary) --- render/render.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/render/render.js b/render/render.js index c74a3e41..b05fa302 100644 --- a/render/render.js +++ b/render/render.js @@ -433,7 +433,7 @@ module.exports = function($window) { //setting input[value] to same value by typing on focused element moves cursor to end in Chrome if (vnode.tag === "input" && key === "value" && vnode.dom.value === value && vnode.dom === $doc.activeElement) return //setting option[value] to same value while having select open blinks select dropdown in Chrome - if (vnode.tag === "option" && key === "value" && vnode.dom.value === value && vnode.dom.parentNode === $doc.activeElement) return + if (vnode.tag === "option" && key === "value" && vnode.dom.value === value) return element[key] = value } else {