Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use locationOfTouch:inView over locationInView for focal point #2834

Merged
merged 2 commits into from Mar 27, 2024

Conversation

rrebase
Copy link
Contributor

@rrebase rrebase commented Mar 26, 2024

Description

Replace locationInView with locationOfTouch:inView: in Pinch handler to fix truncated focalX and focalY in gesture handler context.

While reading the docs I found the following section that suggest there's an alternative.

Clients of gesture recognizers can also ask for the location of a gesture by calling locationInView: or locationOfTouch:inView:.

By calculating the midpoint using [locationOfTouch:inView:] we get the same number, but with accuracy of many decimal places

Fixes #2833

Test plan

Tested on repro example in (#2833).

…e-mansion#2833)

Replace `locationInView` with `locationOfTouch:inView:` in Pinch handler
to fix truncated focalX and focalY in gesture handler context.

Tested on repro example in (software-mansion#2833).
@m-bert m-bert self-requested a review March 27, 2024 08:48
Copy link
Contributor

@m-bert m-bert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks for fixing that! ❤️

@m-bert m-bert merged commit 23b218e into software-mansion:main Mar 27, 2024
3 checks passed
github-merge-queue bot pushed a commit to valora-inc/wallet that referenced this pull request Apr 13, 2024
…5237)

[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[react-native-gesture-handler](https://togithub.com/software-mansion/react-native-gesture-handler)
| [`^2.15.0` ->
`^2.16.0`](https://renovatebot.com/diffs/npm/react-native-gesture-handler/2.15.0/2.16.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/react-native-gesture-handler/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-native-gesture-handler/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-native-gesture-handler/2.15.0/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-native-gesture-handler/2.15.0/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>software-mansion/react-native-gesture-handler
(react-native-gesture-handler)</summary>

###
[`v2.16.0`](https://togithub.com/software-mansion/react-native-gesture-handler/releases/tag/2.16.0)

[Compare
Source](https://togithub.com/software-mansion/react-native-gesture-handler/compare/2.15.0...2.16.0)

#### ❗ Important changes

- Add `mouseButton` implementation on Android by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2680
- Add `pointerType` to event by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2760
- feat: add necessary changes for new arch on RN 0.74 by
[@&#8203;WoLewicki](https://togithub.com/WoLewicki) in
[software-mansion/react-native-gesture-handler#2766
- Add `touchAction` prop. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2787
- Allows to apply different border radius to RectButton component by
[@&#8203;camilossantos2809](https://togithub.com/camilossantos2809) in
[software-mansion/react-native-gesture-handler#2792
- Improve RectButton border styles on Android by
[@&#8203;camilossantos2809](https://togithub.com/camilossantos2809) in
[software-mansion/react-native-gesture-handler#2798
- Make FlingHandler use velocity as the activation metric. by
[@&#8203;LatekVo](https://togithub.com/LatekVo) in
[software-mansion/react-native-gesture-handler#2796
- Add corner area detection to Fling gesture. by
[@&#8203;LatekVo](https://togithub.com/LatekVo) in
[software-mansion/react-native-gesture-handler#2807

#### 🐛 Bug fixes

- Add rotation and pinch velocity on macOS by
[@&#8203;jfedak](https://togithub.com/jfedak) in
[software-mansion/react-native-gesture-handler#2706
- Fix `ConcurrentModificationException`. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2750
- Fix pointers count on iOS by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2755
- fix: remove usage of bridge uimanager in one more place by
[@&#8203;WoLewicki](https://togithub.com/WoLewicki) in
[software-mansion/react-native-gesture-handler#2768
- Remove hardcoded version of `cocoapods` by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2772
- Move `customDirectEventTypes` to separate files. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2786
- Fix nested taps activation by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2759
- Cancel handlers by `NativeViewGestureHandler` by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2788
- Make simultaneous handlers always symmetric on iOS by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2800
- Update mocks to work when testing for the new arch by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2801
- fix(web): After swiping closed, the Swipeable component cannot be
swiped open again by [@&#8203;yatessss](https://togithub.com/yatessss)
in
[software-mansion/react-native-gesture-handler#2802
- Remove event listeners on handler drop by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2815
- Use correct origin point for calculating the absolute position on
Android by [@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2826
- Add check when removing handlers from orchestrator by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2831
- Use `locationOfTouch:inView` over `locationInView` for focal point by
[@&#8203;rrebase](https://togithub.com/rrebase) in
[software-mansion/react-native-gesture-handler#2834

#### 👍 Improvements

- Pass `{ flex: 1 }` as default style to `GestureHandlerRootView` by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2757
- Stop sending event on pressure changes by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2762
- feat: use proper APIs for newest RN versions on new arch by
[@&#8203;WoLewicki](https://togithub.com/WoLewicki) in
[software-mansion/react-native-gesture-handler#2767
- Remove circular dependencies on web by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2783
- Address compilation warnings by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2597
- Add `userSelect` to TouchableOpacity by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2812
- Web `Orchestrator` refactor. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2819
- Replace `mach_absolute_time` with `CACurrentMediaTime` by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2830

#### 🔢 Miscellaneous

- Restyle Gesture Handler Documentation by
[@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) in
[software-mansion/react-native-gesture-handler#2753
- Fix incorrect link to Github repository by
[@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) in
[software-mansion/react-native-gesture-handler#2761
- Add links to each gesture on landing in docs by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2763
- Update pods on CI by [@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2765
- Restyle steps in docs by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2774
- Fix wrong admonition color on initial render by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2779
- Various style fixes in docs by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2780
- Add closable App.js banner to docs landing page by
[@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) in
[software-mansion/react-native-gesture-handler#2781
- Add `mouseButton` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2789
- Add `pointerType` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2791
- Add `enableContextMenu` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2790
- Add `touchAction` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2794
- docs: change accent color to blue by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2795
- Change `MouseButton` export type. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2804
- Fix babel config in the root project by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2717

#### New Contributors

- [@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) made
their first contribution in
[software-mansion/react-native-gesture-handler#2753
- [@&#8203;camilossantos2809](https://togithub.com/camilossantos2809)
made their first contribution in
[software-mansion/react-native-gesture-handler#2792
- [@&#8203;yatessss](https://togithub.com/yatessss) made their first
contribution in
[software-mansion/react-native-gesture-handler#2802
- [@&#8203;LatekVo](https://togithub.com/LatekVo) made their first
contribution in
[software-mansion/react-native-gesture-handler#2796
- [@&#8203;rrebase](https://togithub.com/rrebase) made their first
contribution in
[software-mansion/react-native-gesture-handler#2834

**Full Changelog**:
software-mansion/react-native-gesture-handler@2.15.0...2.16.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 5pm,every weekend" in timezone
America/Los_Angeles, Automerge - "after 5pm,every weekend" in timezone
America/Los_Angeles.

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/valora-inc/wallet).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: valora-bot <valorabot@valoraapp.com>
github-merge-queue bot pushed a commit to valora-inc/wallet that referenced this pull request Apr 13, 2024
…5237)

[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[react-native-gesture-handler](https://togithub.com/software-mansion/react-native-gesture-handler)
| [`^2.15.0` ->
`^2.16.0`](https://renovatebot.com/diffs/npm/react-native-gesture-handler/2.15.0/2.16.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/react-native-gesture-handler/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-native-gesture-handler/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-native-gesture-handler/2.15.0/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-native-gesture-handler/2.15.0/2.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>software-mansion/react-native-gesture-handler
(react-native-gesture-handler)</summary>

###
[`v2.16.0`](https://togithub.com/software-mansion/react-native-gesture-handler/releases/tag/2.16.0)

[Compare
Source](https://togithub.com/software-mansion/react-native-gesture-handler/compare/2.15.0...2.16.0)

#### ❗ Important changes

- Add `mouseButton` implementation on Android by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2680
- Add `pointerType` to event by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2760
- feat: add necessary changes for new arch on RN 0.74 by
[@&#8203;WoLewicki](https://togithub.com/WoLewicki) in
[software-mansion/react-native-gesture-handler#2766
- Add `touchAction` prop. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2787
- Allows to apply different border radius to RectButton component by
[@&#8203;camilossantos2809](https://togithub.com/camilossantos2809) in
[software-mansion/react-native-gesture-handler#2792
- Improve RectButton border styles on Android by
[@&#8203;camilossantos2809](https://togithub.com/camilossantos2809) in
[software-mansion/react-native-gesture-handler#2798
- Make FlingHandler use velocity as the activation metric. by
[@&#8203;LatekVo](https://togithub.com/LatekVo) in
[software-mansion/react-native-gesture-handler#2796
- Add corner area detection to Fling gesture. by
[@&#8203;LatekVo](https://togithub.com/LatekVo) in
[software-mansion/react-native-gesture-handler#2807

#### 🐛 Bug fixes

- Add rotation and pinch velocity on macOS by
[@&#8203;jfedak](https://togithub.com/jfedak) in
[software-mansion/react-native-gesture-handler#2706
- Fix `ConcurrentModificationException`. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2750
- Fix pointers count on iOS by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2755
- fix: remove usage of bridge uimanager in one more place by
[@&#8203;WoLewicki](https://togithub.com/WoLewicki) in
[software-mansion/react-native-gesture-handler#2768
- Remove hardcoded version of `cocoapods` by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2772
- Move `customDirectEventTypes` to separate files. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2786
- Fix nested taps activation by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2759
- Cancel handlers by `NativeViewGestureHandler` by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2788
- Make simultaneous handlers always symmetric on iOS by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2800
- Update mocks to work when testing for the new arch by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2801
- fix(web): After swiping closed, the Swipeable component cannot be
swiped open again by [@&#8203;yatessss](https://togithub.com/yatessss)
in
[software-mansion/react-native-gesture-handler#2802
- Remove event listeners on handler drop by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2815
- Use correct origin point for calculating the absolute position on
Android by [@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2826
- Add check when removing handlers from orchestrator by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2831
- Use `locationOfTouch:inView` over `locationInView` for focal point by
[@&#8203;rrebase](https://togithub.com/rrebase) in
[software-mansion/react-native-gesture-handler#2834

#### 👍 Improvements

- Pass `{ flex: 1 }` as default style to `GestureHandlerRootView` by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2757
- Stop sending event on pressure changes by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2762
- feat: use proper APIs for newest RN versions on new arch by
[@&#8203;WoLewicki](https://togithub.com/WoLewicki) in
[software-mansion/react-native-gesture-handler#2767
- Remove circular dependencies on web by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2783
- Address compilation warnings by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2597
- Add `userSelect` to TouchableOpacity by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2812
- Web `Orchestrator` refactor. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2819
- Replace `mach_absolute_time` with `CACurrentMediaTime` by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2830

#### 🔢 Miscellaneous

- Restyle Gesture Handler Documentation by
[@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) in
[software-mansion/react-native-gesture-handler#2753
- Fix incorrect link to Github repository by
[@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) in
[software-mansion/react-native-gesture-handler#2761
- Add links to each gesture on landing in docs by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2763
- Update pods on CI by [@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2765
- Restyle steps in docs by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2774
- Fix wrong admonition color on initial render by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2779
- Various style fixes in docs by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2780
- Add closable App.js banner to docs landing page by
[@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) in
[software-mansion/react-native-gesture-handler#2781
- Add `mouseButton` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2789
- Add `pointerType` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2791
- Add `enableContextMenu` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2790
- Add `touchAction` description to docs. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2794
- docs: change accent color to blue by
[@&#8203;kacperkapusciak](https://togithub.com/kacperkapusciak) in
[software-mansion/react-native-gesture-handler#2795
- Change `MouseButton` export type. by
[@&#8203;m-bert](https://togithub.com/m-bert) in
[software-mansion/react-native-gesture-handler#2804
- Fix babel config in the root project by
[@&#8203;j-piasecki](https://togithub.com/j-piasecki) in
[software-mansion/react-native-gesture-handler#2717

#### New Contributors

- [@&#8203;patrycjakalinska](https://togithub.com/patrycjakalinska) made
their first contribution in
[software-mansion/react-native-gesture-handler#2753
- [@&#8203;camilossantos2809](https://togithub.com/camilossantos2809)
made their first contribution in
[software-mansion/react-native-gesture-handler#2792
- [@&#8203;yatessss](https://togithub.com/yatessss) made their first
contribution in
[software-mansion/react-native-gesture-handler#2802
- [@&#8203;LatekVo](https://togithub.com/LatekVo) made their first
contribution in
[software-mansion/react-native-gesture-handler#2796
- [@&#8203;rrebase](https://togithub.com/rrebase) made their first
contribution in
[software-mansion/react-native-gesture-handler#2834

**Full Changelog**:
software-mansion/react-native-gesture-handler@2.15.0...2.16.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 5pm,every weekend" in timezone
America/Los_Angeles, Automerge - "after 5pm,every weekend" in timezone
America/Los_Angeles.

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/valora-inc/wallet).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: valora-bot <valorabot@valoraapp.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Pinch gesture focalX & focalY truncated on iOS
2 participants