198d556a3SŁukasz Kosmaty// Copyright 2015-present 650 Industries. All rights reserved.
298d556a3SŁukasz Kosmaty
398d556a3SŁukasz Kosmaty#import <EXDevMenu/DevMenuRootView.h>
498d556a3SŁukasz Kosmaty
598d556a3SŁukasz Kosmaty#import <React/RCTAssert.h>
698d556a3SŁukasz Kosmaty#import <React/RCTRootContentView.h>
70318ad3eSŁukasz Kosmaty#import <React/UIView+React.h>
898d556a3SŁukasz Kosmaty
998d556a3SŁukasz Kosmaty@implementation DevMenuRootView
1098d556a3SŁukasz Kosmaty
1198d556a3SŁukasz Kosmaty- (void)javaScriptDidLoad:(NSNotification *)notification
1298d556a3SŁukasz Kosmaty{
1398d556a3SŁukasz Kosmaty  RCTAssertMainQueue();
1498d556a3SŁukasz Kosmaty
1598d556a3SŁukasz Kosmaty  // Use the (batched) bridge that's sent in the notification payload, so the
1698d556a3SŁukasz Kosmaty  // RCTRootContentView is scoped to the right bridge
1798d556a3SŁukasz Kosmaty  RCTBridge *bridge = notification.userInfo[@"bridge"];
183cb6cb1aSŁukasz Kosmaty  RCTRootContentView *rootView = (RCTRootContentView *)self.contentView;
190318ad3eSŁukasz Kosmaty  if (bridge != rootView.bridge) {
200318ad3eSŁukasz Kosmaty    if (self.reactTag == rootView.reactTag) {
210318ad3eSŁukasz Kosmaty      // Clear the reactTag so it can be re-assigned
220318ad3eSŁukasz Kosmaty      self.reactTag = nil;
230318ad3eSŁukasz Kosmaty    }
2498d556a3SŁukasz Kosmaty    [super bundleFinishedLoading:bridge];
2598d556a3SŁukasz Kosmaty  }
2698d556a3SŁukasz Kosmaty}
2798d556a3SŁukasz Kosmaty
2898d556a3SŁukasz Kosmaty- (void)bundleFinishedLoading:(RCTBridge *)bridge {}
2998d556a3SŁukasz Kosmaty
30*aedb79bcSVille Immonen- (bool)becomeFirstResponder
31*aedb79bcSVille Immonen{
32*aedb79bcSVille Immonen  // Avoid first responder status so that it won't hijack React Native keyboard commands.
33*aedb79bcSVille Immonen  return NO;
34*aedb79bcSVille Immonen}
35*aedb79bcSVille Immonen
3698d556a3SŁukasz Kosmaty@end
37