jquery-archive/PEP

Promise execution order vs pointer event handling in Safari

IanBellomy opened this issue · 1 comments

In the code below the promise and event handling differs between Chrome (76) using native Pointer Events and Safari (12) using PEP:

Safari:
document pointer up
promise resolved

Chrome:
promise resolved
document pointer up

let div = document.getElementsByTagName("div")[0]
document.addEventListener("pointerup",(e)=>{
   console.log("document pointer up") // First in Safari using PEP, second in Chrome using native PE
})

div.addEventListener("pointerdown",(e)=>
  new Promise((resolve)=>{
    div.addEventListener("pointerup",(e)=>{
      resolve(true)
    },{once:true})
  }).then(()=>{
    console.log("promise resolved") // Second in Safari using PEP, first in chrome using native PE
  })
})	

PEP has now entered emeritus status at the OpenJS Foundation. This repository is now archived.