Skip to content

feat(ios): add scroll edge effect support for iOS 26+#595

Merged
lodev09 merged 7 commits intomainfrom
feat/scroll-edge-effect
Mar 9, 2026
Merged

feat(ios): add scroll edge effect support for iOS 26+#595
lodev09 merged 7 commits intomainfrom
feat/scroll-edge-effect

Conversation

@lodev09
Copy link
Copy Markdown
Owner

@lodev09 lodev09 commented Mar 9, 2026

Summary

  • Add topScrollEdgeEffect and bottomScrollEdgeEffect options to scrollableOptions
  • Controls UIScrollEdgeEffect style (automatic, hard, soft, hidden) on scrollable sheet content
  • Gated with compile-time (RNTS_IPHONE_OS_VERSION_AVAILABLE) and runtime (@available) checks
  • No-op on iOS < 26

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update

Test Plan

  • Present a scrollable sheet with scrollableOptions={{ topScrollEdgeEffect: 'soft' }}
  • Verify blur/gradient effect at top edge when scrolling on iOS 26+
  • Test 'hidden' disables the effect
  • Verify no-op on iOS < 26

Checklist

  • I tested on iOS
  • I tested on Android
  • I tested on Web
  • I updated the documentation (if needed)
  • I added a changelog entry (if needed)

Add topScrollEdgeEffect and bottomScrollEdgeEffect to
scrollableOptions for UIScrollEdgeEffect style control.
@vercel
Copy link
Copy Markdown

vercel Bot commented Mar 9, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
react-native-true-sheet Ready Ready Preview, Comment Mar 9, 2026 9:05pm

Request Review

lodev09 added 2 commits March 10, 2026 03:29
…ooter

Use UIScrollEdgeElementContainerInteraction on iOS 26+ to apply
automatic blur/gradient edge effects on header and footer views
when content scrolls behind them.
Also update docs with scroll edge effect guide and type reference.
…review issues

- Add @available guard for setupEdgeInteractions in setupScrollable
- Make scrollView param nullable in edge interaction methods
- Extract shared edge interaction logic into UIView+ScrollEdgeInteraction
- Remove redundant setupEdgeInteractions calls from mount/scrollViewDidChange
@lodev09 lodev09 merged commit e45a918 into main Mar 9, 2026
6 checks passed
@lodev09 lodev09 deleted the feat/scroll-edge-effect branch March 9, 2026 21:10
@lodev09
Copy link
Copy Markdown
Owner Author

lodev09 commented Apr 3, 2026

🚀 This pull request is included in v3.10.0. See Release 3.10.0 for release notes.

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.

1 participant