diff --git a/packages/react-dom/src/events/BrowserEventConstants.js b/packages/react-dom/src/events/BrowserEventConstants.js index 276df6ee76f22..8e69b149f64d7 100644 --- a/packages/react-dom/src/events/BrowserEventConstants.js +++ b/packages/react-dom/src/events/BrowserEventConstants.js @@ -6,6 +6,7 @@ */ import getVendorPrefixedEventName from './getVendorPrefixedEventName'; +import isEventSupported from './isEventSupported'; /** * Types of raw signals from the browser caught at the top level. @@ -85,7 +86,9 @@ var topLevelTypes = { getVendorPrefixedEventName('transitionend') || 'transitionend', topVolumeChange: 'volumechange', topWaiting: 'waiting', - topWheel: 'wheel', + topWheel: + isEventSupported('wheel') ? 'wheel' : + isEventSupported('mousewheel') ? 'mousewhee' : 'DOMMouseScroll' }; export type TopLevelTypes = $Enum; diff --git a/packages/react-dom/src/events/ReactBrowserEventEmitter.js b/packages/react-dom/src/events/ReactBrowserEventEmitter.js index f9a5ee52f41ff..2b7e9a5509152 100644 --- a/packages/react-dom/src/events/ReactBrowserEventEmitter.js +++ b/packages/react-dom/src/events/ReactBrowserEventEmitter.js @@ -123,17 +123,7 @@ export function listenTo(registrationName, contentDocumentHandle) { for (var i = 0; i < dependencies.length; i++) { var dependency = dependencies[i]; if (!(isListening.hasOwnProperty(dependency) && isListening[dependency])) { - if (dependency === 'topWheel') { - if (isEventSupported('wheel')) { - trapBubbledEvent('topWheel', 'wheel', mountAt); - } else if (isEventSupported('mousewheel')) { - trapBubbledEvent('topWheel', 'mousewheel', mountAt); - } else { - // Firefox needs to capture a different mouse scroll event. - // @see http://www.quirksmode.org/dom/events/tests/scroll.html - trapBubbledEvent('topWheel', 'DOMMouseScroll', mountAt); - } - } else if (dependency === 'topScroll') { + if (dependency === 'topScroll') { trapCapturedEvent('topScroll', 'scroll', mountAt); } else if (dependency === 'topFocus' || dependency === 'topBlur') { trapCapturedEvent('topFocus', 'focus', mountAt);