Commit 3082179
## Description
When a modal has a header (`isHeaderInModal`), the content is wrapped in
a nested `ScreenStack`/`Screen`. The `scrollEdgeEffects` prop was only
set on the outer modal screen, which doesn't contain the scroll view.
This forwards the prop to the inner screen where the scroll view
actually lives.
Also adds `scrollEdgeEffect` props to `ModalScreenNativeComponent`
codegen spec for the `headerShown: false` case, where the modal screen
directly contains the scroll view.
Closes #3816.
## Changes
- Destructured `scrollEdgeEffects` in `ScreenStackItem.tsx` and
forwarded it to the inner `<Screen>` when `isHeaderInModal` is true. The
outer modal screen receives `undefined` since it has no scroll view.
- Added `bottomScrollEdgeEffect`, `leftScrollEdgeEffect`,
`rightScrollEdgeEffect`, and `topScrollEdgeEffect` props to
`ModalScreenNativeComponent.ts` codegen spec.
## Test plan
Test with `Test3816` in the apps example project.
1. Open the app and navigate to `Test3816`
2. Tap "Open formSheet modal"
3. Verify that scroll edge effects on the modal's scroll view match the
configured values (`hidden` for all edges)
4. Compare with a modal using `headerShown: false` to verify that case
also works
## Checklist
- [x] Included code example that can be used to test this change.
- [x] Updated / created local changelog entries in relevant test files.
- [ ] For visual changes, included screenshots / GIFs / recordings
documenting the change.
- [x] For API changes, updated relevant public types.
- [ ] Ensured that CI passes
---------
Co-authored-by: Krzysztof Ligarski <63918941+kligarski@users.noreply.github.com>
1 parent 6cf26f6 commit 3082179
4 files changed
Lines changed: 85 additions & 2 deletions
File tree
- apps/src/tests/issue-tests
- src
- components
- fabric
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
| 186 | + | |
186 | 187 | | |
187 | 188 | | |
188 | 189 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
48 | 49 | | |
49 | 50 | | |
50 | 51 | | |
| |||
79 | 80 | | |
80 | 81 | | |
81 | 82 | | |
82 | | - | |
83 | | - | |
| 83 | + | |
| 84 | + | |
84 | 85 | | |
85 | 86 | | |
86 | 87 | | |
| |||
177 | 178 | | |
178 | 179 | | |
179 | 180 | | |
| 181 | + | |
180 | 182 | | |
181 | 183 | | |
182 | 184 | | |
| |||
187 | 189 | | |
188 | 190 | | |
189 | 191 | | |
| 192 | + | |
190 | 193 | | |
191 | 194 | | |
192 | 195 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
| 62 | + | |
| 63 | + | |
62 | 64 | | |
63 | 65 | | |
64 | 66 | | |
| |||
107 | 109 | | |
108 | 110 | | |
109 | 111 | | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
110 | 116 | | |
111 | 117 | | |
112 | 118 | | |
| |||
0 commit comments