react-native/React/Modules/RCTUIManager.h
Christopher Chedeau c32d9bc423 Updates from Fri 3 Apr
- Update deps order - core modules first | Amjad Masad
- [ReactNative] Workaround double cmd+r bug | Christopher Chedeau
- [react-native] Nicer error for undefined or string tag names | Ben Alpert
- [ReactNative] Fix script load from local files | Tadeu Zagallo
- [react_native] JS files from D1961099: Format stack trace on native side | Alex Kotliarskyi
- [ReactNative] Cleanup TabBar and its example | Christopher Chedeau
- [ReactNative] Allow recover from debugger error | Tadeu Zagallo
- [react-native] Update react to 0.13.1, jstransform alongside | Ben Alpert
- Fixed tap-to-zoom in Groups photo viewer | Sumeet Vaidya
- Fix hitTest for auto | Tadeu Zagallo
- [ReactNative] Unfork RKRootView | Tadeu Zagallo
- [react-packager] Ignore dotfiles in file watching | Amjad Masad
2015-04-03 08:38:06 -07:00

66 lines
1.9 KiB
Objective-C

/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
#import <UIKit/UIKit.h>
#import "../Base/RCTBridge.h"
#import "../Base/RCTBridgeModule.h"
#import "../Base/RCTInvalidating.h"
#import "../Views/RCTViewManager.h"
@protocol RCTScrollableProtocol;
/**
* The RCTUIManager is the module responsible for updating the view hierarchy.
*/
@interface RCTUIManager : NSObject <RCTBridgeModule, RCTInvalidating>
@property (nonatomic, weak) id<RCTScrollableProtocol> mainScrollView;
/**
* Allows native environment code to respond to "the main scroll view" events.
* see `RCTUIManager`'s `setMainScrollViewTag`.
*/
@property (nonatomic, readwrite, weak) id<UIScrollViewDelegate> nativeMainScrollDelegate;
/**
* Register a root view with the RCTUIManager.
*/
- (void)registerRootView:(UIView *)rootView;
/**
* Update the frame of a root view. This might be in response to a screen rotation
* or some other layout event outsde of the React-managed view hierarchy.
*/
- (void)setFrame:(CGRect)frame forRootView:(UIView *)rootView;
/**
* Schedule a block to be executed on the UI thread. Useful if you need to execute
* view logic after all currently queued view updates have completed.
*/
- (void)addUIBlock:(RCTViewManagerUIBlock)block;
/**
* The view that is currently first responder, according to the JS context.
*/
+ (UIView *)JSResponder;
@end
/**
* This category makes the current RCTUIManager instance available via the
* RCTBridge, which is useful for RCTBridgeModules or RCTViewManagers that
* need to access the RCTUIManager.
*/
@interface RCTBridge (RCTUIManager)
@property (nonatomic, readonly) RCTUIManager *uiManager;
@end