From 9d637844e9761a29a49bc53a9b41244d683f89e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Markb=C3=A5ge?= Date: Fri, 27 Sep 2019 19:46:56 -0700 Subject: [PATCH] Remove enableUserBlockingEvents flag (#16882) Seems like this worked out. We can clean up the flag now. --- .../src/events/DOMEventResponderSystem.js | 11 +++-------- .../src/events/ReactDOMEventListener.js | 17 +++++------------ .../ChangeEventPlugin-test.internal.js | 2 -- .../src/dom/__tests__/Hover-test.internal.js | 1 - .../src/dom/__tests__/Input-test.internal.js | 1 - .../__tests__/MixedResponders-test-internal.js | 1 - .../src/ReactFabricEventResponderSystem.js | 11 +++-------- packages/shared/ReactFeatureFlags.js | 5 ----- .../shared/forks/ReactFeatureFlags.native-fb.js | 1 - .../forks/ReactFeatureFlags.native-oss.js | 1 - .../forks/ReactFeatureFlags.persistent.js | 1 - .../forks/ReactFeatureFlags.test-renderer.js | 1 - .../ReactFeatureFlags.test-renderer.www.js | 1 - packages/shared/forks/ReactFeatureFlags.www.js | 1 - 14 files changed, 11 insertions(+), 44 deletions(-) diff --git a/packages/react-dom/src/events/DOMEventResponderSystem.js b/packages/react-dom/src/events/DOMEventResponderSystem.js index 2d22140d6f12..7cd5940a5eb5 100644 --- a/packages/react-dom/src/events/DOMEventResponderSystem.js +++ b/packages/react-dom/src/events/DOMEventResponderSystem.js @@ -39,7 +39,6 @@ import { UserBlockingEvent, DiscreteEvent, } from 'shared/ReactTypes'; -import {enableUserBlockingEvents} from 'shared/ReactFeatureFlags'; // Intentionally not named imports because Rollup would use dynamic dispatch for // CommonJS interop named imports. @@ -104,13 +103,9 @@ const eventResponderContext: ReactDOMResponderContext = { break; } case UserBlockingEvent: { - if (enableUserBlockingEvents) { - runWithPriority(UserBlockingPriority, () => - executeUserEventHandler(eventListener, eventValue), - ); - } else { - executeUserEventHandler(eventListener, eventValue); - } + runWithPriority(UserBlockingPriority, () => + executeUserEventHandler(eventListener, eventValue), + ); break; } case ContinuousEvent: { diff --git a/packages/react-dom/src/events/ReactDOMEventListener.js b/packages/react-dom/src/events/ReactDOMEventListener.js index d0287e3d8328..db4ec6f8690d 100644 --- a/packages/react-dom/src/events/ReactDOMEventListener.js +++ b/packages/react-dom/src/events/ReactDOMEventListener.js @@ -62,10 +62,7 @@ import SimpleEventPlugin from './SimpleEventPlugin'; import {getRawEventName} from './DOMTopLevelEventTypes'; import {passiveBrowserEventsSupported} from './checkPassiveEvents'; -import { - enableFlareAPI, - enableUserBlockingEvents, -} from 'shared/ReactFeatureFlags'; +import {enableFlareAPI} from 'shared/ReactFeatureFlags'; import { UserBlockingEvent, ContinuousEvent, @@ -298,14 +295,10 @@ function dispatchUserBlockingUpdate( eventSystemFlags, nativeEvent, ) { - if (enableUserBlockingEvents) { - runWithPriority( - UserBlockingPriority, - dispatchEvent.bind(null, topLevelType, eventSystemFlags, nativeEvent), - ); - } else { - dispatchEvent(topLevelType, eventSystemFlags, nativeEvent); - } + runWithPriority( + UserBlockingPriority, + dispatchEvent.bind(null, topLevelType, eventSystemFlags, nativeEvent), + ); } function dispatchEventForPluginEventSystem( diff --git a/packages/react-dom/src/events/__tests__/ChangeEventPlugin-test.internal.js b/packages/react-dom/src/events/__tests__/ChangeEventPlugin-test.internal.js index 5146b4c19db8..ab8b5ee246a2 100644 --- a/packages/react-dom/src/events/__tests__/ChangeEventPlugin-test.internal.js +++ b/packages/react-dom/src/events/__tests__/ChangeEventPlugin-test.internal.js @@ -750,8 +750,6 @@ describe('ChangeEventPlugin', () => { it('mouse enter/leave should be user-blocking but not discrete', async () => { // This is currently behind a feature flag jest.resetModules(); - ReactFeatureFlags = require('shared/ReactFeatureFlags'); - ReactFeatureFlags.enableUserBlockingEvents = true; React = require('react'); ReactDOM = require('react-dom'); TestUtils = require('react-dom/test-utils'); diff --git a/packages/react-interactions/events/src/dom/__tests__/Hover-test.internal.js b/packages/react-interactions/events/src/dom/__tests__/Hover-test.internal.js index 6ea168f242df..7aa5b42bb622 100644 --- a/packages/react-interactions/events/src/dom/__tests__/Hover-test.internal.js +++ b/packages/react-interactions/events/src/dom/__tests__/Hover-test.internal.js @@ -22,7 +22,6 @@ function initializeModules(hasPointerEvents) { setPointerEvent(hasPointerEvents); ReactFeatureFlags = require('shared/ReactFeatureFlags'); ReactFeatureFlags.enableFlareAPI = true; - ReactFeatureFlags.enableUserBlockingEvents = true; React = require('react'); ReactDOM = require('react-dom'); HoverResponder = require('react-interactions/events/hover').HoverResponder; diff --git a/packages/react-interactions/events/src/dom/__tests__/Input-test.internal.js b/packages/react-interactions/events/src/dom/__tests__/Input-test.internal.js index 5cd8b8524c7d..de8c45321659 100644 --- a/packages/react-interactions/events/src/dom/__tests__/Input-test.internal.js +++ b/packages/react-interactions/events/src/dom/__tests__/Input-test.internal.js @@ -35,7 +35,6 @@ const modulesInit = () => { ReactFeatureFlags = require('shared/ReactFeatureFlags'); ReactFeatureFlags.enableFlareAPI = true; ReactFeatureFlags.debugRenderPhaseSideEffectsForStrictMode = false; - ReactFeatureFlags.enableUserBlockingEvents = true; React = require('react'); ReactDOM = require('react-dom'); Scheduler = require('scheduler'); diff --git a/packages/react-interactions/events/src/dom/__tests__/MixedResponders-test-internal.js b/packages/react-interactions/events/src/dom/__tests__/MixedResponders-test-internal.js index 2071abe7b0a1..3439fe14a38f 100644 --- a/packages/react-interactions/events/src/dom/__tests__/MixedResponders-test-internal.js +++ b/packages/react-interactions/events/src/dom/__tests__/MixedResponders-test-internal.js @@ -236,7 +236,6 @@ describe('mixing responders with the heritage event system', () => { describe('mixing the Input and Press repsonders', () => { it('is async for non-input events', () => { ReactFeatureFlags.debugRenderPhaseSideEffectsForStrictMode = false; - ReactFeatureFlags.enableUserBlockingEvents = true; const useTap = require('react-interactions/events/tap').useTap; const useInput = require('react-interactions/events/input').useInput; const root = ReactDOM.unstable_createRoot(container); diff --git a/packages/react-native-renderer/src/ReactFabricEventResponderSystem.js b/packages/react-native-renderer/src/ReactFabricEventResponderSystem.js index 4e9f5da4cf5f..4dec11e30e75 100644 --- a/packages/react-native-renderer/src/ReactFabricEventResponderSystem.js +++ b/packages/react-native-renderer/src/ReactFabricEventResponderSystem.js @@ -31,7 +31,6 @@ import { UserBlockingEvent, DiscreteEvent, } from './ReactNativeTypes'; -import {enableUserBlockingEvents} from 'shared/ReactFeatureFlags'; import warning from 'shared/warning'; import invariant from 'shared/invariant'; @@ -95,13 +94,9 @@ const eventResponderContext: ReactNativeResponderContext = { break; } case UserBlockingEvent: { - if (enableUserBlockingEvents) { - runWithPriority(UserBlockingPriority, () => - executeUserEventHandler(eventListener, eventValue), - ); - } else { - executeUserEventHandler(eventListener, eventValue); - } + runWithPriority(UserBlockingPriority, () => + executeUserEventHandler(eventListener, eventValue), + ); break; } case ContinuousEvent: { diff --git a/packages/shared/ReactFeatureFlags.js b/packages/shared/ReactFeatureFlags.js index cbcd246f0eef..99720c713d43 100644 --- a/packages/shared/ReactFeatureFlags.js +++ b/packages/shared/ReactFeatureFlags.js @@ -80,11 +80,6 @@ export const warnAboutUnmockedScheduler = false; // *except* in some of our own tests, where we test incremental loading states. export const flushSuspenseFallbacksInTests = true; -// Changes priority of some events like mousemove to user-blocking priority, -// but without making them discrete. The flag exists in case it causes -// starvation problems. -export const enableUserBlockingEvents = false; - // Add a callback property to suspense to notify which promises are currently // in the update queue. This allows reporting and tracing of what is causing // the user to see a loading state. diff --git a/packages/shared/forks/ReactFeatureFlags.native-fb.js b/packages/shared/forks/ReactFeatureFlags.native-fb.js index bd94a207f704..3a424a2760ea 100644 --- a/packages/shared/forks/ReactFeatureFlags.native-fb.js +++ b/packages/shared/forks/ReactFeatureFlags.native-fb.js @@ -38,7 +38,6 @@ export const enableScopeAPI = false; export const enableJSXTransformAPI = false; export const warnAboutUnmockedScheduler = true; export const flushSuspenseFallbacksInTests = true; -export const enableUserBlockingEvents = false; export const enableSuspenseCallback = false; export const warnAboutDefaultPropsOnFunctionComponents = false; export const warnAboutStringRefs = false; diff --git a/packages/shared/forks/ReactFeatureFlags.native-oss.js b/packages/shared/forks/ReactFeatureFlags.native-oss.js index bd5888cb8ba2..cab07df14f83 100644 --- a/packages/shared/forks/ReactFeatureFlags.native-oss.js +++ b/packages/shared/forks/ReactFeatureFlags.native-oss.js @@ -33,7 +33,6 @@ export const enableScopeAPI = false; export const enableJSXTransformAPI = false; export const warnAboutUnmockedScheduler = false; export const flushSuspenseFallbacksInTests = true; -export const enableUserBlockingEvents = false; export const enableSuspenseCallback = false; export const warnAboutDefaultPropsOnFunctionComponents = false; export const warnAboutStringRefs = false; diff --git a/packages/shared/forks/ReactFeatureFlags.persistent.js b/packages/shared/forks/ReactFeatureFlags.persistent.js index 9605cccf29b9..06fb43f3b74e 100644 --- a/packages/shared/forks/ReactFeatureFlags.persistent.js +++ b/packages/shared/forks/ReactFeatureFlags.persistent.js @@ -33,7 +33,6 @@ export const enableScopeAPI = false; export const enableJSXTransformAPI = false; export const warnAboutUnmockedScheduler = true; export const flushSuspenseFallbacksInTests = true; -export const enableUserBlockingEvents = false; export const enableSuspenseCallback = false; export const warnAboutDefaultPropsOnFunctionComponents = false; export const warnAboutStringRefs = false; diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.js index bffe1419d978..014a5767a279 100644 --- a/packages/shared/forks/ReactFeatureFlags.test-renderer.js +++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.js @@ -33,7 +33,6 @@ export const enableScopeAPI = false; export const enableJSXTransformAPI = false; export const warnAboutUnmockedScheduler = false; export const flushSuspenseFallbacksInTests = true; -export const enableUserBlockingEvents = false; export const enableSuspenseCallback = false; export const warnAboutDefaultPropsOnFunctionComponents = false; export const warnAboutStringRefs = false; diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js index d376426f2b57..03f9179dc320 100644 --- a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js +++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js @@ -31,7 +31,6 @@ export const enableScopeAPI = true; export const enableJSXTransformAPI = true; export const warnAboutUnmockedScheduler = true; export const flushSuspenseFallbacksInTests = true; -export const enableUserBlockingEvents = false; export const enableSuspenseCallback = true; export const warnAboutDefaultPropsOnFunctionComponents = false; export const warnAboutStringRefs = false; diff --git a/packages/shared/forks/ReactFeatureFlags.www.js b/packages/shared/forks/ReactFeatureFlags.www.js index 744e2f4514db..b2800bc4f898 100644 --- a/packages/shared/forks/ReactFeatureFlags.www.js +++ b/packages/shared/forks/ReactFeatureFlags.www.js @@ -39,7 +39,6 @@ export const disableLegacyContext = false; export const warnAboutStringRefs = false; export const warnAboutDefaultPropsOnFunctionComponents = false; export const disableSchedulerTimeoutBasedOnReactExpirationTime = false; -export const enableUserBlockingEvents = true; export const enableStableConcurrentModeAPIs = false;