- From: Brenton Simpson via GitHub <sysbot+gh@w3.org>
- Date: Tue, 20 Sep 2016 22:32:34 +0000
- To: public-pointer-events@w3.org
appsforartists has just created a new issue for https://github.com/w3c/pointerevents: == pointerup pressure should always be 0 == `pointerup` is defined to be when a {finger,stylus} loses contact with the screen or when mouse buttons are no longer being pushed. Therefore, I'd expect the pressure value of every `pointerup` event to be 0. Moreover, the spec requires pressure to be 0 if the hardware doesn't support it and no buttons are active (that is, the pointer is up). Maddeningly, its actual value is different across implementations. Here's the current breakdown: | Platform | Browser | Pointer | pointerup pressure is 0 | pointerup pressure is whatever the last pointermove recorded | | ------------- | -------------- | ------------ | ----------------------- | ------------------------------------------------------------ | | Android | Chrome | touch | | :ballot_box_with_check: | | iOS | Safari via PEP | touch | | :ballot_box_with_check: | | Mac | Chrome | trackpad | :ballot_box_with_check: | | | Mac | Chrome | Wacom stylus | :ballot_box_with_check: | | | Mac | Chrome | Wacom touch | | :ballot_box_with_check: (always 1, spec says it should be .5) | | Mac | Firefox | trackpad | :ballot_box_with_check: | | | Mac | Firefox | Wacom stylus | :ballot_box_with_check: | | | Mac | Firefox | Wacom touch | :ballot_box_with_check: | | | Mac | Safari via PEP | trackpad | :ballot_box_with_check: | | | Mac | Safari via PEP | Wacom stylus | :ballot_box_with_check: | | | Mac | Safari via PEP | Wacom touch | :ballot_box_with_check: | | | Windows | Chrome or Edge | touch | | :ballot_box_with_check: | | Windows | Chrome or Edge | trackpad | :ballot_box_with_check: | | | Windows | Chrome or Edge | stylus | :ballot_box_with_check: | | | Windows | Firefox | touch | :ballot_box_with_check: | | | Windows | Firefox | trackpad | :ballot_box_with_check: | | | Windows | Firefox | stylus | :ballot_box_with_check: | | And here's [the test](https://codepen.io/appsforartists/full/gwLWVE/). If the background turns green on `pointerup`, `pressure` is 0. If it turns red, `pressure` is using a stale value from `pointermove`. **_tl;dr:_** - Firefox always sets pressure to 0 in `pointerup`. - The other desktop browsers use 0 for stylus and trackpad, but the last `pointermove` value for touch. - iOS and Android both use the last pressure value from `pointermove`. **Can we please explicitly declare in the spec that pressure should be 0 in every `pointerup`?** This would be consistent with the currently specified behavior for pointers that don't granularly report pressure. Please view or discuss this issue at https://github.com/w3c/pointerevents/issues/146 using your GitHub account
Received on Tuesday, 20 September 2016 22:32:41 UTC