From 70031d3bfa1f4a01f0264222b33a4f3d8f6eee66 Mon Sep 17 00:00:00 2001 From: Uwe Oestermeier Date: Tue, 25 Feb 2020 15:19:01 +0100 Subject: [PATCH] Removed comment since border case appeared in Edge. --- dist/iwmlib.js | 9 ++++++--- dist/iwmlib.pixi.js | 32 ++++++++++++++++++++++++++++++++ lib/errors.js | 9 ++++++--- 3 files changed, 44 insertions(+), 6 deletions(-) diff --git a/dist/iwmlib.js b/dist/iwmlib.js index ce7f74c..d7b4c4c 100644 --- a/dist/iwmlib.js +++ b/dist/iwmlib.js @@ -429,9 +429,12 @@ window.addEventListener( 'error', event => { - // if (typeof(event.error) == 'undefined') { - // console.info("Catched undefined error", event) - // } + if (typeof(event.error) == 'undefined') { + // This sometimes happens in Edge. Since we have no error + // position, we cannot do much beside an info log. + console.info("Catched undefined error", event); + return + } this.appendError(event.error, event.filename); }, true diff --git a/dist/iwmlib.pixi.js b/dist/iwmlib.pixi.js index d684e18..0c61104 100644 --- a/dist/iwmlib.pixi.js +++ b/dist/iwmlib.pixi.js @@ -1335,6 +1335,19 @@ static toLine(event) { return `${event.type} #${event.target.id} ${event.clientX} ${event.clientY}` + let result = event.type; + let selector = this.selector(event.target); + result += ' selector: ' + selector; + if (event.target != document.querySelector(selector)) console.log('Cannot resolve', selector); + let keys = ['layerX', 'layerY', 'pageX', 'pageY', 'clientX', 'clientY']; + for (let key of keys) { + try { + result += ' ' + key + ':' + event[key]; + } catch (e) { + console.log('Invalid key: ' + key); + } + } + return result } static compareExtractedWithSimulated() { @@ -6174,6 +6187,25 @@ result[id] = this.getPosition(event); break } + // case 'TouchEvent': + // // Needs to be observed: Perhaps changedTouches are all we need. If so + // // we can remove the touchEventKey default parameter + // if (touchEventKey == 'all') { + // for(let t of event.targetTouches) { + // result[t.identifier.toString()] = this.getPosition(t) + // } + // for(let t of event.changedTouches) { + // result[t.identifier.toString()] = this.getPosition(t) + // } + // } + // else { + // for(let t of event.changedTouches) { + // result[t.identifier.toString()] = this.getPosition(t) + // } + // } + // break + default: + break } return result } diff --git a/lib/errors.js b/lib/errors.js index d9084da..9b11cf1 100755 --- a/lib/errors.js +++ b/lib/errors.js @@ -117,9 +117,12 @@ export default class Errors { window.addEventListener( 'error', event => { - // if (typeof(event.error) == 'undefined') { - // console.info("Catched undefined error", event) - // } + if (typeof(event.error) == 'undefined') { + // This sometimes happens in Edge. Since we have no error + // position, we cannot do much beside an info log. + console.info("Catched undefined error", event) + return + } this.appendError(event.error, event.filename) }, true