socket icon indicating copy to clipboard operation
socket copied to clipboard

Trackpad tap events do not always work

Open jaymakes11 opened this issue 11 months ago • 3 comments

What OS are you using (uname -a, or Windows version)?

Darwin MacBook-Pro.local 23.1.0 Darwin Kernel Version 23.1.0: Mon Oct 9 21:27:24 PDT 2023; root:xnu-10002.41.9~6/RELEASE_ARM64_T6000 arm64

What version Socket Runtime are you using?

0.5.4 (97fa3f7c)

What programming language are you using (C/C++/Go/Rust)?

JS (Node v20.11.0)

What did you expect to see and what you saw instead?

Expect taps (on macbook pro's built-in trackpad) to work as expected Taps only work sometimes as expected

Created an isolated test case: https://github.com/jaymakes11/ssc-reproduce-tap-bug

Created a demo video in that repos README (watch with video's sound turned ON to hear the taps).

jaymakes11 avatar Feb 26 '24 02:02 jaymakes11

I was able to reproduce, the bug seems to be that the first tap on something that should be tappable isn't getting recognized, but all subsequent taps are. I'll look into this more.

heapwolf avatar Feb 26 '24 05:02 heapwolf

the bug seems to be that the first tap on something that should be tappable isn't getting recognized, but all subsequent taps are.

Just a note here that I'm somewhat consistently seeing it happen on the same element (without taping something else in between taps), though I don't think this was shown in my demo video.

jaymakes11 avatar Feb 26 '24 07:02 jaymakes11

what's also a bit interesting is that tap on body always responds.

document.body.addEventListener('click', function() {
  console.log('BODY TAP') // tap is reliable
})

UPDATE: It also looks like the pointer down event fires reliably on all taps.

incrementButton.addEventListener('pointerdown', function() {
  console.log('BUTTON TAP') // tap is reliable
})

heapwolf avatar Feb 26 '24 09:02 heapwolf