[GitHub] incubator-weex pull request #1232: [weex-426] [core] mv ipc/jss code to andr...
GitHub user lucky-chen reopened a pull request: https://github.com/apache/incubator-weex/pull/1232 [weex-426] [core] mv ipc/jss code to android dir 1. mv ipc to android dir 2. add jsbridge api You can merge this pull request into a Git repository by running: $ git pull https://github.com/lucky-chen/incubator-weex core-feture-mvJsEnginCode Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1232.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1232 commit 891fe4eee41d64a597336eab3a3f94fd45b550b5 Author: zhongcang Date: 2018-06-01T06:15:18Z * [core] mv ipc to android dir ---
[GitHub] incubator-weex pull request #1232: [weex-426] [core] mv ipc/jss code to andr...
Github user lucky-chen closed the pull request at: https://github.com/apache/incubator-weex/pull/1232 ---
[GitHub] incubator-weex issue #1232: [weex-426] [core] mv ipc/jss code to android dir
Github user weex-bot commented on the issue: https://github.com/apache/incubator-weex/pull/1232 Messages :book: has no jsfm file changed. :book: jsfm test finished. Generated by :no_entry_sign: http://github.com/danger/danger-js/";>dangerJS ---
[GitHub] incubator-weex pull request #1232: [weex-426] [core] mv ipc/jss code to andr...
GitHub user lucky-chen opened a pull request: https://github.com/apache/incubator-weex/pull/1232 [weex-426] [core] mv ipc/jss code to android dir 1. mv ipc to android dir 2. add jsbridge api You can merge this pull request into a Git repository by running: $ git pull https://github.com/lucky-chen/incubator-weex core-feture-mvJsEnginCode Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1232.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1232 commit 891fe4eee41d64a597336eab3a3f94fd45b550b5 Author: zhongcang Date: 2018-06-01T06:15:18Z * [core] mv ipc to android dir ---
incubator-weex-site git commit: Update faq.md (resolve #158) [Forced Update!]
Repository: incubator-weex-site Updated Branches: refs/heads/master 072187164 -> 60fb3c108 (forced update) Update faq.md (resolve #158) Project: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/commit/60fb3c10 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/tree/60fb3c10 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/diff/60fb3c10 Branch: refs/heads/master Commit: 60fb3c108484e96362c2682117edcaa3918e85d4 Parents: c20f168 Author: caixiaomin Authored: Mon May 28 18:29:16 2018 +0800 Committer: é¨æ³ Committed: Fri Jun 1 13:53:49 2018 +0800 -- source/cn/wiki/faq.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex-site/blob/60fb3c10/source/cn/wiki/faq.md -- diff --git a/source/cn/wiki/faq.md b/source/cn/wiki/faq.md index 250b9b4..4d956fa 100644 --- a/source/cn/wiki/faq.md +++ b/source/cn/wiki/faq.md @@ -34,7 +34,7 @@ Weex çåçè¿è¡æºå¶æ¯æä»è®¾å¤ä¸å è½½å¾çï¼ä½ åªéè¦è®¾ç½®æ è¿æ¯ç±äº weex-toolkit çä¾èµ http-server 导è´çï¼http-server çèçæ¬å¨ä¸æ windows ä¸çæ¯æä¸æ¯å¾å¥½ãæ们已ç»ä¿®å¤äºè¿ä¸ªé®é¢ï¼è¯·å¨ä½¿ç¨åå级 weex-toolkit çæ¬ã -## Playground åºç¨å¨æ«é¢åä»ä¹é½æ²¡ææ¾ç¤ºï¼ç½å±ï¼ +## Playground åºç¨å¨æ«ç åä»ä¹é½æ²¡ææ¾ç¤ºï¼ç½å±ï¼ æ好çæ¹æ³æ¯æ¥ç debug æ¥å¿æ¥æ¥æ¾åå ï¼ä½ å¯ä»¥æç § [è¿ç¯ææ¡£](./guide/how-to/debug-with-devtools.html) ä¸ç说ææ¥æ¥æ导è´è¿ä¸é®é¢çåå ã
incubator-weex-site git commit: Update faq.md
Repository: incubator-weex-site Updated Branches: refs/heads/master c20f1683a -> 072187164 Update faq.md Project: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/commit/07218716 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/tree/07218716 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/diff/07218716 Branch: refs/heads/master Commit: 072187164cdc6fb103fb8404d121089a432548b8 Parents: c20f168 Author: caixiaomin Authored: Mon May 28 18:29:16 2018 +0800 Committer: é¨æ³ Committed: Fri Jun 1 13:33:36 2018 +0800 -- source/cn/wiki/faq.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex-site/blob/07218716/source/cn/wiki/faq.md -- diff --git a/source/cn/wiki/faq.md b/source/cn/wiki/faq.md index 250b9b4..4d956fa 100644 --- a/source/cn/wiki/faq.md +++ b/source/cn/wiki/faq.md @@ -34,7 +34,7 @@ Weex çåçè¿è¡æºå¶æ¯æä»è®¾å¤ä¸å è½½å¾çï¼ä½ åªéè¦è®¾ç½®æ è¿æ¯ç±äº weex-toolkit çä¾èµ http-server 导è´çï¼http-server çèçæ¬å¨ä¸æ windows ä¸çæ¯æä¸æ¯å¾å¥½ãæ们已ç»ä¿®å¤äºè¿ä¸ªé®é¢ï¼è¯·å¨ä½¿ç¨åå级 weex-toolkit çæ¬ã -## Playground åºç¨å¨æ«é¢åä»ä¹é½æ²¡ææ¾ç¤ºï¼ç½å±ï¼ +## Playground åºç¨å¨æ«ç åä»ä¹é½æ²¡ææ¾ç¤ºï¼ç½å±ï¼ æ好çæ¹æ³æ¯æ¥ç debug æ¥å¿æ¥æ¥æ¾åå ï¼ä½ å¯ä»¥æç § [è¿ç¯ææ¡£](./guide/how-to/debug-with-devtools.html) ä¸ç说ææ¥æ¥æ导è´è¿ä¸é®é¢çåå ã
incubator-weex-site git commit: Correcting typos
Repository: incubator-weex-site Updated Branches: refs/heads/master 493bd4b1e -> c20f1683a Correcting typos Line32. conver -> cover Project: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/commit/c20f1683 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/tree/c20f1683 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex-site/diff/c20f1683 Branch: refs/heads/master Commit: c20f1683a2d6bfd1c7133fa210cbf63966db3246 Parents: 493bd4b Author: CreeperSan Authored: Wed May 30 17:36:54 2018 +0800 Committer: GitHub Committed: Wed May 30 17:36:54 2018 +0800 -- source/references/components/image.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex-site/blob/c20f1683/source/references/components/image.md -- diff --git a/source/references/components/image.md b/source/references/components/image.md index 8fc38b3..7b688ab 100644 --- a/source/references/components/image.md +++ b/source/references/components/image.md @@ -29,7 +29,7 @@ See the [example](http://dotwe.org/vue/00f4b68b3a86360df1f38728fd0b4a1f). | Attribute | Type | Value | Default Value | | - | -- | -- | - | | `placeholder` | String | {URL / Base64} | - | -| `resize` | String | conver / contain / stretch | stretch | +| `resize` | String | cover / contain / stretch | stretch | | `src` | String | {URL / Base64 }| - | > **Note:** you can specify a relative URL for `src` and `placeholder`, relative URL will be rewritten to the to the actual resource URL (local or remote). See also: [Path](../../guide/advanced/path.html). @@ -153,4 +153,4 @@ Support **[common styles](../../wiki/common-styles.html)**. - [Base64 example](http://dotwe.org/vue/ba477790c85ea12bbf7ad3a5f0885b5c) - [Multi-layer images example](http://dotwe.org/vue/c44359c0f200abc1f66504b88587e4f6) -- [Lazy load image example](http://dotwe.org/vue/b0b146e4e6fa4890f800e18cb950f803) \ No newline at end of file +- [Lazy load image example](http://dotwe.org/vue/b0b146e4e6fa4890f800e18cb950f803)
incubator-weex git commit: * [core] use interface replacce android_bridge_impl
Repository: incubator-weex Updated Branches: refs/heads/master 3e002a40a -> 6ba255365 * [core] use interface replacce android_bridge_impl Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/6ba25536 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/6ba25536 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/6ba25536 Branch: refs/heads/master Commit: 6ba255365a12b5c41422ce0a48f1f5d2a5f96207 Parents: 3e002a4 Author: zhongcang Authored: Thu May 31 20:33:34 2018 +0800 Committer: YorkShen Committed: Fri Jun 1 11:23:58 2018 +0800 -- weex_core/Source/CMakeLists.txt | 31 +++--- .../android/jsengine/multiprocess/WeexProxy.cpp | 2 + weex_core/Source/core/bridge/bridge.h | 3 + .../Source/core/manager/weex_core_manager.cpp | 36 .../Source/core/manager/weex_core_manager.h | 62 .../Source/core/render/action/render_action.h | 1 - .../render/action/render_action_add_element.cpp | 7 ++- .../render/action/render_action_add_event.cpp | 3 +- .../render/action/render_action_createbody.cpp | 7 ++- .../action/render_action_createfinish.cpp | 3 +- .../core/render/action/render_action_layout.cpp | 7 ++- .../action/render_action_move_element.cpp | 3 +- .../action/render_action_remove_element.cpp | 3 +- .../action/render_action_remove_event.cpp | 4 +- .../render/action/render_action_update_attr.cpp | 3 +- .../action/render_action_update_style.cpp | 5 +- .../Source/core/render/page/render_page.cpp | 5 +- 17 files changed, 158 insertions(+), 27 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6ba25536/weex_core/Source/CMakeLists.txt -- diff --git a/weex_core/Source/CMakeLists.txt b/weex_core/Source/CMakeLists.txt index f4f399e..4ae9e10 100644 --- a/weex_core/Source/CMakeLists.txt +++ b/weex_core/Source/CMakeLists.txt @@ -41,7 +41,12 @@ set(COMMON_SRCS ./core/config/core_environment.cpp ./core/moniter/render_performance.cpp + ./core/manager/weex_core_manager.cpp ) + +SET(FINAL_ADD_LIBRARY +${COMMON_SRCS} ) +SET(FINAL_TARGET_LINK_LIBRARIES ) if (ANDROID) ## add_subdirectory for subdirectory has a CMakeLists.txt @@ -77,13 +82,25 @@ if (ANDROID) ) + SET(FINAL_ADD_LIBRARY + ${FINAL_ADD_LIBRARY} + ${ANDROID_SRCS} + ) + + SET(FINAL_TARGET_LINK_LIBRARIES + ${FINAL_TARGET_LINK_LIBRARIES} + wson + android + weexipc + log + z + ) - add_library(${WEEXCORE_LIBRARY_NAME} SHARED -${COMMON_SRCS} -${ANDROID_SRCS} - ) +endif (ANDROID) - target_include_directories(${WEEXCORE_LIBRARY_NAME} PUBLIC .) +add_library(${WEEXCORE_LIBRARY_NAME} SHARED +${FINAL_ADD_LIBRARY} +) - target_link_libraries(${WEEXCORE_LIBRARY_NAME} wson android weexipc log z) -endif (ANDROID) +target_include_directories(${WEEXCORE_LIBRARY_NAME} PUBLIC .) +target_link_libraries(${WEEXCORE_LIBRARY_NAME} ${FINAL_TARGET_LINK_LIBRARIES}) \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6ba25536/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp -- diff --git a/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp b/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp index 8014a41..c9bd3b0 100644 --- a/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp +++ b/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp @@ -28,6 +28,7 @@ #include #include #include +#include const char *s_cacheDir; bool s_start_pie = true; @@ -265,6 +266,7 @@ namespace WeexCore { jobject params) { Bridge_Impl_Android::getInstance()->setGlobalRef(jThis); + WeexCoreManager::getInstance()->setPlatformBridge(Bridge_Impl_Android::getInstance()); RenderManager::GetInstance()->SetMeasureFunctionAdapter(new MeasureFunctionAdapterImplAndroid()); std::unique_ptr serializer(createIPCSerializer()); const std::vector &initFrameworkParams = initFromParam(env, http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6ba25536/weex_core/Source/core/bridge/bridge.h -- diff --git a/weex_core/Source/core/bridge/bridge.h b/weex_core/Source/core/bridge/bridge.h index ab67fff..823e06c 100644 --- a/weex_core/Source/core/bridge/bridge.h +++ b/weex_core/Source/core/bridge/bridge.h @@ -97,6 +97,9 @@ namespace WeexCore { virtual int callMoveElement(const char* pageId, const char* ref,
[GitHub] incubator-weex issue #1231: [WEEX-342][android] The index attribute of the s...
Github user weex-bot commented on the issue: https://github.com/apache/incubator-weex/pull/1231 Warnings :warning: No Changelog changes! Messages :book: danger test finished. Generated by :no_entry_sign: http://github.com/danger/danger-js/";>dangerJS ---
[GitHub] incubator-weex pull request #1231: [WEEX-342][android] The index attribute o...
GitHub user gubaojian opened a pull request: https://github.com/apache/incubator-weex/pull/1231 [WEEX-342][android] The index attribute of the slider component does not work on Android. [WEEX-342][android] The index attribute of the slider component does not work on Android. You can merge this pull request into a Git repository by running: $ git pull https://github.com/gubaojian/incubator-weex release-0.19-06-03 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1231.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1231 commit a4c7c7aacfc13fa116d03d705b039cf1db8f25c1 Author: jianbai.gbj Date: 2018-06-01T02:55:08Z [WEEX-342][android] The index attribute of the slider component does not work on Android. ---
[GitHub] incubator-weex issue #1230: [WEEX-421] [core] use interface replacce android...
Github user weex-bot commented on the issue: https://github.com/apache/incubator-weex/pull/1230 Warnings :warning: No Changelog changes! Messages :book: danger test finished. Generated by :no_entry_sign: http://github.com/danger/danger-js/";>dangerJS ---
[GitHub] incubator-weex pull request #1230: [WEEX-421] [core] use interface replacce ...
GitHub user lucky-chen opened a pull request: https://github.com/apache/incubator-weex/pull/1230 [WEEX-421] [core] use interface replacce android_bridge_impl use ``` WeexCoreManager::getInstance()->getPlatformBridge()->xxx ``` to replace ``` Bridge_Impl_Android::getInstance()->xxx ``` in weexCore You can merge this pull request into a Git repository by running: $ git pull https://github.com/lucky-chen/incubator-weex core-feture-rmAndroidBridgeImpl Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1230.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1230 commit 0100e5fca9089533fe87d11b71f038b07dc473b5 Author: zhongcang Date: 2018-05-31T12:33:34Z * [core] use interface replacce android_bridge_impl ---
[GitHub] incubator-weex pull request #1229: [WEEX-408][android] weex dev tool update
Github user asfgit closed the pull request at: https://github.com/apache/incubator-weex/pull/1229 ---
incubator-weex git commit: [WEEX-408][android] weex dev tool update
Repository: incubator-weex Updated Branches: refs/heads/master 0cbbfba71 -> 3e002a40a [WEEX-408][android] weex dev tool update Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/3e002a40 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/3e002a40 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/3e002a40 Branch: refs/heads/master Commit: 3e002a40aa1b1394af2e393f20a830f21f0ff125 Parents: 0cbbfba Author: jianbai.gbj Authored: Thu May 31 20:32:45 2018 +0800 Committer: jianbai.gbj Committed: Thu May 31 20:32:45 2018 +0800 -- .../com/taobao/weex/bridge/WXJsFunctions.java | 2 +- .../com/taobao/weex/utils/WXWsonJSONSwitch.java | 15 +- weex_core/Source/CMakeLists.txt | 1 + .../Source/android/base/jni/jbytearray_ref.cpp | 42 +++ .../Source/android/base/jni/jbytearray_ref.h| 55 .../bridge/impl/jsfunction_impl_android.cpp | 43 +-- 6 files changed, 140 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3e002a40/android/sdk/src/main/java/com/taobao/weex/bridge/WXJsFunctions.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/bridge/WXJsFunctions.java b/android/sdk/src/main/java/com/taobao/weex/bridge/WXJsFunctions.java index 3624f23..568560e 100644 --- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXJsFunctions.java +++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXJsFunctions.java @@ -52,7 +52,7 @@ public class WXJsFunctions implements IWXJsFunctions { @Override public void jsHandleCallNativeComponent(String instanceId, String componentRef, String method, byte[] arguments, byte[] options){ -jsHandleCallNativeComponent(instanceId, componentRef, method, arguments, options, true); +jsHandleCallNativeComponent(instanceId, componentRef, method, WXWsonJSONSwitch.convertJSONToWsonIfUseWson(arguments), WXWsonJSONSwitch.convertJSONToWsonIfUseWson(options), true); } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3e002a40/android/sdk/src/main/java/com/taobao/weex/utils/WXWsonJSONSwitch.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/WXWsonJSONSwitch.java b/android/sdk/src/main/java/com/taobao/weex/utils/WXWsonJSONSwitch.java index 1904d3c..7224408 100644 --- a/android/sdk/src/main/java/com/taobao/weex/utils/WXWsonJSONSwitch.java +++ b/android/sdk/src/main/java/com/taobao/weex/utils/WXWsonJSONSwitch.java @@ -41,7 +41,11 @@ public class WXWsonJSONSwitch { if(json == null){ return null; } -return WsonUtils.toWson(JSON.parse(json)); +String str = new String(json); +if(str.startsWith("[")){ +return WsonUtils.toWson(JSON.parseArray(str)); +} +return WsonUtils.toWson(JSON.parse(str)); } /** @@ -85,6 +89,15 @@ public class WXWsonJSONSwitch { } +public static final Object convertWXJSObjectDataToJSON(WXJSObject object){ +if(object.type == WXJSObject.WSON){ +return JSON.parse(Wson.parse((byte[]) object.data).toString()); +}else{ +return JSON.parse(object.data.toString()); +} +} + + /** * config whether use json or wson, you should update this value by updateGlobalConfig(String config) http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3e002a40/weex_core/Source/CMakeLists.txt -- diff --git a/weex_core/Source/CMakeLists.txt b/weex_core/Source/CMakeLists.txt index 314b329..f4f399e 100644 --- a/weex_core/Source/CMakeLists.txt +++ b/weex_core/Source/CMakeLists.txt @@ -54,6 +54,7 @@ if (ANDROID) set (ANDROID_SRCS ./android/jniprebuild/jni_load.cc ./android/base/jni/android_jni.cpp +./android/base/jni/jbytearray_ref.cpp ./android/base/jni/scoped_java_ref.cpp ./android/base/base64/base64.cpp ./android/base/base64/modp_base64/modp_b64.cc http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3e002a40/weex_core/Source/android/base/jni/jbytearray_ref.cpp -- diff --git a/weex_core/Source/android/base/jni/jbytearray_ref.cpp b/weex_core/Source/android/base/jni/jbytearray_ref.cpp new file mode 100644 index 000..be3b91e --- /dev/null +++ b/weex_core/Source/android/base/jni/jbytearray_ref.cpp @@ -0,0 +1,42 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional
[GitHub] incubator-weex issue #1229: [WEEX-408][android] weex dev tool update
Github user weex-bot commented on the issue: https://github.com/apache/incubator-weex/pull/1229 Messages :book: has no jsfm file changed. :book: jsfm test finished. Generated by :no_entry_sign: http://github.com/danger/danger-js/";>dangerJS ---
[GitHub] incubator-weex pull request #1229: [WEEX-408][android] weex dev tool update
GitHub user gubaojian opened a pull request: https://github.com/apache/incubator-weex/pull/1229 [WEEX-408][android] weex dev tool update [WEEX-408][android] weex dev tool update You can merge this pull request into a Git repository by running: $ git pull https://github.com/gubaojian/incubator-weex release-0.19-devtool Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1229.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1229 commit 3e002a40aa1b1394af2e393f20a830f21f0ff125 Author: jianbai.gbj Date: 2018-05-31T12:32:45Z [WEEX-408][android] weex dev tool update ---
[GitHub] incubator-weex pull request #1227: [WEEX-420][iOS] Try to resolve multithrea...
Github user asfgit closed the pull request at: https://github.com/apache/incubator-weex/pull/1227 ---
incubator-weex git commit: [WEEX-420][iOS] Try to resolve multithread crash during delete layoutNode
Repository: incubator-weex Updated Branches: refs/heads/master e74c60cd3 -> 0cbbfba71 [WEEX-420][iOS] Try to resolve multithread crash during delete layoutNode close #1227 Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/0cbbfba7 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/0cbbfba7 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/0cbbfba7 Branch: refs/heads/master Commit: 0cbbfba71932fd465c95adecf052c2ddd9691827 Parents: e74c60c Author: zhongcang Authored: Wed May 30 20:58:44 2018 +0800 Committer: acton393 Committed: Thu May 31 16:39:13 2018 +0800 -- .../Sources/Component/WXScrollerComponent.mm | 4 +--- .../WeexSDK/Sources/Layout/WXComponent+Layout.h| 3 +++ .../WeexSDK/Sources/Layout/WXComponent+Layout.mm | 17 + ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.h | 9 + ios/sdk/WeexSDK/Sources/Model/WXComponent.mm | 5 +++-- 5 files changed, 33 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0cbbfba7/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.mm -- diff --git a/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.mm b/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.mm index fcf554a..9b8a1a2 100644 --- a/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.mm +++ b/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.mm @@ -247,9 +247,7 @@ WX_EXPORT_METHOD(@selector(resetLoadmore)) [self.stickyArray removeAllObjects]; [self.listenerArray removeAllObjects]; if(_flexScrollerCSSNode){ -delete _flexScrollerCSSNode; - -//WeexCore::WXCoreLayoutNode::freeNodeTree(_flexScrollerCSSNode); +[WXComponent recycleNodeOnComponentThread:_flexScrollerCSSNode gabRef:self.ref]; _flexScrollerCSSNode=nullptr; } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0cbbfba7/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.h -- diff --git a/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.h b/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.h index ac8700e..2f77976 100644 --- a/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.h +++ b/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.h @@ -59,4 +59,7 @@ extern "C" { - (void)_insertChildCssNode:(WXComponent*)subcomponent atIndex:(NSInteger)index; - (void)_rmChildCssNode:(WXComponent*)subcomponent; - (NSInteger) getActualNodeIndex:(WXComponent*)subcomponent atIndex:(NSInteger) index; +#ifdef __cplusplus ++ (void) recycleNodeOnComponentThread:(WeexCore::WXCoreLayoutNode * ) garbageNode gabRef:(NSString *)ref; +#endif @end http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0cbbfba7/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.mm -- diff --git a/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.mm b/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.mm index d1aa7d0..ecca959 100644 --- a/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.mm +++ b/ios/sdk/WeexSDK/Sources/Layout/WXComponent+Layout.mm @@ -637,5 +637,22 @@ static WeexCore::WXCoreSize flexCssNodeMeasure(WeexCore::WXCoreLayoutNode *node, } ++ (void) recycleNodeOnComponentThread:(WeexCore::WXCoreLayoutNode * ) garbageNode gabRef:(NSString *)ref { +if (nullptr == garbageNode) { +#ifdef DEBUG +WXLogDebug(@"flexlayout->recycle garbageNode ref:%@ is null ",ref); +#endif +return; +} +WXPerformBlockOnComponentThread(^{ +#ifdef DEBUG +WXLogDebug(@"flexlayout->recycle ref:%@ ,node:%p",ref,garbageNode ); +#endif +if(nullptr != garbageNode){ +delete garbageNode; +} +}); +//domthread +} @end http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0cbbfba7/ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.h -- diff --git a/ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.h b/ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.h index b7c299e..216c099 100644 --- a/ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.h +++ b/ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.h @@ -157,7 +157,16 @@ namespace WeexCore { mHasNewLayout = true; dirty = true; measureFunc = nullptr; +if(nullptr != mParent){ +mParent->removeChild(this); +} mParent = nullptr; +for(WXCoreLayoutNode* childNode : mChildList){ +if(nullptr != childNode){ +childNode->mParent = nullptr; +} +} + mChildList.