diff --git a/React/Modules/RCTUIManager.m b/React/Modules/RCTUIManager.m index fcc27d9e9..83ced744d 100644 --- a/React/Modules/RCTUIManager.m +++ b/React/Modules/RCTUIManager.m @@ -904,6 +904,15 @@ RCT_EXPORT_METHOD(findSubviewIn:(nonnull NSNumber *)reactTag atPoint:(CGPoint)po _nextLayoutAnimation = nil; } + [self addUIBlock:^(RCTUIManager *uiManager, __unused NSDictionary *viewRegistry) { + /** + * TODO(tadeu): Remove it once and for all + */ + for (id node in uiManager->_bridgeTransactionListeners) { + [node reactBridgeDidFinishTransaction]; + } + }]; + [self flushUIBlocks]; } @@ -927,12 +936,6 @@ RCT_EXPORT_METHOD(findSubviewIn:(nonnull NSNumber *)reactTag atPoint:(CGPoint)po for (dispatch_block_t block in previousPendingUIBlocks) { block(); } - /** - * TODO(tadeu): Remove it once and for all - */ - for (id node in _bridgeTransactionListeners) { - [node reactBridgeDidFinishTransaction]; - } } @catch (NSException *exception) { RCTLogError(@"Exception thrown while executing UI block: %@", exception);