You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Summary:
Implement the cursor style prop for iOS (and consequently, visionOS), as described in this RFC: react-native-community/discussions-and-proposals#750
See related PR in React Native macOS, where we target macOS and visionOS (not running in iPad compatibility mode) with the same change: microsoft#2080
Docs update: facebook/react-native-website#4033
## Changelog:
[IOS] [ADDED] - Implement cursor style prop
Pull Request resolved: #43078
Test Plan:
See the added example page, running on iOS with the new architecture enabled. This also runs the same on the old architecture.
https://github.com/facebook/react-native/assets/6722175/2af60a0c-1c1f-45c4-8d66-a20f6d5815df
See the example page running on all three apple platforms. The JS is slightly different because:
1. The "macOS Cursors" example is not part of this PR but the one in React Native macOS.
2. This PR (and exapmple) has went though a bunch of iterations and It got hard taking videos of every change 😅
https://github.com/facebook/react-native/assets/6722175/7775ba7c-8624-4873-a735-7665b94b7233
## Notes
- React Native macOS added the cursor prop to View with microsoft#760 and Text with microsoft#1469 . Much of the implementation comes from there.
- Due to an Apple bug, as of iOS 17.4 Beta 4, the shape of the iOS cursor hover effect doesn't render in the correct bounds (but it does on visionOS). I've worked around it with an ifdef. The result is that the hover effect will work on iOS and visionOS, but not iPad apps running in compatibility mode on visionOS.
Reviewed By: NickGerleman
Differential Revision: D54512945
Pulled By: vincentriemer
fbshipit-source-id: 699e3a01a901f55a466a2c1a19f667aede5aab80
0 commit comments