Merge remote-tracking branch 'remotes/upstream/0.16-dev' into android-feature-tracing
# Conflicts: # android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java # android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/288d8b5b Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/288d8b5b Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/288d8b5b Branch: refs/heads/0.16-dev Commit: 288d8b5b1b22539c3b72098a1096e59df948074f Parents: 4fa0a2c 8b9845e Author: misakuo <misa...@apache.org> Authored: Thu Aug 10 14:50:43 2017 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Aug 10 14:50:43 2017 +0800 ---------------------------------------------------------------------- .../java/com/taobao/weex/bridge/WXBridge.java | 8 +- .../com/taobao/weex/bridge/WXBridgeManager.java | 36 ++++- .../taobao/weex/bridge/WXValidateProcessor.java | 7 +- .../java/com/taobao/weex/dom/WXDomObject.java | 16 +- .../dom/action/AbstractAddElementAction.java | 2 +- html5/render/vue/README.md | 15 ++ html5/render/vue/components/image.js | 58 ++++++- html5/render/vue/config.js | 10 +- html5/render/vue/core/node.js | 27 ++-- html5/render/vue/lib/gesture.js | 6 + html5/render/vue/modules/modal/toast.js | 23 +-- html5/test/render/vue/core/node.js | 2 + ios/.gitignore | 1 + .../WeexDemo.xcodeproj/project.pbxproj | 24 ++- ios/playground/WeexDemo/AppDelegate.m | 8 +- ios/playground/WeexDemo/WXDemoViewController.m | 2 - ios/playground/WeexDemo/WXExtModule.h | 26 +++ ios/playground/WeexDemo/WXExtModule.m | 43 +++++ ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 8 + .../Sources/Component/WXImageComponent.m | 150 +++++++++-------- ios/sdk/WeexSDK/Sources/WeexSDK.h | 1 + package.json | 9 +- packages/weex-vue-render/README.md | 15 ++ packages/weex-vue-render/package.json | 2 +- test/pages/components/iconfont.vue | 71 ++++++++ test/pages/components/input-event.vue | 65 ++++++++ test/pages/components/refresh-loading.vue | 115 +++++++++++++ test/pages/components/switch-event.vue | 60 +++++++ test/pages/components/web-event.vue | 56 +++++++ test/pages/include/button.vue | 162 +++++++++++++++++++ test/pages/include/h1.vue | 13 ++ test/pages/include/h2.vue | 13 ++ test/pages/include/h3.vue | 13 ++ test/pages/include/hn.vue | 47 ++++++ test/pages/include/panel.vue | 141 ++++++++++++++++ test/pages/include/wxc-desc.vue | 66 ++++++++ test/pages/modules/animation-translate.vue | 129 +++++++++++++++ test/pages/modules/clipboard-event.vue | 57 +++++++ test/pages/modules/cover-generate.vue | 53 ++++++ test/pages/modules/downgrade-event.vue | 74 +++++++++ test/pages/modules/gesture-longpress.vue | 75 +++++++++ test/pages/modules/modal-event.vue | 61 +++++++ test/pages/modules/picker-event.vue | 63 ++++++++ test/pages/modules/storage-event.vue | 59 +++++++ test/pages/modules/stream-result.vue | 85 ++++++++++ test/run.sh | 30 +++- test/screenshot/border-android.png | Bin 156247 -> 158634 bytes test/scripts/components/iconfont.test.js | 34 ++++ test/scripts/components/input-event.test.js | 36 +++++ test/scripts/components/refresh-loading.test.js | 38 +++++ test/scripts/components/switch-event.test.js | 38 +++++ test/scripts/components/web-event.test.js | 30 ++++ .../scripts/modules/animation-translate.test.js | 40 +++++ test/scripts/modules/clipboard-event.test.js | 35 ++++ test/scripts/modules/downgrade-event.test.js | 30 ++++ test/scripts/modules/gesture-longpress.test.js | 37 +++++ test/scripts/modules/modal-event.test.js | 35 ++++ test/scripts/modules/picker-event.test.js | 41 +++++ test/scripts/modules/storage-event.test.js | 36 +++++ test/scripts/modules/stream-result.test.js | 34 ++++ test/scripts/util.js | 41 +++++ test/scripts/zcover-generate.js | 32 ++++ test/serve.sh | 2 +- 63 files changed, 2405 insertions(+), 141 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/288d8b5b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java ---------------------------------------------------------------------- diff --cc android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java index 8a2882c,5475e0d..0b3f8e4 --- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java +++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java @@@ -417,10 -442,11 +448,11 @@@ public class WXBridgeManager implement if(target != null){ if(WXDomModule.WXDOM.equals(target)){ WXDomModule dom = getDomModule(instanceId); - dom.callDomMethod(task); + dom.callDomMethod(task,parseNanos); }else { + JSONObject optionObj = task.getJSONObject(OPTIONS); callModuleMethod(instanceId, (String) target, - (String) task.get(METHOD), (JSONArray) task.get(ARGS)); + (String) task.get(METHOD), (JSONArray) task.get(ARGS), optionObj); } }else if(task.get(COMPONENT) != null){ //call component http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/288d8b5b/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java ---------------------------------------------------------------------- diff --cc android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java index 258df2b,9643abd..77969ee --- a/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java @@@ -632,9 -627,11 +632,14 @@@ public class WXDomObject extends CSSNod * @param json the original JSONObject * @return Dom Object corresponding to the JSONObject. */ + public static @Nullable WXDomObject parse(JSONObject json, WXSDKInstance wxsdkInstance) { + return parse(json, wxsdkInstance, null); + } + + public static @Nullable WXDomObject parse(JSONObject json, WXSDKInstance wxsdkInstance, WXDomObject parentDomObject){ + public static @Nullable WXDomObject parse(JSONObject json, WXSDKInstance wxsdkInstance){ + long startNanos = System.nanoTime(); + long timestamp = System.currentTimeMillis(); if (json == null || json.size() <= 0) { return null; } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/288d8b5b/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java ---------------------------------------------------------------------- diff --cc android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java index 3b2d964,eafa552..3d026ee --- a/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java @@@ -87,9 -80,7 +87,9 @@@ public abstract class AbstractAddElemen } //only non-root has parent. + Stopwatch.tick(); - WXDomObject domObject = WXDomObject.parse(dom, instance); + WXDomObject domObject = WXDomObject.parse(dom, instance, null); + Stopwatch.split("parseDomObject"); if (domObject == null || context.getDomByRef(domObject.getRef()) != null) { if (WXEnvironment.isApkDebugable()) {