on master help sign in
Merge pull request #502 from Xashili/dev

Added support for .pointer-events.

commit86436d72804d5abee206270487d4b104b04cd2cc authorEvan Czaplicki <info@elm-lang.org> dateWed 19 Feb 2014, 07:50 (13 years ago) parent139f73a62540a9
2 files changed+9
libraries/Native/Graphics/Input.js+6 runtime/Render/Element.js+3
libraries/Native/Graphics/Input.js+6
@@ -20,6 +20,7 @@ Elm.Native.Graphics.Input.make = function(elm) {
2020 var events = Signal.constant(entries[0]._1);
2121
2222 var drop = newNode('select');
23+ drop.style.pointerEvents = 'auto';
2324 drop.style.border = '0 solid';
2425 for (var i = 0; i < entries.length; ++i) {
2526 var option = newNode('option');
@@ -57,6 +58,7 @@ Elm.Native.Graphics.Input.make = function(elm) {
5758
5859 function render(model) {
5960 var b = newNode('button');
61+ b.style.pointerEvents = 'auto';
6062 b.style.display = 'block';
6163 b.elmEvent = model.event;
6264 function click() { elm.notify(events.id, b.elmEvent); }
@@ -89,6 +91,7 @@ Elm.Native.Graphics.Input.make = function(elm) {
8991
9092 function render(model) {
9193 var btn = newNode('div');
94+ btn.style.pointerEvents = 'auto';
9295 btn.elmEvent = model.event;
9396
9497 btn.elmUp = Render.render(model.up);
@@ -171,7 +174,9 @@ Elm.Native.Graphics.Input.make = function(elm) {
171174
172175 function render(model) {
173176 var b = newNode('input');
177+ b.style.pointerEvents = 'auto';
174178 b.type = 'checkbox';
179+
175180 b.checked = model.checked;
176181 b.style.display = 'block';
177182 b.elmHandler = model.handler;
@@ -214,6 +219,7 @@ Elm.Native.Graphics.Input.make = function(elm) {
214219
215220 function render(model) {
216221 var field = newNode('input');
222+ field.style.pointerEvents = 'auto';
217223 field.elmHandler = model.handler;
218224
219225 field.id = 'test';
runtime/Render/Element.js+3
@@ -29,6 +29,7 @@ function setProps(props, e) {
2929 }
3030 if (props.hover.ctor !== '_Tuple0') {
3131 var overCount = 0;
32+ e.style.pointerEvents = 'auto';
3233 e.addEventListener('mouseover', function() {
3334 if (overCount++ > 0) return;
3435 props.hover(true);
@@ -99,6 +100,8 @@ function goDown(e) { return e }
99100function goRight(e) { e.style.styleFloat = e.style.cssFloat = "left"; return e; }
100101function flowWith(f, array) {
101102 var container = newElement('div');
103+ if (f == goIn) container.style.pointerEvents = 'none';
104+
102105 for (var i = array.length; i--; ) {
103106 container.appendChild(f(render(array[i])));
104107 }