Skip to content

Commit 0412f0c

Browse files
authored
add offscreen state node (#24026)
Add state node on Offscreen fibers with id (in preparation for transition tracing)
1 parent d9677e3 commit 0412f0c

3 files changed

Lines changed: 14 additions & 2 deletions

File tree

‎packages/react-reconciler/src/ReactFiber.new.js‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@ import type {WorkTag} from './ReactWorkTags';
1515
importtype{TypeOfMode}from'./ReactTypeOfMode';
1616
importtype{Lanes}from'./ReactFiberLane.new';
1717
importtype{SuspenseInstance,Props}from'./ReactFiberHostConfig';
18-
importtype{OffscreenProps}from'./ReactFiberOffscreenComponent';
18+
importtype{
19+
OffscreenProps,
20+
OffscreenInstance,
21+
}from'./ReactFiberOffscreenComponent';
1922

2023
import{
2124
createRootStrictEffectsByDefault,
@@ -735,6 +738,8 @@ export function createFiberFromOffscreen(
735738
constfiber=createFiber(OffscreenComponent,pendingProps,key,mode);
736739
fiber.elementType=REACT_OFFSCREEN_TYPE;
737740
fiber.lanes=lanes;
741+
constprimaryChildInstance: OffscreenInstance={};
742+
fiber.stateNode=primaryChildInstance;
738743
returnfiber;
739744
}
740745

‎packages/react-reconciler/src/ReactFiber.old.js‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@ import type {WorkTag} from './ReactWorkTags';
1515
importtype{TypeOfMode}from'./ReactTypeOfMode';
1616
importtype{Lanes}from'./ReactFiberLane.old';
1717
importtype{SuspenseInstance,Props}from'./ReactFiberHostConfig';
18-
importtype{OffscreenProps}from'./ReactFiberOffscreenComponent';
18+
importtype{
19+
OffscreenProps,
20+
OffscreenInstance,
21+
}from'./ReactFiberOffscreenComponent';
1922

2023
import{
2124
createRootStrictEffectsByDefault,
@@ -735,6 +738,8 @@ export function createFiberFromOffscreen(
735738
constfiber=createFiber(OffscreenComponent,pendingProps,key,mode);
736739
fiber.elementType=REACT_OFFSCREEN_TYPE;
737740
fiber.lanes=lanes;
741+
constprimaryChildInstance: OffscreenInstance={};
742+
fiber.stateNode=primaryChildInstance;
738743
returnfiber;
739744
}
740745

‎packages/react-reconciler/src/ReactFiberOffscreenComponent.js‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,5 @@ export type OffscreenState = {|
3131
baseLanes: Lanes,
3232
cachePool: SpawnedCachePool|null,
3333
|};
34+
35+
exporttypeOffscreenInstance={};

0 commit comments

Comments
 (0)