Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(ios): rename compoents files from Hippyxxx to NativeRenderxxxx #2165

Merged
merged 10 commits into from
Jul 1, 2022
1,164 changes: 564 additions & 600 deletions driver/js/examples/ios-demo/HippyDemo.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion driver/js/examples/ios-demo/HippyDemo/TestModule.mm
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
#import "AppDelegate.h"
#import "HippyBundleURLProvider.h"
#import "DemoConfigs.h"
#import "UIView+Hippy.h"
#import "UIView+NativeRender.h"

@interface TestModule ()<HippyBridgeDelegate>

Expand Down
46 changes: 23 additions & 23 deletions driver/js/examples/ios-demo/HippyDemo/ViewController.mm
Original file line number Diff line number Diff line change
Expand Up @@ -23,24 +23,23 @@
#import "ViewController.h"
#import "HippyRootView.h"
#import "HippyBridge+LocalFileSource.h"
#import "HippyLogging.h"
#import "HippyBundleURLProvider.h"
#import "UIView+Hippy.h"
#import "UIView+NativeRender.h"
#include "dom/dom_manager.h"
#include "NativeRenderManager.h"
#include "dom/dom_node.h"
#include "footstone/hippy_value.h"
#import "DemoConfigs.h"
#import "HippyBridge+Private.h"
#import "HippyFrameworkProxy.h"
#import "HippyDomNodeUtils.h"
#import "HippyImageDataLoader.h"
#import "HippyDefaultImageProvider.h"
#import "NativeRenderFrameworkProxy.h"
#import "NativeRenderDomNodeUtils.h"
#import "NativeRenderImageDataLoader.h"
#import "NativeRenderDefaultImageProvider.h"
#import "HippyRedBox.h"
#import "HippyAssert.h"
#import "MyViewManager.h"

@interface ViewController ()<HippyBridgeDelegate, HippyFrameworkProxy, HippyMethodInterceptorProtocol> {
@interface ViewController ()<HippyBridgeDelegate, NativeRenderFrameworkProxy, HippyMethodInterceptorProtocol> {
std::shared_ptr<hippy::DomManager> _domManager;
std::shared_ptr<NativeRenderManager> _nativeRenderManager;
std::shared_ptr<hippy::RootNode> _rootNode;
Expand All @@ -54,7 +53,13 @@ @implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
HippySetLogMessageFunction(^(HippyLogLevel level, HippyLogSource source, NSString *fileName, NSNumber *lineNumber, NSString *message) {
NativeRenderSetLogFunction(^(NativeRenderLogLevel level, NSString *fileName, NSNumber *lineNumber,
NSString *message, NSArray<NSDictionary *> *stack) {
if (NativeRenderLogLevelError <= level) {
dispatch_async(dispatch_get_main_queue(), ^{
[[HippyBridge currentBridge].redBox showErrorMessage:message withStack:stack];
});
}
NSLog(@"hippy says:%@ in file %@ at line %@", message, fileName, lineNumber);
});
[self runCommonDemo];
Expand Down Expand Up @@ -92,11 +97,6 @@ - (void)runCommonDemo {
moduleName:@"Demo" initialProperties: @{@"isSimulator": @(isSimulator)}
launchOptions:nil delegate:nil];
#endif
HippySetErrorLogShowAction(^(NSString *message, NSArray<NSDictionary *> *stacks) {
dispatch_async(dispatch_get_main_queue(), ^{
[[HippyBridge currentBridge].redBox showErrorMessage:message withStack:stacks];
});
});
bridge.methodInterceptor = self;

rootView.frame = self.view.bounds;
Expand Down Expand Up @@ -314,23 +314,23 @@ - (NSURL *)inspectorSourceURLForBridge:(HippyBridge *)bridge {
return bridge.bundleURL;
}

#pragma mark HippyFrameworkProxy Delegate Implementation
- (NSString *)standardizeAssetUrlString:(NSString *)UrlString forRenderContext:(nonnull id<HippyRenderContext>)renderContext {
#pragma mark NativeRenderFrameworkProxy Delegate Implementation
- (NSString *)standardizeAssetUrlString:(NSString *)UrlString forRenderContext:(nonnull id<NativeRenderContext>)renderContext {
//这里将对应的URL转换为标准URL
//比如将相对地址根据沙盒路径为转换绝对地址
return UrlString;
}

- (id<HippyImageDataLoaderProtocol>)imageDataLoaderForRenderContext:(id<HippyRenderContext>)renderContext {
//设置自定义的图片加载实例,负责图片加载。默认使用HippyImageDataLoader
return [HippyImageDataLoader new];
- (id<NativeRenderImageDataLoaderProtocol>)imageDataLoaderForRenderContext:(id<NativeRenderContext>)renderContext {
//设置自定义的图片加载实例,负责图片加载。默认使用NativeRenderImageDataLoader
return [NativeRenderImageDataLoader new];
}

- (Class<HippyImageProviderProtocol>)imageProviderClassForRenderContext:(id<HippyRenderContext>)renderContext {
//设置HippyImageProviderProtocol类
//HippyImageProviderProtocol负责将NSData转换为UIImage,用于处理ios系统无法处理的图片格式数据
//默认使用HippyDefaultImageProvider
return [HippyDefaultImageProvider class];
- (Class<NativeRenderImageProviderProtocol>)imageProviderClassForRenderContext:(id<NativeRenderContext>)renderContext {
//设置NativeRenderImageProviderProtocol类
//NativeRenderImageProviderProtocol负责将NSData转换为UIImage,用于处理ios系统无法处理的图片格式数据
//默认使用NativeRenderDefaultImageProvider
return [NativeRenderDefaultImageProvider class];
}

- (BOOL)shouldInvokeWithModuleName:(NSString *)moduleName methodName:(NSString *)methodName arguments:(NSArray<id<HippyBridgeArgument>> *)arguments argumentsValues:(NSArray *)argumentsValue containCallback:(BOOL)containCallback {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,11 @@
* limitations under the License.
*/

#import "HippyViewManager.h"

#import "NativeRenderViewManager.h"

NS_ASSUME_NONNULL_BEGIN

@interface MyViewManager : HippyViewManager
@interface MyViewManager : NativeRenderViewManager

@end

Expand Down
12 changes: 6 additions & 6 deletions driver/js/examples/ios-demo/HippyDemo/myview/MyViewManager.mm
Original file line number Diff line number Diff line change
Expand Up @@ -22,19 +22,19 @@

#import "MyViewManager.h"
#import "MyView.h"
#import "UIView+Hippy.h"
#import "HippyUIManager.h"
#import "UIView+NativeRender.h"
#import "NativeRenderUIManager.h"

@implementation MyViewManager

HIPPY_EXPORT_VIEW_PROPERTY(text, NSString)
NATIVE_RENDER_EXPORT_VIEW_PROPERTY(text, NSString)

RENDER_COMPONENT_EXPORT_METHOD(changeColor:(nonnull NSNumber *)reactTag
NATIVE_RENDER_COMPONENT_EXPORT_METHOD(changeColor:(nonnull NSNumber *)reactTag
color:(NSString *)color) {
[self.renderContext addUIBlock:^(__unused id<HippyRenderContext> renderContext, NSDictionary<NSNumber *, UIView *> *viewRegistry){
[self.renderContext addUIBlock:^(__unused id<NativeRenderContext> renderContext, NSDictionary<NSNumber *, UIView *> *viewRegistry){
UIView *view = viewRegistry[reactTag];
if (view == nil || ![view isKindOfClass:[MyView class]]) {
HippyLogError(@"tried to setPage: on an error viewPager %@ "
NativeRenderLogError(@"tried to setPage: on an error viewPager %@ "
"with tag #%@", view, reactTag);
}
[(MyView *)view setBackgroundColor:[self colorWithHexString:color alpha:1] ];
Expand Down
Loading