This is an automated email from the ASF dual-hosted git repository.
jianhan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-weex.git
The following commit(s) were added to refs/heads/master by this push:
new a0aae4f Fix heron event (#2747)
a0aae4f is described below
commit a0aae4ff7a2e6552c6fcbb3bc726d4a401cb8070
Author: wqyfavor <[email protected]>
AuthorDate: Fri Jul 26 08:40:24 2019 +0800
Fix heron event (#2747)
* Do not check page in CreateFinish and RenderSuccess.
* Send create finish event to heron page vir dom module.
---
ios/sdk/WeexSDK/Sources/Bridge/WXCoreBridge.mm | 24 ++++++++++++------------
ios/sdk/WeexSDK/Sources/Module/WXDomModule.m | 11 ++++++++---
2 files changed, 20 insertions(+), 15 deletions(-)
diff --git a/ios/sdk/WeexSDK/Sources/Bridge/WXCoreBridge.mm
b/ios/sdk/WeexSDK/Sources/Bridge/WXCoreBridge.mm
index 9c95482..5b9d9e3 100644
--- a/ios/sdk/WeexSDK/Sources/Bridge/WXCoreBridge.mm
+++ b/ios/sdk/WeexSDK/Sources/Bridge/WXCoreBridge.mm
@@ -757,9 +757,6 @@ break; \
int IOSSide::CreateFinish(const char* pageId)
{
RenderPageBase *page = RenderManager::GetInstance()->GetPage(pageId);
- if (page == nullptr) {
- return -1;
- }
long long startTime = getCurrentTime();
@@ -776,16 +773,15 @@ break; \
[manager startComponentTasks];
[manager createFinish];
- page->CallBridgeTime(getCurrentTime() - startTime);
+ if (page) {
+ page->CallBridgeTime(getCurrentTime() - startTime);
+ }
return 0;
}
int IOSSide::RenderSuccess(const char* pageId)
{
RenderPageBase *page = RenderManager::GetInstance()->GetPage(pageId);
- if (page == nullptr) {
- return -1;
- }
long long startTime = getCurrentTime();
@@ -802,7 +798,9 @@ break; \
[manager startComponentTasks];
[manager renderFinish];
- page->CallBridgeTime(getCurrentTime() - startTime);
+ if (page) {
+ page->CallBridgeTime(getCurrentTime() - startTime);
+ }
return 0;
}
@@ -1261,10 +1259,12 @@ break; \
- (void)callCreateFinish:(NSString*)pageId
{
- RenderPageCustom* page = [self getPage:pageId];
- if (page && page->IsValid()) {
- page->CreateFinish();
- }
+ WXPerformBlockOnComponentThread(^{
+ RenderPageCustom* page = [self getPage:pageId];
+ if (page && page->IsValid()) {
+ page->CreateFinish();
+ }
+ });
}
- (void)callRefreshFinish:(NSString*)pageId
diff --git a/ios/sdk/WeexSDK/Sources/Module/WXDomModule.m
b/ios/sdk/WeexSDK/Sources/Module/WXDomModule.m
index dd4c51e..4b3607b 100644
--- a/ios/sdk/WeexSDK/Sources/Module/WXDomModule.m
+++ b/ios/sdk/WeexSDK/Sources/Module/WXDomModule.m
@@ -155,9 +155,14 @@ WX_EXPORT_METHOD(@selector(endBatchMark))
- (void)createFinish
{
NSString* instanceId = self.weexInstance.instanceId;
- WXPerformBlockOnComponentThread(^{
- [WXCoreBridge callCreateFinish:instanceId];
- });
+ if ([WXCustomPageBridge isCustomPage:instanceId]) {
+ [[WXCustomPageBridge sharedInstance] callCreateFinish:instanceId];
+ }
+ else {
+ WXPerformBlockOnComponentThread(^{
+ [WXCoreBridge callCreateFinish:instanceId];
+ });
+ }
}
- (void)updateFinish