Manual: Migrate from bridge.eventDispatcher to RCTModuleRegistry
Summary: This is an extension of D25449795. I searched for all usages of .eventDispatcher within NativeModules, and migrated them all to the Venice-compatible RCTModuleRegistry API. Changelog: [Internal] Reviewed By: PeteTheHeat Differential Revision: D25473844 fbshipit-source-id: 2b8deec236e019f3adfb59fadd745c249ff822f4
This commit is contained in:
Родитель
74fd6fb1da
Коммит
1f883192ec
|
@ -48,7 +48,7 @@ RCT_EXPORT_MODULE();
|
|||
{
|
||||
[super invalidate];
|
||||
[_nodesManager stopAnimationLoop];
|
||||
[self.bridge.eventDispatcher removeDispatchObserver:self];
|
||||
[[self.moduleRegistry moduleForName:"EventDispatcher"] removeDispatchObserver:self];
|
||||
[self.bridge.uiManager.observerCoordinator removeObserver:self];
|
||||
[self.bridge.surfacePresenter removeObserver:self];
|
||||
}
|
||||
|
@ -65,11 +65,16 @@ RCT_EXPORT_MODULE();
|
|||
{
|
||||
[super setBridge:bridge];
|
||||
_nodesManager = [[RCTNativeAnimatedNodesManager alloc] initWithBridge:self.bridge surfacePresenter:bridge.surfacePresenter];
|
||||
[bridge.eventDispatcher addDispatchObserver:self];
|
||||
[bridge.uiManager.observerCoordinator addObserver:self];
|
||||
[bridge.surfacePresenter addObserver:self];
|
||||
}
|
||||
|
||||
- (void)setModuleRegistry:(RCTModuleRegistry *)moduleRegistry
|
||||
{
|
||||
[super setModuleRegistry:moduleRegistry];
|
||||
[[moduleRegistry moduleForName:"EventDispatcher"] addDispatchObserver:self];
|
||||
}
|
||||
|
||||
/*
|
||||
* This selector should only be invoked in bridgeless mode, which is not compatible with this non turbo module.
|
||||
*/
|
||||
|
|
|
@ -49,7 +49,7 @@ RCT_EXPORT_MODULE();
|
|||
{
|
||||
[super invalidate];
|
||||
[_nodesManager stopAnimationLoop];
|
||||
[self.bridge.eventDispatcher removeDispatchObserver:self];
|
||||
[[self.moduleRegistry moduleForName:"EventDispatcher"] removeDispatchObserver:self];
|
||||
[self.bridge.uiManager.observerCoordinator removeObserver:self];
|
||||
[_surfacePresenter removeObserver:self];
|
||||
}
|
||||
|
@ -67,11 +67,16 @@ RCT_EXPORT_MODULE();
|
|||
[super setBridge:bridge];
|
||||
_surfacePresenter = bridge.surfacePresenter;
|
||||
_nodesManager = [[RCTNativeAnimatedNodesManager alloc] initWithBridge:self.bridge surfacePresenter:_surfacePresenter];
|
||||
[bridge.eventDispatcher addDispatchObserver:self];
|
||||
[bridge.uiManager.observerCoordinator addObserver:self];
|
||||
[_surfacePresenter addObserver:self];
|
||||
}
|
||||
|
||||
- (void)setModuleRegistry:(RCTModuleRegistry *)moduleRegistry
|
||||
{
|
||||
[super setModuleRegistry:moduleRegistry];
|
||||
[[moduleRegistry moduleForName:"EventDispatcher"] addDispatchObserver:self];
|
||||
}
|
||||
|
||||
/*
|
||||
* In bridgeless mode, `setBridge` is never called during initializtion. Instead this selector is invoked via
|
||||
* BridgelessTurboModuleSetup.
|
||||
|
|
|
@ -350,7 +350,7 @@ RCT_EXPORT_METHOD(toggleElementInspector)
|
|||
if (_isJSLoaded) {
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
||||
[self.bridge.eventDispatcher sendDeviceEventWithName:@"toggleElementInspector" body:nil];
|
||||
[[self.moduleRegistry moduleForName:"EventDispatcher"] sendDeviceEventWithName:@"toggleElementInspector" body:nil];
|
||||
#pragma clang diagnostic pop
|
||||
}
|
||||
}
|
||||
|
@ -463,7 +463,7 @@ RCT_EXPORT_METHOD(addMenuItem : (NSString *)title)
|
|||
if ([self isElementInspectorShown]) {
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
||||
[self.bridge.eventDispatcher sendDeviceEventWithName:@"toggleElementInspector" body:nil];
|
||||
[[self.moduleRegistry moduleForName:"EventDispatcher"] sendDeviceEventWithName:@"toggleElementInspector" body:nil];
|
||||
#pragma clang diagnostic pop
|
||||
}
|
||||
});
|
||||
|
|
|
@ -152,12 +152,14 @@ static NSDictionary *RCTExportedDimensions(RCTBridge *bridge, id<RCTTurboModuleR
|
|||
- (void)didReceiveNewContentSizeMultiplier
|
||||
{
|
||||
RCTBridge *bridge = _bridge;
|
||||
RCTModuleRegistry *moduleRegistry = _moduleRegistry;
|
||||
RCTExecuteOnMainQueue(^{
|
||||
// Report the event across the bridge.
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
||||
[bridge.eventDispatcher sendDeviceEventWithName:@"didUpdateDimensions"
|
||||
body:RCTExportedDimensions(bridge, self->_turboModuleRegistry)];
|
||||
[[moduleRegistry moduleForName:"EventDispatcher"]
|
||||
sendDeviceEventWithName:@"didUpdateDimensions"
|
||||
body:RCTExportedDimensions(bridge, self->_turboModuleRegistry)];
|
||||
#pragma clang diagnostic pop
|
||||
});
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
@interface RCTEventEmitter : NSObject <RCTBridgeModule, RCTJSInvokerModule, RCTInvalidating>
|
||||
|
||||
@property (nonatomic, weak) RCTBridge *bridge;
|
||||
@property (nonatomic, weak) RCTModuleRegistry *moduleRegistry;
|
||||
|
||||
- (instancetype)initWithDisabledObservation;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче