Commit 395e7f7
committed
[Fiber] Track Appearing Named ViewTransition in the accumulateSuspenseyCommit Phase (facebook#32254)
When a named ViewTransition component unmounts in one place and mounts
in a different place we need to match these up so we know a pair has
been created. Since the unmounts are tracked in the snapshot phase we
need some way to track the mounts before that.
Originally the way I did that is by reusing the render phase since there
was no other phase in the commit before that. However, that's not quite
correct. Just because something is visited in render doesn't mean it'll
commit. E.g. if that tree ends up suspending or erroring. Which would
lead to a false positive on match. The unmount shouldn't animate in that
case.
(Un)fortunately we have already added a traversal before the snapshot
phase for tracking suspensey CSS. The `accumulateSuspenseyCommit` phase.
This needs to find new mounts of Suspensey CSS or if there was a
reappearing Offscreen boundary it needs to find any Suspensey CSS
already inside that tree. This is exactly the same traversal we need to
find newly appearing View Transition components. So we can just reuse
that.
DiffTrain build for [4b3728f](facebook@4b3728f)1 parent e3cd7a8 commit 395e7f7
File tree
23 files changed
+590
-807
lines changed- compiled-rn
- facebook-fbsource/xplat/js
- RKJSModules/vendor/react
- react-dom/cjs
- react-test-renderer/cjs
- react/cjs
- react-native-github/Libraries/Renderer
- implementations
23 files changed
+590
-807
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
428 | 428 | | |
429 | 429 | | |
430 | 430 | | |
431 | | - | |
| 431 | + | |
432 | 432 | | |
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
| 206 | + | |
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
| 206 | + | |
Lines changed: 171 additions & 187 deletions
Large diffs are not rendered by default.
Lines changed: 32 additions & 46 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
10919 | 10919 | | |
10920 | 10920 | | |
10921 | 10921 | | |
10922 | | - | |
10923 | 10922 | | |
10924 | 10923 | | |
10925 | 10924 | | |
| |||
11119 | 11118 | | |
11120 | 11119 | | |
11121 | 11120 | | |
11122 | | - | |
11123 | 11121 | | |
11124 | 11122 | | |
11125 | 11123 | | |
| |||
11140 | 11138 | | |
11141 | 11139 | | |
11142 | 11140 | | |
11143 | | - | |
11144 | 11141 | | |
11145 | 11142 | | |
11146 | 11143 | | |
| |||
11163 | 11160 | | |
11164 | 11161 | | |
11165 | 11162 | | |
11166 | | - | |
11167 | 11163 | | |
11168 | 11164 | | |
11169 | 11165 | | |
| |||
11178 | 11174 | | |
11179 | 11175 | | |
11180 | 11176 | | |
11181 | | - | |
11182 | | - | |
11183 | | - | |
| 11177 | + | |
| 11178 | + | |
11184 | 11179 | | |
11185 | 11180 | | |
11186 | 11181 | | |
11187 | | - | |
| 11182 | + | |
11188 | 11183 | | |
11189 | 11184 | | |
11190 | 11185 | | |
| |||
11196 | 11191 | | |
11197 | 11192 | | |
11198 | 11193 | | |
11199 | | - | |
11200 | 11194 | | |
11201 | 11195 | | |
11202 | 11196 | | |
| |||
11216 | 11210 | | |
11217 | 11211 | | |
11218 | 11212 | | |
11219 | | - | |
11220 | 11213 | | |
11221 | 11214 | | |
11222 | 11215 | | |
| |||
11328 | 11321 | | |
11329 | 11322 | | |
11330 | 11323 | | |
11331 | | - | |
11332 | 11324 | | |
11333 | 11325 | | |
11334 | 11326 | | |
| |||
11771 | 11763 | | |
11772 | 11764 | | |
11773 | 11765 | | |
11774 | | - | |
11775 | 11766 | | |
11776 | 11767 | | |
11777 | 11768 | | |
| |||
11820 | 11811 | | |
11821 | 11812 | | |
11822 | 11813 | | |
11823 | | - | |
11824 | | - | |
11825 | | - | |
11826 | | - | |
11827 | | - | |
11828 | | - | |
| 11814 | + | |
11829 | 11815 | | |
11830 | 11816 | | |
11831 | 11817 | | |
| |||
12512 | 12498 | | |
12513 | 12499 | | |
12514 | 12500 | | |
12515 | | - | |
12516 | | - | |
12517 | | - | |
| 12501 | + | |
| 12502 | + | |
| 12503 | + | |
12518 | 12504 | | |
12519 | | - | |
12520 | | - | |
12521 | | - | |
12522 | | - | |
12523 | | - | |
12524 | | - | |
12525 | | - | |
| 12505 | + | |
| 12506 | + | |
| 12507 | + | |
| 12508 | + | |
| 12509 | + | |
| 12510 | + | |
| 12511 | + | |
12526 | 12512 | | |
12527 | | - | |
12528 | | - | |
| 12513 | + | |
| 12514 | + | |
12529 | 12515 | | |
12530 | 12516 | | |
12531 | 12517 | | |
| |||
16015 | 16001 | | |
16016 | 16002 | | |
16017 | 16003 | | |
16018 | | - | |
| 16004 | + | |
16019 | 16005 | | |
16020 | | - | |
16021 | | - | |
| 16006 | + | |
| 16007 | + | |
16022 | 16008 | | |
16023 | 16009 | | |
16024 | 16010 | | |
16025 | 16011 | | |
16026 | | - | |
16027 | | - | |
| 16012 | + | |
| 16013 | + | |
16028 | 16014 | | |
16029 | 16015 | | |
16030 | 16016 | | |
| |||
16044 | 16030 | | |
16045 | 16031 | | |
16046 | 16032 | | |
16047 | | - | |
| 16033 | + | |
16048 | 16034 | | |
16049 | | - | |
| 16035 | + | |
16050 | 16036 | | |
16051 | 16037 | | |
16052 | | - | |
| 16038 | + | |
16053 | 16039 | | |
16054 | 16040 | | |
16055 | | - | |
| 16041 | + | |
16056 | 16042 | | |
16057 | | - | |
16058 | | - | |
| 16043 | + | |
| 16044 | + | |
16059 | 16045 | | |
16060 | 16046 | | |
16061 | | - | |
16062 | | - | |
| 16047 | + | |
| 16048 | + | |
16063 | 16049 | | |
16064 | | - | |
| 16050 | + | |
16065 | 16051 | | |
16066 | 16052 | | |
16067 | 16053 | | |
| |||
16155 | 16141 | | |
16156 | 16142 | | |
16157 | 16143 | | |
16158 | | - | |
| 16144 | + | |
0 commit comments