on master help sign in
Attempt to resolve #785, pointer-events being set to 'none' by accident
afff54cEvan Czaplicki
runtime/Render/Element.js+25−14
@@ -425,23 +425,34 @@ function updateProps(node, curr, next) {
425 var removed = false;
425 var removed = false;
426
426
427 // update hover handlers
427 // update hover handlers
428− if (nextProps.hover.ctor === '_Tuple0') {
428+ if (currProps.hover.ctor === '_Tuple0') {
429+ if (nextProps.hover.ctor !== '_Tuple0') {
430+ addHover(node, nextProps.hover);
431+ }
432+ }
433+ else {
434+ if (nextProps.hover.ctor === '_Tuple0') {
429− removed = true;
435+ removed = true;
430− removeHover(node);
436+ removeHover(node);
431− } else if (node.elm_hover_handler) {
437+ }
438+ else {
432− node.elm_hover_handler = nextProps.hover;
439+ node.elm_hover_handler = nextProps.hover;
433− } else {
440+ }
434− addHover(node, nextProps.hover);
435 }
441 }
436
442
437 // update click handlers
443 // update click handlers
438− if (nextProps.click.ctor === '_Tuple0') {
444+ if (currProps.click.ctor === '_Tuple0') {
445+ if (nextProps.click.ctor !== '_Tuple0') {
446+ addClick(node, nextProps.click);
447+ }
448+ }
449+ else {
450+ if (nextProps.click.ctor === '_Tuple0') {
439− removed = true;
451+ removed = true;
440− removeClick(node);
452+ removeClick(node);
441− } else if (node.elm_click_handler) {
453+ } else {
442− node.elm_click_handler = nextProps.click;
454+ node.elm_click_handler = nextProps.click;
443− } else {
455+ }
444− addClick(node, nextProps.click);
445 }
456 }
446
457
447 // stop capturing clicks if
458 // stop capturing clicks if