mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
Land enableNonInterruptingNormalPri (#20859)
This commit is contained in:
@@ -36,10 +36,7 @@ export type Lane = number;
|
||||
export type LaneMap<T> = Array<T>;
|
||||
|
||||
import invariant from 'shared/invariant';
|
||||
import {
|
||||
enableCache,
|
||||
enableNonInterruptingNormalPri,
|
||||
} from 'shared/ReactFeatureFlags';
|
||||
import {enableCache} from 'shared/ReactFeatureFlags';
|
||||
|
||||
import {
|
||||
ImmediatePriority as ImmediateSchedulerPriority,
|
||||
@@ -348,8 +345,7 @@ export function getNextLanes(root: FiberRoot, wipLanes: Lanes): Lanes {
|
||||
// Default priority updates should not interrupt transition updates. The
|
||||
// only difference between default updates and transition updates is that
|
||||
// default updates do not support refresh transitions.
|
||||
(enableNonInterruptingNormalPri &&
|
||||
nextLanePriority === DefaultLanePriority &&
|
||||
(nextLanePriority === DefaultLanePriority &&
|
||||
wipLanePriority === TransitionPriority)
|
||||
) {
|
||||
// Keep working on the existing in-progress tree. Do not interrupt.
|
||||
|
||||
@@ -36,10 +36,7 @@ export type Lane = number;
|
||||
export type LaneMap<T> = Array<T>;
|
||||
|
||||
import invariant from 'shared/invariant';
|
||||
import {
|
||||
enableCache,
|
||||
enableNonInterruptingNormalPri,
|
||||
} from 'shared/ReactFeatureFlags';
|
||||
import {enableCache} from 'shared/ReactFeatureFlags';
|
||||
|
||||
import {
|
||||
ImmediatePriority as ImmediateSchedulerPriority,
|
||||
@@ -348,8 +345,7 @@ export function getNextLanes(root: FiberRoot, wipLanes: Lanes): Lanes {
|
||||
// Default priority updates should not interrupt transition updates. The
|
||||
// only difference between default updates and transition updates is that
|
||||
// default updates do not support refresh transitions.
|
||||
(enableNonInterruptingNormalPri &&
|
||||
nextLanePriority === DefaultLanePriority &&
|
||||
(nextLanePriority === DefaultLanePriority &&
|
||||
wipLanePriority === TransitionPriority)
|
||||
) {
|
||||
// Keep working on the existing in-progress tree. Do not interrupt.
|
||||
|
||||
+10
-26
@@ -946,33 +946,17 @@ describe('ReactTransition', () => {
|
||||
updateNormalPri();
|
||||
});
|
||||
|
||||
if (gate(flags => flags.enableNonInterruptingNormalPri)) {
|
||||
expect(Scheduler).toHaveYielded([
|
||||
// Finish transition update.
|
||||
'Normal pri: 0',
|
||||
'Commit',
|
||||
expect(Scheduler).toHaveYielded([
|
||||
// Finish transition update.
|
||||
'Normal pri: 0',
|
||||
'Commit',
|
||||
|
||||
// Normal pri update.
|
||||
'Transition pri: 1',
|
||||
'Normal pri: 1',
|
||||
'Commit',
|
||||
]);
|
||||
// Normal pri update.
|
||||
'Transition pri: 1',
|
||||
'Normal pri: 1',
|
||||
'Commit',
|
||||
]);
|
||||
|
||||
expect(root).toMatchRenderedOutput('Transition pri: 1, Normal pri: 1');
|
||||
} else {
|
||||
expect(Scheduler).toHaveYielded([
|
||||
// Interrupt! Render normal pri update.
|
||||
'Transition pri: 0',
|
||||
'Normal pri: 1',
|
||||
'Commit',
|
||||
|
||||
// Restart transition update.
|
||||
'Transition pri: 1',
|
||||
'Normal pri: 1',
|
||||
'Commit',
|
||||
]);
|
||||
|
||||
expect(root).toMatchRenderedOutput('Transition pri: 1, Normal pri: 1');
|
||||
}
|
||||
expect(root).toMatchRenderedOutput('Transition pri: 1, Normal pri: 1');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -147,8 +147,6 @@ export const enableRecursiveCommitTraversal = false;
|
||||
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
@@ -57,7 +57,6 @@ export const enableUseRefAccessWarning = false;
|
||||
|
||||
export const enableRecursiveCommitTraversal = false;
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
|
||||
@@ -56,7 +56,6 @@ export const enableUseRefAccessWarning = false;
|
||||
|
||||
export const enableRecursiveCommitTraversal = false;
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
|
||||
@@ -56,7 +56,6 @@ export const enableUseRefAccessWarning = false;
|
||||
|
||||
export const enableRecursiveCommitTraversal = false;
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
|
||||
@@ -56,7 +56,6 @@ export const enableUseRefAccessWarning = false;
|
||||
|
||||
export const enableRecursiveCommitTraversal = false;
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
|
||||
@@ -56,7 +56,6 @@ export const enableUseRefAccessWarning = false;
|
||||
|
||||
export const enableRecursiveCommitTraversal = false;
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
|
||||
@@ -56,7 +56,6 @@ export const enableUseRefAccessWarning = false;
|
||||
|
||||
export const enableRecursiveCommitTraversal = false;
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
|
||||
@@ -56,7 +56,6 @@ export const enableUseRefAccessWarning = false;
|
||||
|
||||
export const enableRecursiveCommitTraversal = false;
|
||||
export const disableSchedulerTimeoutInWorkLoop = false;
|
||||
export const enableNonInterruptingNormalPri = false;
|
||||
export const enableDiscreteEventMicroTasks = false;
|
||||
export const enableNativeEventPriorityInference = false;
|
||||
|
||||
|
||||
@@ -55,6 +55,5 @@ export const enableUseRefAccessWarning = __VARIANT__;
|
||||
|
||||
export const enableProfilerNestedUpdateScheduledHook = __VARIANT__;
|
||||
export const disableSchedulerTimeoutInWorkLoop = __VARIANT__;
|
||||
export const enableNonInterruptingNormalPri = __VARIANT__;
|
||||
export const enableDiscreteEventMicroTasks = __VARIANT__;
|
||||
export const enableNativeEventPriorityInference = __VARIANT__;
|
||||
|
||||
@@ -31,7 +31,6 @@ export const {
|
||||
enableUseRefAccessWarning,
|
||||
disableNativeComponentFrames,
|
||||
disableSchedulerTimeoutInWorkLoop,
|
||||
enableNonInterruptingNormalPri,
|
||||
enableDiscreteEventMicroTasks,
|
||||
enableNativeEventPriorityInference,
|
||||
} = dynamicFeatureFlags;
|
||||
|
||||
Reference in New Issue
Block a user