diff --git a/src/renderers/dom/fiber/ReactDOMFiberComponent.js b/src/renderers/dom/fiber/ReactDOMFiberComponent.js index d61eb61112..5cf2915b51 100644 --- a/src/renderers/dom/fiber/ReactDOMFiberComponent.js +++ b/src/renderers/dom/fiber/ReactDOMFiberComponent.js @@ -188,8 +188,6 @@ function trapBubbledEventsLocal(node: Element, tag: string) { // the state of the tree to be corrupted, `node` here can be null. // TODO: Make sure that we check isMounted before firing any of these events. - // TODO: Inline these below since we're calling this from an equivalent - // switch statement. switch (tag) { case 'iframe': case 'object': @@ -449,6 +447,7 @@ var ReactDOMFiberComponent = { } } + trapBubbledEventsLocal(domElement, tag); var props: Object; switch (tag) { case 'audio': @@ -461,13 +460,11 @@ var ReactDOMFiberComponent = { case 'source': case 'video': case 'details': - trapBubbledEventsLocal(domElement, tag); props = rawProps; break; case 'input': ReactDOMFiberInput.initWrapperState(domElement, rawProps); props = ReactDOMFiberInput.getHostProps(domElement, rawProps); - trapBubbledEventsLocal(domElement, tag); // For controlled components we always need to ensure we're listening // to onChange. Even if there is no listener. ensureListeningTo(rootContainerElement, 'onChange'); @@ -479,7 +476,6 @@ var ReactDOMFiberComponent = { case 'select': ReactDOMFiberSelect.initWrapperState(domElement, rawProps); props = ReactDOMFiberSelect.getHostProps(domElement, rawProps); - trapBubbledEventsLocal(domElement, tag); // For controlled components we always need to ensure we're listening // to onChange. Even if there is no listener. ensureListeningTo(rootContainerElement, 'onChange'); @@ -487,7 +483,6 @@ var ReactDOMFiberComponent = { case 'textarea': ReactDOMFiberTextarea.initWrapperState(domElement, rawProps); props = ReactDOMFiberTextarea.getHostProps(domElement, rawProps); - trapBubbledEventsLocal(domElement, tag); // For controlled components we always need to ensure we're listening // to onChange. Even if there is no listener. ensureListeningTo(rootContainerElement, 'onChange'); @@ -790,6 +785,7 @@ var ReactDOMFiberComponent = { } } + trapBubbledEventsLocal(domElement, tag); switch (tag) { case 'audio': case 'form': @@ -801,11 +797,9 @@ var ReactDOMFiberComponent = { case 'source': case 'video': case 'details': - trapBubbledEventsLocal(domElement, tag); break; case 'input': ReactDOMFiberInput.initWrapperState(domElement, rawProps); - trapBubbledEventsLocal(domElement, tag); // For controlled components we always need to ensure we're listening // to onChange. Even if there is no listener. ensureListeningTo(rootContainerElement, 'onChange'); @@ -815,14 +809,12 @@ var ReactDOMFiberComponent = { break; case 'select': ReactDOMFiberSelect.initWrapperState(domElement, rawProps); - trapBubbledEventsLocal(domElement, tag); // For controlled components we always need to ensure we're listening // to onChange. Even if there is no listener. ensureListeningTo(rootContainerElement, 'onChange'); break; case 'textarea': ReactDOMFiberTextarea.initWrapperState(domElement, rawProps); - trapBubbledEventsLocal(domElement, tag); // For controlled components we always need to ensure we're listening // to onChange. Even if there is no listener. ensureListeningTo(rootContainerElement, 'onChange');