You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by so...@apache.org on 2017/06/22 05:27:52 UTC

[01/40] incubator-weex git commit: Improved and removed grammatically errors and omissions

Repository: incubator-weex
Updated Branches:
  refs/heads/0.15-dev 99945834b -> 450ba37ef


Improved and removed grammatically errors and omissions


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/25debc85
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/25debc85
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/25debc85

Branch: refs/heads/0.15-dev
Commit: 25debc853df2f791d473a32ddfa9615d369dd983
Parents: 66e1b5a
Author: clintonyeb <cl...@gmail.com>
Authored: Mon Mar 20 20:55:55 2017 +0530
Committer: clintonyeb <cl...@gmail.com>
Committed: Mon Mar 20 20:55:55 2017 +0530

----------------------------------------------------------------------
 doc/source/guide/index.md | 26 +++++++++++++++++---------
 1 file changed, 17 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/25debc85/doc/source/guide/index.md
----------------------------------------------------------------------
diff --git a/doc/source/guide/index.md b/doc/source/guide/index.md
index c43176a..43413d2 100644
--- a/doc/source/guide/index.md
+++ b/doc/source/guide/index.md
@@ -8,20 +8,28 @@ has_chapter_content: true
 
 # Get Started
 
-Weex is a framework for building Mobile cross-platform high performance UI. Developers can write `*.vue` files to build native pages or an App. This page will help you write a Weex page in 2 minutes.
+Weex is a framework for building Mobile cross-platform high performance UI applications. Developers can leverage their existing knowledge of VueJS (a powerful JavaScript view library), by writing `*.vue` files to build native applications or pages. This page will help you write a **Weex** application in 2 minutes.
 
-## What is Vue?
+## Introduction to VueJS
 
-[Vue.js](https://vuejs.org/) is an excellent progressive JavaScript framework written by [Evan You](https://twitter.com/youyuxi). Now Weex and Vue has supported each other officially. Weex put Vue 2.x as its built-in JS Framework, and Vue has already been able to develop native mobile app.
+>[Vue](https://vuejs.org/) (pronounced /vjuː/, like view) is a progressive framework for building user interfaces. >Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core >library is focused on the view layer only, and is very easy to pick up and integrate with other libraries or >existing projects. On the other hand, Vue is also perfectly capable of powering sophisticated Single-Page Applications when used in combination with modern tooling and supporting libraries.
 
-## Hello world
+**VueJS is developed by [Evan You](https://twitter.com/youyuxi).**
 
-The easiest way to try Weex is to use the [Playground App](../playground.html) and write a Hello World example at [dotWe](https://dotwe.org). You don't need to consider installing the development environment or writing native code, just do the following two things:
+Weex now fully supports VueJS 2.x officailly. Weex put Vue 2.x as its built-in JS Framework, making it powerful for building native apps!.
 
-- Install the [Playground App](../playground.html) for your phone.
+## Hello world Example
+
+The easiest way to try Weex is to use the [Playground App](../playground.html) to write a **Hello World** example at [dotWe](https://dotwe.org). No installation is required and you do not even have to write native code. 
+
+To test Weex online using our Playground App:
+
+- Install the [Playground App](../playground.html) on your phone.
 - Open [the Hello World example](http://dotwe.org/vue/4d5a0471ece3daabd4681bc6d703c4c1) in a new tab, click run, and then use the Playground App to scan the QR code.
 
-Nailed it! In this case, We can see HTML semantic tags, CSS styles and Javascript code. This is one of the simplest Weex examples. It rendered a "Hello World" in the page. Please note that this is not a Web page.
+Nailed it! 
+
+If you took the procedure above, you can see simple HTML semantic tags, CSS styles and Javascript code. This is one of the simplest Weex examples. The demo applications renders a "Hello World" in the page. Please note that this is not a Web page. You are running native!.
 
 ![mobile_preview](https://img.alicdn.com/tps/TB1Ymw3OpXXXXcvXpXXXXXXXXXX-500-1013.jpg)
 
@@ -53,6 +61,6 @@ As shown in the following code:
 </script>
 ```
 
-It's too easy,right? Let's focus on the syntax, obviously this is vue.
+It's too easy,right? Take a look at the syntax, that is vue.
 
-You can try to modify the Hello World, then generate a new QR code to scan.
+You can try to modify the Hello World example if you have previous knowledge of building VueJS examples, then generate a new QR code to scan. If you don't have previous knowledge of VueJS, don't worry, this guide will teach you just that. Moreover, you can always learn from the [VueJS Guide](https://vuejs.org/v2/guide).


[13/40] incubator-weex git commit: * [all] Closes #364: invalid

Posted by so...@apache.org.
* [all] Closes #364: invalid


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/d0e5ee78
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/d0e5ee78
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/d0e5ee78

Branch: refs/heads/0.15-dev
Commit: d0e5ee78eda3f02bd2b0f46c254a26c27b1dd376
Parents: 55b9b6b
Author: sospartan <so...@apache.org>
Authored: Fri Jun 9 10:37:09 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Fri Jun 9 10:37:09 2017 +0800

----------------------------------------------------------------------

----------------------------------------------------------------------



[11/40] incubator-weex git commit: * [all] Closes #394: invalid

Posted by so...@apache.org.
* [all] Closes #394: invalid


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a05f2efb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a05f2efb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a05f2efb

Branch: refs/heads/0.15-dev
Commit: a05f2efb308574498e61d5327c139e3aff38c659
Parents: 83b7f79
Author: sospartan <so...@apache.org>
Authored: Fri Jun 9 10:34:48 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Fri Jun 9 10:34:48 2017 +0800

----------------------------------------------------------------------

----------------------------------------------------------------------



[31/40] incubator-weex git commit: Merge branch '0.14-dev' into 0.14-dev-web

Posted by so...@apache.org.
Merge branch '0.14-dev' into 0.14-dev-web


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b6c9d0e7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b6c9d0e7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b6c9d0e7

Branch: refs/heads/0.15-dev
Commit: b6c9d0e77c07a3a21b9e21f698313a272752b5e1
Parents: baffd79 9994583
Author: MrRaindrop <te...@gmail.com>
Authored: Wed Jun 21 11:48:56 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Wed Jun 21 11:48:56 2017 +0800

----------------------------------------------------------------------
 .travis.yml                                     |  86 ++++-
 WeexSDK.podspec                                 |   2 +-
 android/run-ci.sh                               |   7 -
 android/sdk/build.gradle                        |  11 +-
 android/sdk/libs/armeabi/libweexjsc.so          | Bin 7566292 -> 7575352 bytes
 android/sdk/libs/x86/libweexjsc.so              | Bin 4545544 -> 12130116 bytes
 .../java/com/taobao/weex/WXSDKInstance.java     |  27 +-
 .../java/com/taobao/weex/bridge/WXBridge.java   | 299 ++++++++++++++-
 .../com/taobao/weex/bridge/WXBridgeManager.java | 362 +++++++++++++++++++
 .../java/com/taobao/weex/common/Constants.java  |   1 +
 .../java/com/taobao/weex/common/IWXBridge.java  |  21 ++
 .../java/com/taobao/weex/dom/WXDomModule.java   |   3 +-
 .../com/taobao/weex/dom/action/Actions.java     |  58 ++-
 .../ui/component/AbstractEditComponent.java     |  33 +-
 .../com/taobao/weex/ui/component/WXSlider.java  |   4 +-
 .../ui/component/list/BasicListComponent.java   |  16 +-
 .../taobao/weex/ui/module/WXTimerModule.java    |  87 +++--
 .../weex/ui/module/WXTimerModuleTest.java       |  44 ++-
 .../taobao/weex/bridge/WXWebsocketBridge.java   |  88 +++++
 doc/_config_cn.yml                              | 326 +++++++++++++++++
 doc/source/cn/references/modules/picker.md      |   2 +-
 .../WeexSDK/Sources/Bridge/WXBridgeContext.m    | 154 ++++++++
 ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 111 ++++++
 .../Sources/Component/WXComponent_internal.h    |   1 +
 .../Sources/Component/WXCycleSliderComponent.m  |   7 +-
 .../WeexSDK/Sources/Component/WXEditComponent.m |   7 +-
 .../WeexSDK/Sources/Component/WXTextComponent.m |  16 +-
 .../WeexSDK/Sources/Events/WXComponent+Events.m |   8 -
 .../WeexSDK/Sources/Layout/WXComponent+Layout.m |   1 -
 ios/sdk/WeexSDK/Sources/Model/WXComponent.m     |  47 ++-
 .../WeexSDK/Sources/Protocol/WXBridgeProtocol.h |  38 ++
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.m     |   4 +-
 package.json                                    |   2 +-
 test/ci-funcs.sh                                |  18 -
 test/pages/css/border.vue                       |  15 +-
 test/run.sh                                     |   4 +-
 test/screenshot/border-ios.png                  | Bin 128206 -> 126375 bytes
 test/scripts/util.js                            |   5 +-
 test/serve.sh                                   |   3 +-
 39 files changed, 1736 insertions(+), 182 deletions(-)
----------------------------------------------------------------------



[40/40] incubator-weex git commit: Merge branch '0.14-dev' into dev

Posted by so...@apache.org.
Merge branch '0.14-dev' into dev

 Conflicts:
	.travis.yml
	android/sdk/build.gradle
	doc/_config_cn.yml
	test/screenshot/border-ios.png


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/450ba37e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/450ba37e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/450ba37e

Branch: refs/heads/0.15-dev
Commit: 450ba37ef3339f4ed7f8f3f9b9cf096bd28fb4f9
Parents: 29a705d 7fc1190
Author: sospartan <so...@apache.org>
Authored: Thu Jun 22 13:26:29 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Thu Jun 22 13:26:29 2017 +0800

----------------------------------------------------------------------
 .travis.yml                                     |   2 +-
 LICENSE                                         |  20 +-
 POSSIBLE-NOTICES-FOR-BIN-DIST                   |   3 +
 WeexSDK.podspec                                 |   4 +-
 android/build.gradle                            |   2 +-
 android/run-ci.sh                               |   7 -
 android/sdk/build.gradle                        |  14 +-
 android/sdk/libs/armeabi/libweexjsc.so          | Bin 7570392 -> 7575352 bytes
 android/sdk/libs/x86/libweexjsc.so              | Bin 12121924 -> 12130116 bytes
 .../com/taobao/weex/LayoutFinishListener.java   |  18 +
 .../java/com/taobao/weex/WXSDKInstance.java     |  27 +-
 .../taobao/weex/adapter/ICrashInfoReporter.java |  18 +
 .../java/com/taobao/weex/bridge/WXBridge.java   | 299 ++++++++++++++-
 .../com/taobao/weex/bridge/WXBridgeManager.java | 362 +++++++++++++++++++
 .../java/com/taobao/weex/common/Constants.java  |   2 +
 .../weex/common/ICheckBindingScroller.java      |  18 +
 .../java/com/taobao/weex/common/IWXBridge.java  |  21 ++
 .../java/com/taobao/weex/dom/WXDomModule.java   |   3 +-
 .../com/taobao/weex/dom/action/Actions.java     |  58 ++-
 .../taobao/weex/dom/action/AnimationAction.java |  37 +-
 .../weex/dom/action/ExecutableRenderAction.java |  18 +
 .../weex/dom/action/ModuleInvocationAction.java |  18 +
 .../weex/dom/action/UpdateStyleAction.java      |   4 +-
 .../ui/animation/DimensionUpdateListener.java   |  88 -----
 .../weex/ui/animation/HeightProperty.java       |  35 ++
 .../weex/ui/animation/LayoutParamsProperty.java |  64 ++++
 .../weex/ui/animation/WXAnimationBean.java      |  72 ++--
 .../taobao/weex/ui/animation/WidthProperty.java |  35 ++
 .../ui/component/AbstractEditComponent.java     |  14 +-
 .../com/taobao/weex/ui/component/Textarea.java  |   6 +
 .../taobao/weex/ui/component/WXComponent.java   |  18 +-
 .../com/taobao/weex/ui/component/WXSlider.java  |   4 +-
 .../ui/component/list/BasicListComponent.java   | 191 +++++++++-
 .../ui/component/list/DefaultDragHelper.java    | 173 +++++++++
 .../weex/ui/component/list/DragHelper.java      |  57 +++
 .../ui/component/list/DragSupportCallback.java  | 146 ++++++++
 .../weex/ui/component/list/EventTrigger.java    |  25 ++
 .../taobao/weex/ui/module/WXTimerModule.java    |  87 +++--
 .../com/taobao/weex/ui/view/WXEditText.java     |   9 +-
 .../taobao/weex/utils/WXDataStructureUtil.java  |  21 +-
 .../com/taobao/weex/utils/WXResourceUtils.java  |   2 +-
 .../java/com/taobao/weex/WXSDKInstanceTest.java |  26 +-
 .../weex/adapter/DefaultUriAdapterTest.java     |   4 +-
 .../clipboard/WXClipboardModuleTest.java        |   4 +-
 .../navigator/WXNavigatorModuleTest.java        |   4 +-
 .../appfram/storage/DefaultWXStorageTest.java   |  32 +-
 .../appfram/storage/WXStorageModuleTest.java    |  16 +-
 .../taobao/weex/bridge/WXBridgeManagerTest.java |  14 +-
 .../com/taobao/weex/bridge/WXBridgeTest.java    |   4 +-
 .../com/taobao/weex/bridge/WXHashMapTest.java   |   4 +-
 .../taobao/weex/bridge/WXModuleManagerTest.java |   4 +-
 .../java/com/taobao/weex/dom/WXAttrTest.java    |   4 +-
 .../com/taobao/weex/dom/WXDomModuleTest.java    |   4 +-
 .../com/taobao/weex/dom/WXDomObjectTest.java    |   4 +-
 .../com/taobao/weex/dom/WXDomStatementTest.java |   4 +-
 .../taobao/weex/dom/WXTextDomObjectTest.java    |   4 +-
 .../ui/animation/WXAnimationModuleTest.java     |   4 +-
 .../weex/ui/component/EditComponentTest.java    |   4 +-
 .../taobao/weex/ui/component/TextareaTest.java  |   4 +-
 .../weex/ui/component/WXComponentTest.java      |   4 +-
 .../com/taobao/weex/ui/component/WXDivTest.java |   4 +-
 .../taobao/weex/ui/component/WXEmbedTest.java   |   4 +-
 .../taobao/weex/ui/component/WXImageTest.java   |  14 +-
 .../taobao/weex/ui/component/WXLoadingTest.java |   4 +-
 .../taobao/weex/ui/component/WXRefreshTest.java |   4 +-
 .../weex/ui/component/WXScrollerTest.java       |   4 +-
 .../weex/ui/component/WXSliderNeighborTest.java |   4 +-
 .../taobao/weex/ui/component/WXSliderTest.java  |   4 +-
 .../taobao/weex/ui/component/WXSwitchTest.java  |   4 +-
 .../taobao/weex/ui/component/WXVideoTest.java   |   4 +-
 .../com/taobao/weex/ui/component/WXWebTest.java |   4 +-
 .../component/helper/WXTimeInputHelperTest.java |   4 +-
 .../component/list/DefaultDragHelperTest.java   | 132 +++++++
 .../ui/component/list/WXListComponentTest.java  |   4 +-
 .../taobao/weex/ui/module/WXMetaModuleTest.java |   4 +-
 .../weex/ui/module/WXModalUIModuleTest.java     |   4 +-
 .../weex/ui/module/WXTimerModuleTest.java       |  48 ++-
 .../weex/ui/module/WXWebViewModuleTest.java     |   4 +-
 .../weex/ui/view/WXCirclePageAdapterTest.java   |   4 +-
 .../taobao/weex/ui/view/WXScrollViewTest.java   |   4 +-
 .../com/taobao/weex/ui/view/WXWebViewTest.java  |   9 +-
 .../weex/ui/view/gesture/WXGestureTest.java     |   4 +-
 .../com/taobao/weex/utils/TypefaceUtilTest.java |   4 +-
 .../com/taobao/weex/utils/WXFileUtilsTest.java  |  17 +-
 .../com/taobao/weex/utils/WXLogUtilsTest.java   |   7 +-
 .../weex/utils/WXReflectionUtilsTest.java       |   4 +-
 .../taobao/weex/bridge/WXWebsocketBridge.java   |  88 +++++
 dangerfile.js                                   | 165 ++++++---
 doc/source/cn/references/modules/picker.md      |   2 +-
 examples/vue/components/waterfall.vue           | 165 ++++-----
 html5/render/vue/components/index.js            |   7 +-
 .../render/vue/components/scrollable/header.js  |   2 +-
 .../vue/components/scrollable/list/index.js     |  10 -
 .../components/scrollable/loading-indicator.js  | 152 +++++++-
 .../render/vue/components/scrollable/loading.js |   4 +-
 .../render/vue/components/scrollable/refresh.js |   4 +-
 .../vue/components/scrollable/scroller.js       |  15 -
 .../vue/components/scrollable/waterfall.js      | 338 +++++++++++++++++
 html5/render/vue/components/slider/indicator.js |   8 +-
 .../render/vue/components/slider/slideMixin.js  |  15 +-
 html5/render/vue/config.js                      |  21 ++
 html5/render/vue/core/style.js                  | 103 ++++--
 html5/render/vue/env/wx-env.js                  |  12 +-
 html5/render/vue/index.js                       |   3 +-
 html5/render/vue/mixins/base.js                 |  15 +-
 html5/render/vue/mixins/index.js                |   4 +-
 html5/render/vue/mixins/scrollable.js           |  87 ++++-
 html5/render/vue/mixins/sticky.js               |  65 ++++
 html5/render/vue/mixins/style.js                |  11 +-
 html5/render/vue/modules/dom.js                 |  18 +-
 html5/render/vue/modules/globalEvent.js         |  69 ++++
 html5/render/vue/modules/index.js               |   2 +
 html5/render/vue/styles/base.css                |  86 ++---
 html5/render/vue/styles/reset.css               |   5 +
 html5/render/vue/utils/component.js             | 187 +++++++---
 html5/render/vue/utils/func.js                  |  30 ++
 html5/render/vue/utils/style.js                 |  33 ++
 .../WeexDemo.xcodeproj/project.pbxproj          |   2 +-
 ios/playground/WeexDemo/WXDemoViewController.m  |   6 -
 .../WeexSDK/Sources/Bridge/WXBridgeContext.m    | 154 ++++++++
 ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 111 ++++++
 .../Sources/Component/WXComponent_internal.h    |   1 +
 .../WeexSDK/Sources/Component/WXEditComponent.m |   7 +-
 .../Sources/Component/WXImageComponent.m        |   7 +-
 .../Sources/Component/WXScrollerComponent.m     |   5 +-
 .../WeexSDK/Sources/Component/WXTextComponent.m |  16 +-
 ios/sdk/WeexSDK/Sources/Component/WXTransform.h |   7 +
 ios/sdk/WeexSDK/Sources/Component/WXTransform.m | 131 ++++++-
 .../Sources/Controller/WXBaseViewController.m   |   6 -
 .../WeexSDK/Sources/Events/WXComponent+Events.m |  23 +-
 .../WeexSDK/Sources/Layout/WXComponent+Layout.m |   1 -
 .../Sources/Manager/WXComponentManager.m        |   5 +-
 ios/sdk/WeexSDK/Sources/Model/WXComponent.h     |   5 +
 ios/sdk/WeexSDK/Sources/Model/WXComponent.m     |  68 +++-
 .../WeexSDK/Sources/Module/WXAnimationModule.m  |  24 ++
 .../WeexSDK/Sources/Protocol/WXBridgeProtocol.h |  38 ++
 ios/sdk/WeexSDK/Sources/Utility/WXDefine.h      |   2 +-
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.m     |   4 +-
 .../Sources/View/WXComponent+ViewManagement.m   |  13 +-
 package.json                                    |   4 +-
 packages/weex-vue-render/README.md              |  19 +-
 packages/weex-vue-render/package.json           |   2 +-
 test/pages/css/border.vue                       |  15 +-
 test/run.sh                                     |   9 +
 test/scripts/util.js                            |   5 +-
 test/serve.sh                                   |   3 +-
 146 files changed, 4049 insertions(+), 827 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/450ba37e/.travis.yml
----------------------------------------------------------------------


[16/40] incubator-weex git commit: + [ios] update for macaca test case

Posted by so...@apache.org.
+ [ios] update for macaca  test case


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/ab8b4ea6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/ab8b4ea6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/ab8b4ea6

Branch: refs/heads/0.15-dev
Commit: ab8b4ea6c5cd2c0cebd5d5c0e14eb098a479436b
Parents: 8e1cc1f
Author: 齐山 <su...@163.com>
Authored: Tue Jun 13 18:02:32 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Tue Jun 13 18:02:32 2017 +0800

----------------------------------------------------------------------
 ios/sdk/WeexSDK/Sources/Component/WXCycleSliderComponent.m | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ab8b4ea6/ios/sdk/WeexSDK/Sources/Component/WXCycleSliderComponent.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Component/WXCycleSliderComponent.m b/ios/sdk/WeexSDK/Sources/Component/WXCycleSliderComponent.m
index d17b7db..690c709 100644
--- a/ios/sdk/WeexSDK/Sources/Component/WXCycleSliderComponent.m
+++ b/ios/sdk/WeexSDK/Sources/Component/WXCycleSliderComponent.m
@@ -209,9 +209,10 @@ typedef NS_ENUM(NSInteger, Direction) {
         if (_infinite) {
             [self.scrollView setContentOffset:CGPointMake(self.width * 2, 0) animated:YES];
         } else {
-            _currentIndex += 1;
-            if (_currentIndex - 1 < _itemViews.count) {
-                [self.scrollView setContentOffset:CGPointMake(_currentIndex * self.width, 0) animated:YES];
+            // the currentindex will be set at the end of animation
+            NSInteger nextIndex = self.currentIndex + 1;
+            if(nextIndex < _itemViews.count) {
+                [self.scrollView setContentOffset:CGPointMake(nextIndex * self.width, 0) animated:YES];
             }
         }
     }


[18/40] incubator-weex git commit: * [doc] Update faq.md

Posted by so...@apache.org.
* [doc] Update faq.md


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f2b4494b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f2b4494b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f2b4494b

Branch: refs/heads/0.15-dev
Commit: f2b4494bc149d7f4744a79a0e56c74bcda1059df
Parents: 14fc159
Author: sospartan <so...@apache.org>
Authored: Wed Jun 14 15:50:30 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Wed Jun 14 15:50:30 2017 +0800

----------------------------------------------------------------------
 doc/source/faq.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f2b4494b/doc/source/faq.md
----------------------------------------------------------------------
diff --git a/doc/source/faq.md b/doc/source/faq.md
index d9b5928..ecc2b47 100644
--- a/doc/source/faq.md
+++ b/doc/source/faq.md
@@ -6,7 +6,7 @@ layout: post
 
 # FAQ
 
-## where are legacy docs?
+## Where are legacy docs?
 
 - [Guide](./v-0.10/guide/index.html)
 - [References](./v-0.10/references/index.html)
@@ -204,4 +204,4 @@ A wrong example:
     }
   }
 </script>
-```
\ No newline at end of file
+```


[02/40] incubator-weex git commit: Improved and removed grammatically errors and omissions

Posted by so...@apache.org.
Improved and removed grammatically errors and omissions


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f62b6ce8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f62b6ce8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f62b6ce8

Branch: refs/heads/0.15-dev
Commit: f62b6ce8b34122dce61191b621fd4e633d8ac56c
Parents: 25debc8
Author: clintonyeb <cl...@gmail.com>
Authored: Mon Mar 20 20:59:11 2017 +0530
Committer: clintonyeb <cl...@gmail.com>
Committed: Mon Mar 20 20:59:11 2017 +0530

----------------------------------------------------------------------
 doc/source/guide/index.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f62b6ce8/doc/source/guide/index.md
----------------------------------------------------------------------
diff --git a/doc/source/guide/index.md b/doc/source/guide/index.md
index 43413d2..6849990 100644
--- a/doc/source/guide/index.md
+++ b/doc/source/guide/index.md
@@ -8,7 +8,7 @@ has_chapter_content: true
 
 # Get Started
 
-Weex is a framework for building Mobile cross-platform high performance UI applications. Developers can leverage their existing knowledge of VueJS (a powerful JavaScript view library), by writing `*.vue` files to build native applications or pages. This page will help you write a **Weex** application in 2 minutes.
+Weex is a framework for building Mobile cross-platform high performance UI applications. Developers can leverage their existing knowledge of VueJS (a powerful JavaScript view library), by writing `*.vue` files to build native applications or pages. This page will help you to write a **Weex** application in 2 minutes.
 
 ## Introduction to VueJS
 


[04/40] incubator-weex git commit: * [doc] add webkit version.

Posted by so...@apache.org.
* [doc] add webkit version.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/dd98aa89
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/dd98aa89
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/dd98aa89

Branch: refs/heads/0.15-dev
Commit: dd98aa89acd8671e823489bd67baaa3daf4859a9
Parents: dcf9a83
Author: MrRaindrop <te...@gmail.com>
Authored: Tue Jun 6 12:10:49 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Tue Jun 6 12:10:49 2017 +0800

----------------------------------------------------------------------
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dd98aa89/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index f9400f0..839206c 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@ HTML5[![npm version](https://badge.fury.io/js/weex-html5.svg)](https://www.npmjs
 
 [![CircleCI](https://circleci.com/gh/alibaba/weex/tree/dev.svg?style=svg&circle-token=b83b047a3a01f6ec26458a455530a5ddc261925f)](https://circleci.com/gh/alibaba/weex/tree/dev)
 
-Support Android 4.1 (API 16) and iOS 8.0+.
+Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+.
 
 ## For Windows
 


[36/40] incubator-weex git commit: * [android] fix:Repeat adding the same event @notdanger

Posted by so...@apache.org.
* [android] fix:Repeat adding the same event @notdanger


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5a4eb484
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5a4eb484
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5a4eb484

Branch: refs/heads/0.15-dev
Commit: 5a4eb4848826ee6d512033b774cd36adc245fd3c
Parents: b6c9d0e
Author: cairq <ru...@alibaba-inc.com>
Authored: Wed Jun 21 17:53:28 2017 +0800
Committer: cairq <ru...@alibaba-inc.com>
Committed: Wed Jun 21 19:57:32 2017 +0800

----------------------------------------------------------------------
 .../src/main/java/com/taobao/weex/ui/component/WXComponent.java    | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5a4eb484/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
index c0d7c7a..3206c86 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
@@ -770,7 +770,7 @@ public abstract class  WXComponent<T extends View> implements IWXObject, IWXActi
    * @param type
    */
   public void addEvent(String type) {
-    if (TextUtils.isEmpty(type)) {
+    if (TextUtils.isEmpty(type) || mAppendEvents.contains(type)) {
       return;
     }
     mAppendEvents.add(type);


[29/40] incubator-weex git commit: Merge branch 'dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into dev

Posted by so...@apache.org.
Merge branch 'dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/c4e2d7a6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c4e2d7a6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c4e2d7a6

Branch: refs/heads/0.15-dev
Commit: c4e2d7a6e5fd705cb9630a6925e8a5b36de23aa5
Parents: 1493f33 6c47e96
Author: tancy <ro...@gmail.com>
Authored: Tue Jun 20 18:47:59 2017 +0800
Committer: tancy <ro...@gmail.com>
Committed: Tue Jun 20 18:47:59 2017 +0800

----------------------------------------------------------------------
 doc/source/faq.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------



[35/40] incubator-weex git commit: * [html5] update

Posted by so...@apache.org.
* [html5] 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/76ab14b9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/76ab14b9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/76ab14b9

Branch: refs/heads/0.15-dev
Commit: 76ab14b92b94f76f1b27812cbb01647da967ab1d
Parents: 40a6f13
Author: MrRaindrop <te...@gmail.com>
Authored: Wed Jun 21 17:44:23 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Wed Jun 21 17:44:23 2017 +0800

----------------------------------------------------------------------
 html5/render/vue/components/scrollable/loading-indicator.js | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/76ab14b9/html5/render/vue/components/scrollable/loading-indicator.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/components/scrollable/loading-indicator.js b/html5/render/vue/components/scrollable/loading-indicator.js
index d2746a5..37129fd 100644
--- a/html5/render/vue/components/scrollable/loading-indicator.js
+++ b/html5/render/vue/components/scrollable/loading-indicator.js
@@ -181,10 +181,10 @@ function processStyle (vm) {
   const style = extractComponentStyle(vm)
   const color = style.color
   const rgb = color && getRgb(color)
-  if (!rgb) {
-    return
+  if (rgb) {
+    setKeyframeColor(vm, rgb)
   }
-  setKeyframeColor(vm, rgb)
+  return style
 }
 
 export default {


[09/40] incubator-weex git commit: Merge branch 'master' of https://github.com/apache/incubator-weex

Posted by so...@apache.org.
Merge branch 'master' of https://github.com/apache/incubator-weex


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f08565b9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f08565b9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f08565b9

Branch: refs/heads/0.15-dev
Commit: f08565b9edf4a824654ff397763290c8832bfadf
Parents: 22c9bf7 88828c2
Author: liangjun.jiang <li...@gmail.com>
Authored: Wed Jun 7 14:57:57 2017 -0700
Committer: liangjun.jiang <li...@gmail.com>
Committed: Wed Jun 7 14:57:57 2017 -0700

----------------------------------------------------------------------
 .eslintignore                                   |    1 +
 .eslintrc                                       |   26 +-
 .flowconfig                                     |   17 +
 .gitignore                                      |    8 +-
 .rat-excludes                                   |   11 +
 .travis.yml                                     |   67 +-
 .wwprc                                          |    3 -
 CHANGELOG.md                                    |    7 +
 CONTRIBUTING.md                                 |   38 +-
 DISCLAIMER                                      |    1 +
 Dangerfile                                      |   55 -
 Dangerfile-ios                                  |    4 +
 HOW-TO-BUILD.md                                 |   80 +
 LICENSE                                         |   89 +-
 NOTICE                                          |   19 +-
 POSSIBLE-NOTICES-FOR-BIN-DIST                   |   99 +
 README.md                                       |   52 +-
 RUN-RAT.md                                      |   12 +
 WeexSDK.podspec                                 |   46 +
 android/.gitignore                              |    4 +-
 android/README.md                               |    6 +
 android/build.gradle                            |   49 +
 android/codeStyleSettings.xml                   |  393 +
 android/commons/build.gradle                    |   35 +-
 .../alibaba/weex/commons/ApplicationTest.java   |  222 +-
 android/commons/src/main/AndroidManifest.xml    |   18 +
 .../weex/commons/AbstractWeexActivity.java      |  246 +-
 .../weex/commons/SimpleWeexActivity.java        |  220 +-
 .../weex/commons/WXAnalyzerDelegate.java        |  220 +-
 .../alibaba/weex/commons/adapter/BlurTool.java  |  220 +-
 .../commons/adapter/BlurTransformation.java     |  222 +-
 .../adapter/DefaultWebSocketAdapter.java        |  220 +-
 .../adapter/DefaultWebSocketAdapterFactory.java |  220 +-
 .../commons/adapter/FrescoImageAdapter.java     |  220 +-
 .../commons/adapter/FrescoImageComponent.java   |  220 +-
 .../weex/commons/adapter/FrescoImageView.java   |  220 +-
 .../weex/commons/adapter/ImageAdapter.java      |  220 +-
 .../commons/adapter/JSExceptionAdapter.java     |  220 +-
 .../alibaba/weex/commons/util/AssertUtil.java   |  220 +-
 .../alibaba/weex/commons/util/ScreenUtil.java   |  220 +-
 android/gradle.properties                       |   16 +
 android/gradle/wrapper/gradle-wrapper.jar       |  Bin 0 -> 52266 bytes
 .../gradle/wrapper/gradle-wrapper.properties    |    6 +
 android/gradlew                                 |  164 +
 android/gradlew.bat                             |   90 +
 android/license/LICENSE                         |   16 +
 android/playground/LICENSE                      |  202 -
 android/playground/NOTICE                       |    7 -
 android/playground/README.md                    |    5 -
 android/playground/app/build.gradle             |   25 +-
 .../java/com/alibaba/weex/ApplicationTest.java  |   20 +-
 .../com/alibaba/weex/WeappJsBaseTestCase.java   |   18 +
 .../benchmark/BenchmarkActivityTestRule.java    |  218 +-
 .../alibaba/weex/benchmark/BenchmarkTest.java   |  218 +-
 .../com/alibaba/weex/benchmark/BoxPlot.java     |  218 +-
 .../java/com/alibaba/weex/benchmark/Repeat.java |  218 +-
 .../com/alibaba/weex/benchmark/RepeatRule.java  |  218 +-
 .../weex/benchmark/WeexNativeCompareTest.java   |  218 +-
 .../weex/uitest/TC_AG/AG_AHref_A_Href.java      |   18 +
 .../TC_AG/AG_Border_A_Border_Bottom_Color.java  |   18 +
 .../AG_Border_A_Border_Bottom_Left_Radius.java  |   18 +
 .../AG_Border_A_Border_Bottom_Right_Radius.java |   18 +
 .../TC_AG/AG_Border_A_Border_Bottom_Width.java  |   18 +
 .../uitest/TC_AG/AG_Border_A_Border_Color.java  |   18 +
 .../TC_AG/AG_Border_A_Border_Left_Color.java    |   18 +
 .../TC_AG/AG_Border_A_Border_Left_Width.java    |   18 +
 .../uitest/TC_AG/AG_Border_A_Border_Radius.java |   18 +
 .../TC_AG/AG_Border_A_Border_Right_Color.java   |   18 +
 .../TC_AG/AG_Border_A_Border_Right_Width.java   |   18 +
 .../uitest/TC_AG/AG_Border_A_Border_Style.java  |   18 +
 .../TC_AG/AG_Border_A_Border_Top_Color.java     |   18 +
 .../AG_Border_A_Border_Top_Left_Radius.java     |   18 +
 .../AG_Border_A_Border_Top_Right_Radius.java    |   18 +
 .../TC_AG/AG_Border_A_Border_Top_Width.java     |   18 +
 .../uitest/TC_AG/AG_Border_A_Border_Width.java  |   18 +
 .../AG_Border_Div_Border_Bottom_Color.java      |   18 +
 ...AG_Border_Div_Border_Bottom_Left_Radius.java |   18 +
 ...G_Border_Div_Border_Bottom_Right_Radius.java |   18 +
 .../AG_Border_Div_Border_Bottom_Width.java      |   18 +
 .../TC_AG/AG_Border_Div_Border_Color.java       |   18 +
 .../TC_AG/AG_Border_Div_Border_Left_Color.java  |   18 +
 .../TC_AG/AG_Border_Div_Border_Left_Width.java  |   18 +
 .../TC_AG/AG_Border_Div_Border_Radius.java      |   18 +
 .../TC_AG/AG_Border_Div_Border_Right_Color.java |   18 +
 .../TC_AG/AG_Border_Div_Border_Right_Width.java |   18 +
 .../TC_AG/AG_Border_Div_Border_Style.java       |   18 +
 .../TC_AG/AG_Border_Div_Border_Top_Color.java   |   18 +
 .../AG_Border_Div_Border_Top_Left_Radius.java   |   18 +
 .../AG_Border_Div_Border_Top_Right_Radius.java  |   18 +
 .../TC_AG/AG_Border_Div_Border_Top_Width.java   |   18 +
 .../TC_AG/AG_Border_Div_Border_Width.java       |   18 +
 .../AG_Border_Image_Border_Bottom_Color.java    |   18 +
 ..._Border_Image_Border_Bottom_Left_Radius.java |   18 +
 ...Border_Image_Border_Bottom_Right_Radius.java |   18 +
 .../AG_Border_Image_Border_Bottom_Width.java    |   18 +
 .../TC_AG/AG_Border_Image_Border_Color.java     |   18 +
 .../AG_Border_Image_Border_Left_Color.java      |   18 +
 .../AG_Border_Image_Border_Left_Width.java      |   18 +
 .../TC_AG/AG_Border_Image_Border_Radius.java    |   18 +
 .../AG_Border_Image_Border_Right_Color.java     |   18 +
 .../AG_Border_Image_Border_Right_Width.java     |   18 +
 .../TC_AG/AG_Border_Image_Border_Style.java     |   18 +
 .../TC_AG/AG_Border_Image_Border_Top_Color.java |   18 +
 .../AG_Border_Image_Border_Top_Left_Radius.java |   18 +
 ...AG_Border_Image_Border_Top_Right_Radius.java |   18 +
 .../TC_AG/AG_Border_Image_Border_Top_Width.java |   18 +
 .../TC_AG/AG_Border_Image_Border_Width.java     |   18 +
 .../AG_Border_Input_Border_Bottom_Color.java    |   18 +
 ..._Border_Input_Border_Bottom_Left_Radius.java |   18 +
 ...Border_Input_Border_Bottom_Right_Radius.java |   18 +
 .../AG_Border_Input_Border_Bottom_Width.java    |   18 +
 .../TC_AG/AG_Border_Input_Border_Color.java     |   18 +
 .../AG_Border_Input_Border_Left_Color.java      |   18 +
 .../AG_Border_Input_Border_Left_Width.java      |   18 +
 .../TC_AG/AG_Border_Input_Border_Radius.java    |   18 +
 .../AG_Border_Input_Border_Right_Color.java     |   18 +
 .../AG_Border_Input_Border_Right_Width.java     |   18 +
 .../TC_AG/AG_Border_Input_Border_Style.java     |   18 +
 .../TC_AG/AG_Border_Input_Border_Top_Color.java |   18 +
 .../AG_Border_Input_Border_Top_Left_Radius.java |   18 +
 ...AG_Border_Input_Border_Top_Right_Radius.java |   18 +
 .../TC_AG/AG_Border_Input_Border_Top_Width.java |   18 +
 .../TC_AG/AG_Border_Input_Border_Width.java     |   18 +
 .../AG_Border_Switch_Border_Bottom_Color.java   |   18 +
 ...Border_Switch_Border_Bottom_Left_Radius.java |   18 +
 ...order_Switch_Border_Bottom_Right_Radius.java |   18 +
 .../AG_Border_Switch_Border_Bottom_Width.java   |   18 +
 .../TC_AG/AG_Border_Switch_Border_Color.java    |   18 +
 .../AG_Border_Switch_Border_Left_Color.java     |   18 +
 .../AG_Border_Switch_Border_Left_Width.java     |   18 +
 .../TC_AG/AG_Border_Switch_Border_Radius.java   |   18 +
 .../AG_Border_Switch_Border_Right_Color.java    |   18 +
 .../AG_Border_Switch_Border_Right_Width.java    |   18 +
 .../TC_AG/AG_Border_Switch_Border_Style.java    |   18 +
 .../AG_Border_Switch_Border_Top_Color.java      |   18 +
 ...AG_Border_Switch_Border_Top_Left_Radius.java |   18 +
 ...G_Border_Switch_Border_Top_Right_Radius.java |   18 +
 .../AG_Border_Switch_Border_Top_Width.java      |   18 +
 .../TC_AG/AG_Border_Switch_Border_Width.java    |   18 +
 .../AG_Border_Text_Border_Bottom_Color.java     |   18 +
 ...G_Border_Text_Border_Bottom_Left_Radius.java |   18 +
 ..._Border_Text_Border_Bottom_Right_Radius.java |   18 +
 .../AG_Border_Text_Border_Bottom_Width.java     |   18 +
 .../TC_AG/AG_Border_Text_Border_Color.java      |   18 +
 .../TC_AG/AG_Border_Text_Border_Left_Color.java |   18 +
 .../TC_AG/AG_Border_Text_Border_Left_Width.java |   18 +
 .../TC_AG/AG_Border_Text_Border_Radius.java     |   18 +
 .../AG_Border_Text_Border_Right_Color.java      |   18 +
 .../AG_Border_Text_Border_Right_Width.java      |   18 +
 .../TC_AG/AG_Border_Text_Border_Style.java      |   18 +
 .../TC_AG/AG_Border_Text_Border_Top_Color.java  |   18 +
 .../AG_Border_Text_Border_Top_Left_Radius.java  |   18 +
 .../AG_Border_Text_Border_Top_Right_Radius.java |   18 +
 .../TC_AG/AG_Border_Text_Border_Top_Width.java  |   18 +
 .../TC_AG/AG_Border_Text_Border_Width.java      |   18 +
 .../AG_Border_Video_Border_Bottom_Color.java    |   18 +
 ..._Border_Video_Border_Bottom_Left_Radius.java |   18 +
 ...Border_Video_Border_Bottom_Right_Radius.java |   18 +
 .../AG_Border_Video_Border_Bottom_Width.java    |   18 +
 .../TC_AG/AG_Border_Video_Border_Color.java     |   18 +
 .../AG_Border_Video_Border_Left_Color.java      |   18 +
 .../AG_Border_Video_Border_Left_Width.java      |   18 +
 .../TC_AG/AG_Border_Video_Border_Radius.java    |   18 +
 .../AG_Border_Video_Border_Right_Color.java     |   18 +
 .../AG_Border_Video_Border_Right_Width.java     |   18 +
 .../TC_AG/AG_Border_Video_Border_Style.java     |   18 +
 .../TC_AG/AG_Border_Video_Border_Top_Color.java |   18 +
 .../AG_Border_Video_Border_Top_Left_Radius.java |   18 +
 ...AG_Border_Video_Border_Top_Right_Radius.java |   18 +
 .../TC_AG/AG_Border_Video_Border_Top_Width.java |   18 +
 .../TC_AG/AG_Border_Video_Border_Width.java     |   18 +
 .../AG_Border_Web_Border_Bottom_Color.java      |   18 +
 ...AG_Border_Web_Border_Bottom_Left_Radius.java |   18 +
 ...G_Border_Web_Border_Bottom_Right_Radius.java |   18 +
 .../AG_Border_Web_Border_Bottom_Width.java      |   18 +
 .../TC_AG/AG_Border_Web_Border_Color.java       |   18 +
 .../TC_AG/AG_Border_Web_Border_Left_Color.java  |   18 +
 .../TC_AG/AG_Border_Web_Border_Left_Width.java  |   18 +
 .../TC_AG/AG_Border_Web_Border_Radius.java      |   18 +
 .../TC_AG/AG_Border_Web_Border_Right_Color.java |   18 +
 .../TC_AG/AG_Border_Web_Border_Right_Width.java |   18 +
 .../TC_AG/AG_Border_Web_Border_Style.java       |   18 +
 .../TC_AG/AG_Border_Web_Border_Top_Color.java   |   18 +
 .../AG_Border_Web_Border_Top_Left_Radius.java   |   18 +
 .../AG_Border_Web_Border_Top_Right_Radius.java  |   18 +
 .../TC_AG/AG_Border_Web_Border_Top_Width.java   |   18 +
 .../TC_AG/AG_Border_Web_Border_Width.java       |   18 +
 .../uitest/TC_AG/AG_CommonAttribute_A_If.java   |   18 +
 .../uitest/TC_AG/AG_CommonAttribute_Div_If.java |   18 +
 .../TC_AG/AG_CommonAttribute_Image_If.java      |   18 +
 .../TC_AG/AG_CommonAttribute_Input_If.java      |   18 +
 .../TC_AG/AG_CommonAttribute_Switch_If.java     |   18 +
 .../TC_AG/AG_CommonAttribute_Text_If.java       |   18 +
 .../TC_AG/AG_CommonAttribute_Video_If.java      |   18 +
 .../uitest/TC_AG/AG_CommonAttribute_Web_If.java |   18 +
 .../uitest/TC_AG/AG_CommonEvent_A_Onclick.java  |   18 +
 .../TC_AG/AG_CommonEvent_Div_Onclick.java       |   18 +
 .../TC_AG/AG_CommonEvent_Image_Onclick.java     |   18 +
 .../TC_AG/AG_CommonEvent_Input_Onclick.java     |   18 +
 .../TC_AG/AG_CommonEvent_Switch_Onclick.java    |   18 +
 .../TC_AG/AG_CommonEvent_Text_Onclick.java      |   18 +
 .../TC_AG/AG_CommonEvent_Video_Onclick.java     |   18 +
 .../TC_AG/AG_CommonEvent_Web_Onclick.java       |   18 +
 .../AG_CommonStyle_A_Background_Color.java      |   18 +
 .../TC_AG/AG_CommonStyle_A_Widthandheight.java  |   18 +
 .../AG_CommonStyle_Div_Background_Color.java    |   18 +
 .../AG_CommonStyle_Div_Widthandheight.java      |   18 +
 .../AG_CommonStyle_Image_Background_Color.java  |   18 +
 .../AG_CommonStyle_Image_Widthandheight.java    |   18 +
 .../AG_CommonStyle_Input_Background_Color.java  |   18 +
 .../AG_CommonStyle_Input_Widthandheight.java    |   18 +
 .../AG_CommonStyle_Switch_Background_Color.java |   18 +
 .../AG_CommonStyle_Switch_Widthandheight.java   |   18 +
 .../AG_CommonStyle_Text_Background_Color.java   |   18 +
 .../AG_CommonStyle_Text_Widthandheight.java     |   18 +
 .../AG_CommonStyle_Video_Background_Color.java  |   18 +
 .../AG_CommonStyle_Video_Widthandheight.java    |   18 +
 .../AG_CommonStyle_Web_Background_Color.java    |   18 +
 .../AG_CommonStyle_Web_Widthandheight.java      |   18 +
 .../weex/uitest/TC_AG/AG_Gesture_Div_Click.java |   18 +
 .../uitest/TC_AG/AG_Gesture_Div_Conflict.java   |   18 +
 .../uitest/TC_AG/AG_Gesture_Div_Longpress.java  |   18 +
 .../weex/uitest/TC_AG/AG_Gesture_Div_Pan.java   |   18 +
 .../weex/uitest/TC_AG/AG_Gesture_Div_Swipe.java |   18 +
 .../weex/uitest/TC_AG/AG_Gesture_Div_Touch.java |   18 +
 .../uitest/TC_AG/AG_Image_Image_Onload.java     |   18 +
 .../uitest/TC_AG/AG_Image_Image_Resize.java     |   18 +
 .../weex/uitest/TC_AG/AG_Image_Image_Src.java   |   18 +
 .../uitest/TC_AG/AG_Input_Input_Autofocus.java  |   18 +
 .../weex/uitest/TC_AG/AG_Input_Input_Color.java |   18 +
 .../uitest/TC_AG/AG_Input_Input_Disabled.java   |   18 +
 .../weex/uitest/TC_AG/AG_Input_Input_Event.java |   18 +
 .../uitest/TC_AG/AG_Input_Input_Font_Size.java  |   18 +
 .../uitest/TC_AG/AG_Input_Input_Font_Style.java |   18 +
 .../TC_AG/AG_Input_Input_Font_Weight.java       |   18 +
 .../TC_AG/AG_Input_Input_Placeholder.java       |   18 +
 .../TC_AG/AG_Input_Input_Placeholder_Color.java |   18 +
 .../uitest/TC_AG/AG_Input_Input_Text_Align.java |   18 +
 .../weex/uitest/TC_AG/AG_Input_Input_Type.java  |   18 +
 .../weex/uitest/TC_AG/AG_Input_Input_Value.java |   18 +
 .../weex/uitest/TC_AG/AG_Margin_A_Margin.java   |   18 +
 .../uitest/TC_AG/AG_Margin_A_Margin_Bottom.java |   18 +
 .../uitest/TC_AG/AG_Margin_A_Margin_Left.java   |   18 +
 .../uitest/TC_AG/AG_Margin_A_Margin_Right.java  |   18 +
 .../uitest/TC_AG/AG_Margin_A_Margin_Top.java    |   18 +
 .../weex/uitest/TC_AG/AG_Margin_Div_Margin.java |   18 +
 .../TC_AG/AG_Margin_Div_Margin_Bottom.java      |   18 +
 .../uitest/TC_AG/AG_Margin_Div_Margin_Left.java |   18 +
 .../TC_AG/AG_Margin_Div_Margin_Right.java       |   18 +
 .../uitest/TC_AG/AG_Margin_Div_Margin_Top.java  |   18 +
 .../uitest/TC_AG/AG_Margin_Image_Margin.java    |   18 +
 .../TC_AG/AG_Margin_Image_Margin_Bottom.java    |   18 +
 .../TC_AG/AG_Margin_Image_Margin_Left.java      |   18 +
 .../TC_AG/AG_Margin_Image_Margin_Right.java     |   18 +
 .../TC_AG/AG_Margin_Image_Margin_Top.java       |   18 +
 .../uitest/TC_AG/AG_Margin_Input_Margin.java    |   18 +
 .../TC_AG/AG_Margin_Input_Margin_Bottom.java    |   18 +
 .../TC_AG/AG_Margin_Input_Margin_Left.java      |   18 +
 .../TC_AG/AG_Margin_Input_Margin_Right.java     |   18 +
 .../TC_AG/AG_Margin_Input_Margin_Top.java       |   18 +
 .../uitest/TC_AG/AG_Margin_Switch_Margin.java   |   18 +
 .../TC_AG/AG_Margin_Switch_Margin_Bottom.java   |   18 +
 .../TC_AG/AG_Margin_Switch_Margin_Left.java     |   18 +
 .../TC_AG/AG_Margin_Switch_Margin_Right.java    |   18 +
 .../TC_AG/AG_Margin_Switch_Margin_Top.java      |   18 +
 .../uitest/TC_AG/AG_Margin_Text_Margin.java     |   18 +
 .../TC_AG/AG_Margin_Text_Margin_Bottom.java     |   18 +
 .../TC_AG/AG_Margin_Text_Margin_Left.java       |   18 +
 .../TC_AG/AG_Margin_Text_Margin_Right.java      |   18 +
 .../uitest/TC_AG/AG_Margin_Text_Margin_Top.java |   18 +
 .../uitest/TC_AG/AG_Margin_Video_Margin.java    |   18 +
 .../TC_AG/AG_Margin_Video_Margin_Bottom.java    |   18 +
 .../TC_AG/AG_Margin_Video_Margin_Left.java      |   18 +
 .../TC_AG/AG_Margin_Video_Margin_Right.java     |   18 +
 .../TC_AG/AG_Margin_Video_Margin_Top.java       |   18 +
 .../weex/uitest/TC_AG/AG_Margin_Web_Margin.java |   18 +
 .../TC_AG/AG_Margin_Web_Margin_Bottom.java      |   18 +
 .../uitest/TC_AG/AG_Margin_Web_Margin_Left.java |   18 +
 .../TC_AG/AG_Margin_Web_Margin_Right.java       |   18 +
 .../uitest/TC_AG/AG_Margin_Web_Margin_Top.java  |   18 +
 .../uitest/TC_AG/AG_Switch_Switch_Checked.java  |   18 +
 .../uitest/TC_AG/AG_Switch_Switch_Onchange.java |   18 +
 .../weex/uitest/TC_AG/AG_Text_Text_Color.java   |   18 +
 .../uitest/TC_AG/AG_Text_Text_Font_Size.java    |   18 +
 .../uitest/TC_AG/AG_Text_Text_Font_Style.java   |   18 +
 .../uitest/TC_AG/AG_Text_Text_Font_Weight.java  |   18 +
 .../uitest/TC_AG/AG_Text_Text_Line_Height.java  |   18 +
 .../uitest/TC_AG/AG_Text_Text_Text_Align.java   |   18 +
 .../TC_AG/AG_Text_Text_Text_Decoration.java     |   18 +
 .../TC_AG/AG_Text_Text_Text_Overflow.java       |   18 +
 .../weex/uitest/TC_AG/AG_Text_Text_Value.java   |   18 +
 .../uitest/TC_AG/AG_Video_Video_Auto_Play.java  |   18 +
 .../weex/uitest/TC_AG/AG_Video_Video_Event.java |   18 +
 .../TC_AG/AG_Video_Video_Play_Status.java       |   18 +
 .../weex/uitest/TC_AG/AG_Video_Video_Src.java   |   18 +
 .../weex/uitest/TC_AG/AG_Web_Web_Event.java     |   18 +
 .../weex/uitest/TC_AG/AG_Web_Web_Src.java       |   18 +
 .../TC_AHref/WeexUiTestCaseTCAHrefEvent.java    |   18 +
 .../TC_AHref/WeexUiTestCaseTCAHrefStyle.java    |   18 +
 .../TC_AHref/WeexUiTestCaseTCAHrefUpdate.java   |   18 +
 .../TC_Color/WeexUiTestCaseTcColorType.java     |   18 +
 .../TC_Color/WeexUiTestCaseTcColorUpdate.java   |   18 +
 .../WeexUiTestCaseTcDowngradeAppVFalse.java     |   18 +
 .../WeexUiTestCaseTcDowngradeAppVTrue.java      |   18 +
 .../WeexUiTestCaseTcDowngradeDevMFalse.java     |   18 +
 .../WeexUiTestCaseTcDowngradeDevMTrue.java      |   18 +
 .../WeexUiTestCaseTcDowngradeOSVFalse.java      |   18 +
 .../WeexUiTestCaseTcDowngradeOSVTrue.java       |   18 +
 .../WeexUiTestCaseTcDowngradeWeexVFalse.java    |   18 +
 .../WeexUiTestCaseTcDowngradeWeexVTrue.java     |   18 +
 .../TC_Image/WeexUiTestCaseTcImageUpdate.java   |   18 +
 .../TC_Input/WeexUiTestCaseTcInputEvent.java    |   18 +
 .../WeexUiTestCaseTcInputPlaceholder.java       |   18 +
 .../TC_Input/WeexUiTestCaseTcInputStyle.java    |   18 +
 .../TC_Input/WeexUiTestCaseTcInputType.java     |   18 +
 .../TC_Slider/WeexUiTestCaseTcSlider.java       |   18 +
 .../WeexUiTestCaseTcTextStyleColumn.java        |   18 +
 .../TC_Text/WeexUiTestCaseTcTextStyleOwn.java   |   18 +
 .../TC_Text/WeexUiTestCaseTcTextStyleRow.java   |   18 +
 .../TC_Text/WeexUiTestCaseTcTextType.java       |   18 +
 .../weex/uitest/WeexUiTestCaseTcElementOpt.java |   18 +
 .../java/com/alibaba/weex/util/Falcon.java      |   18 +
 .../java/com/alibaba/weex/util/ScreenShot.java  |   18 +
 .../com/alibaba/weex/util/SdCardHelper.java     |   18 +
 .../java/com/alibaba/weex/util/TestFlow.java    |   18 +
 .../java/com/alibaba/weex/util/ViewUtil.java    |   18 +
 .../playground/app/src/main/AndroidManifest.xml |   18 +
 .../playground/app/src/main/assets/animation.js |   11 +-
 .../app/src/main/assets/component/a-demo.js     |   11 +-
 .../src/main/assets/component/countdown-demo.js |   11 +-
 .../app/src/main/assets/component/image-demo.js |   13 +-
 .../app/src/main/assets/component/input-demo.js |   11 +-
 .../main/assets/component/list/list-basic.js    |    8 +
 .../assets/component/list/list-demo-horizon.js  |    8 +
 .../src/main/assets/component/list/list-demo.js |    8 +
 .../src/main/assets/component/marquee-demo.js   |   11 +-
 .../src/main/assets/component/navigator-demo.js |   15 +-
 .../main/assets/component/process-bar-demo.js   |   11 +-
 .../src/main/assets/component/scroller-demo.js  |   11 +-
 .../assets/component/slider-neighbor/index.js   |  264 +
 .../slider-neighbor/silder-neighbor.js          |  287 -
 .../slider-neighbor/slider-neighbor-item.js     |    8 +
 .../slider-neighbor/slider-neighbor-page.js     |    8 +
 .../src/main/assets/component/slider/index.js   |   44 +-
 .../main/assets/component/slider/slider-item.js |    8 +
 .../main/assets/component/slider/slider-page.js |    8 +
 .../main/assets/component/tabbar/tabbar-demo.js |   15 +-
 .../main/assets/component/tabbar/tabbar-item.js |    8 +
 .../app/src/main/assets/component/text-demo.js  |  119 +-
 .../app/src/main/assets/component/video-demo.js |   11 +-
 .../app/src/main/assets/component/web-demo.js   |   12 +-
 android/playground/app/src/main/assets/error.js | 2217 +++++
 .../app/src/main/assets/geolocation.js          |  183 +
 android/playground/app/src/main/assets/hello.js |    8 +
 .../app/src/main/assets/hello_weex.js           |   28 -
 .../playground/app/src/main/assets/iconfont.js  |    8 +
 android/playground/app/src/main/assets/index.js |    2 +-
 .../app/src/main/assets/linear-gradient.js      |  367 +
 .../app/src/main/assets/module/clipboard.js     |   38 +-
 .../app/src/main/assets/module/componentRect.js |  107 +-
 .../app/src/main/assets/module/instance-api.js  |   14 +-
 .../app/src/main/assets/module/modal.js         |   18 +-
 .../app/src/main/assets/module/picker-demo.js   |   18 +-
 .../app/src/main/assets/module/storage-demo.js  |   14 +-
 .../app/src/main/assets/module/stream-demo.js   |   18 +-
 .../src/main/assets/module/websocket-demo.js    | 2412 +++++
 .../app/src/main/assets/showcase/calculator.js  |   21 +-
 .../assets/showcase/dropdown/dropdown-demo.js   |   30 +-
 .../assets/showcase/dropdown/we-dropdown.js     |   12 +-
 .../app/src/main/assets/showcase/minesweeper.js |   12 +-
 .../main/assets/showcase/new-fashion/banner.js  |    8 +-
 .../main/assets/showcase/new-fashion/banners.js |   20 +-
 .../main/assets/showcase/new-fashion/brand.js   |   36 +-
 .../assets/showcase/new-fashion/category.js     |   24 +-
 .../main/assets/showcase/new-fashion/coupon.js  |   12 +-
 .../main/assets/showcase/new-fashion/fashion.js |   38 +-
 .../main/assets/showcase/new-fashion/goods.js   |   24 +-
 .../assets/showcase/new-fashion/headlines.js    |   48 +-
 .../main/assets/showcase/new-fashion/index.js   |   21 +-
 .../main/assets/showcase/new-fashion/link.js    |    8 +-
 .../main/assets/showcase/new-fashion/main.js    |  209 +-
 .../main/assets/showcase/new-fashion/match.js   |   24 +-
 .../assets/showcase/new-fashion/resource.js     |   38 +-
 .../main/assets/showcase/new-fashion/scene.js   |   24 +-
 .../src/main/assets/showcase/pseudo-class.js    | 2425 +++++
 .../app/src/main/assets/showcase/ui.js          |   24 +-
 .../app/src/main/assets/style/index.js          |   76 +-
 .../app/src/main/assets/style/style-box.js      |   40 +-
 .../app/src/main/assets/style/style-flex.js     |   48 +-
 .../app/src/main/assets/style/style-item.js     |   12 +-
 .../app/src/main/assets/syntax/hello-world-1.js |    4 +-
 .../app/src/main/assets/syntax/hello-world-2.js |    6 +-
 .../app/src/main/assets/syntax/hello-world-3.js |   10 +-
 .../app/src/main/assets/syntax/hello-world-4.js |   14 +-
 .../app/src/main/assets/syntax/hello-world-5.js |   14 +-
 .../app/src/main/assets/syntax/hello-world.js   |   14 +-
 .../app/src/main/assets/syntax/index.js         |   20 +-
 .../src/main/assets/syntax/script-component.js  |   24 +-
 .../app/src/main/assets/syntax/script-data.js   |   12 +-
 .../app/src/main/assets/syntax/script-events.js |   12 +-
 .../src/main/assets/syntax/script-instance.js   |   12 +-
 .../src/main/assets/syntax/script-lifecycle.js  |   12 +-
 .../app/src/main/assets/syntax/script-module.js |   12 +-
 .../src/main/assets/syntax/script-options.js    |   12 +-
 .../src/main/assets/syntax/template-class.js    |   12 +-
 .../src/main/assets/syntax/template-content.js  |   20 +-
 .../src/main/assets/syntax/template-event.js    |   12 +-
 .../app/src/main/assets/syntax/template-if.js   |   12 +-
 .../assets/syntax/template-repeat-update.js     |   12 +-
 .../src/main/assets/syntax/template-repeat.js   |   12 +-
 .../src/main/assets/syntax/template-style.js    |    8 +-
 .../playground/app/src/main/assets/template.js  |   12 +-
 android/playground/app/src/main/assets/test.js  |  128 +
 .../app/src/main/assets/vue/animation.js        |  709 ++
 .../app/src/main/assets/vue/components/a.js     |  438 +
 .../src/main/assets/vue/components/countdown.js |  640 ++
 .../app/src/main/assets/vue/components/image.js |  641 ++
 .../app/src/main/assets/vue/components/input.js |  364 +
 .../app/src/main/assets/vue/components/list.js  |  246 +
 .../src/main/assets/vue/components/marquee.js   |  534 +
 .../src/main/assets/vue/components/navigator.js | 1059 ++
 .../src/main/assets/vue/components/scroller.js  |  304 +
 .../src/main/assets/vue/components/slider.js    |  898 ++
 .../src/main/assets/vue/components/tabbar.js    |  599 ++
 .../app/src/main/assets/vue/components/text.js  |  513 +
 .../app/src/main/assets/vue/components/video.js |  396 +
 .../app/src/main/assets/vue/components/web.js   |  459 +
 .../playground/app/src/main/assets/vue/hello.js |   99 +
 .../app/src/main/assets/vue/iconfont.js         |  204 +
 .../playground/app/src/main/assets/vue/index.js |  496 +
 .../src/main/assets/vue/modules/clipboard.js    |  691 ++
 .../src/main/assets/vue/modules/instance-api.js |  304 +
 .../app/src/main/assets/vue/modules/modal.js    |  581 ++
 .../app/src/main/assets/vue/modules/storage.js  |  381 +
 .../app/src/main/assets/vue/modules/stream.js   |  477 +
 .../src/main/assets/vue/showcase/calculator.js  |  340 +
 .../src/main/assets/vue/showcase/itemlist.js    | 1062 ++
 .../src/main/assets/vue/showcase/new-fashion.js | 3302 ++++++
 .../src/main/assets/vue/showcase/progress.js    |  336 +
 .../app/src/main/assets/vue/style/index.js      | 1566 +++
 .../app/src/main/assets/vue/style/style-box.js  |  780 ++
 .../app/src/main/assets/vue/style/style-flex.js |  919 ++
 .../app/src/main/assets/vue/style/style-item.js |  155 +
 .../src/main/assets/vue/syntax/hello-world-1.js |   95 +
 .../src/main/assets/vue/syntax/hello-world-2.js |  112 +
 .../src/main/assets/vue/syntax/hello-world-3.js |  127 +
 .../src/main/assets/vue/syntax/hello-world-4.js |  167 +
 .../src/main/assets/vue/syntax/hello-world-5.js |  173 +
 .../src/main/assets/vue/syntax/hello-world.js   |  183 +
 .../main/assets/vue/syntax/script-component.js  |  224 +
 .../src/main/assets/vue/syntax/script-data.js   |  214 +
 .../src/main/assets/vue/syntax/script-events.js |  161 +
 .../main/assets/vue/syntax/script-instance.js   |  196 +
 .../main/assets/vue/syntax/script-lifecycle.js  |  155 +
 .../src/main/assets/vue/syntax/script-module.js |  156 +
 .../main/assets/vue/syntax/script-options.js    |  182 +
 .../main/assets/vue/syntax/template-class.js    |  161 +
 .../main/assets/vue/syntax/template-content.js  |  189 +
 .../main/assets/vue/syntax/template-event.js    |  197 +
 .../src/main/assets/vue/syntax/template-if.js   |  165 +
 .../assets/vue/syntax/template-repeat-update.js |  195 +
 .../main/assets/vue/syntax/template-repeat.js   |  170 +
 .../main/assets/vue/syntax/template-style.js    |  144 +
 .../app/src/main/assets/vue/template.js         |  796 ++
 .../playground/app/src/main/ic_launcher-web.png |  Bin 0 -> 19935 bytes
 .../com/alibaba/weex/BenchmarkActivity.java     |  218 +-
 .../java/com/alibaba/weex/IndexActivity.java    |  226 +-
 .../java/com/alibaba/weex/SplashActivity.java   |  220 +-
 .../src/main/java/com/alibaba/weex/Utility.java |   91 +
 .../java/com/alibaba/weex/WXApplication.java    |  229 +-
 .../java/com/alibaba/weex/WXBaseActivity.java   |  220 +-
 .../java/com/alibaba/weex/WXDebugActivity.java  |  220 +-
 .../java/com/alibaba/weex/WXPageActivity.java   |  274 +-
 .../com/alibaba/weex/constants/Constants.java   |  220 +-
 .../alibaba/weex/extend/PlayDebugAdapter.java   |  220 +-
 .../extend/WXInstanceStatisticsListener.java    |   82 +
 .../extend/adapter/InterceptWXHttpAdapter.java  |  220 +-
 .../alibaba/weex/extend/component/RichText.java |  220 +-
 .../extend/component/WXComponentSyncTest.java   |  220 +-
 .../alibaba/weex/extend/component/WXMask.java   |   75 +
 .../extend/component/dom/WXMaskDomObject.java   |   45 +
 .../weex/extend/module/GeolocationModule.java   |  220 +-
 .../alibaba/weex/extend/module/MyModule.java    |  220 +-
 .../weex/extend/module/RenderModule.java        |  220 +-
 .../weex/extend/module/SyncTestModule.java      |  220 +-
 .../weex/extend/module/WXEventModule.java       |  220 +-
 .../extend/module/location/DefaultLocation.java |  332 +-
 .../weex/extend/module/location/ILocatable.java |  220 +-
 .../extend/module/location/LocationFactory.java |  220 +-
 .../alibaba/weex/extend/view/WXMaskView.java    |   34 +
 .../alibaba/weex/https/HotRefreshManager.java   |  220 +-
 .../com/alibaba/weex/https/WXHttpManager.java   |  220 +-
 .../com/alibaba/weex/https/WXHttpResponse.java  |  220 +-
 .../java/com/alibaba/weex/https/WXHttpTask.java |  220 +-
 .../alibaba/weex/https/WXOkHttpDispatcher.java  |  220 +-
 .../alibaba/weex/https/WXRequestListener.java   |  220 +-
 .../main/res/drawable-v21/ic_menu_camera.xml    |   18 +
 .../main/res/drawable-v21/ic_menu_gallery.xml   |   18 +
 .../main/res/drawable-v21/ic_menu_manage.xml    |   18 +
 .../src/main/res/drawable-v21/ic_menu_send.xml  |   18 +
 .../src/main/res/drawable-v21/ic_menu_share.xml |   18 +
 .../main/res/drawable-v21/ic_menu_slideshow.xml |   18 +
 .../app/src/main/res/drawable/side_nav_bar.xml  |   18 +
 .../src/main/res/layout/activity_dynamic.xml    |   18 +
 .../app/src/main/res/layout/activity_index.xml  |   18 +
 .../app/src/main/res/layout/activity_splash.xml |   18 +
 .../app/src/main/res/layout/activity_wxpage.xml |   18 +
 .../app/src/main/res/layout/app_bar_main.xml    |   18 +
 .../app/src/main/res/layout/camera.xml          |   18 +
 .../app/src/main/res/layout/catalog_item.xml    |   18 +
 .../app/src/main/res/layout/content_dynamic.xml |   18 +
 .../app/src/main/res/layout/content_main.xml    |   18 +
 .../app/src/main/res/layout/content_wx_main.xml |   18 +
 .../app/src/main/res/layout/hello_weex.xml      |  222 +-
 .../app/src/main/res/layout/id_stub.xml         |   75 +
 .../playground/app/src/main/res/menu/main.xml   |   18 +
 .../app/src/main/res/menu/main_scan.xml         |   18 +
 .../app/src/main/res/menu/refresh.xml           |   18 +
 .../src/main/res/mipmap-hdpi/ic_launcher.png    |  Bin 5248 -> 1755 bytes
 .../src/main/res/mipmap-mdpi/ic_launcher.png    |  Bin 4303 -> 1221 bytes
 .../src/main/res/mipmap-xhdpi/ic_launcher.png   |  Bin 6354 -> 2451 bytes
 .../src/main/res/mipmap-xxhdpi/ic_launcher.png  |  Bin 7930 -> 3939 bytes
 .../src/main/res/mipmap-xxxhdpi/ic_launcher.png |  Bin 10633 -> 5608 bytes
 .../app/src/main/res/values-v21/styles.xml      |   20 +-
 .../app/src/main/res/values-w820dp/dimens.xml   |   18 +
 .../app/src/main/res/values/attrs.xml           |   18 +
 .../app/src/main/res/values/colors.xml          |   18 +
 .../app/src/main/res/values/dimens.xml          |   18 +
 .../app/src/main/res/values/drawables.xml       |   18 +
 .../src/main/res/values/scan_code_styles.xml    |   18 +
 .../app/src/main/res/values/strings.xml         |   18 +
 .../app/src/main/res/values/styles.xml          |   18 +
 android/playground/build.gradle                 |   22 -
 android/playground/codeStyleSettings.xml        |  375 -
 android/playground/gradle.properties            |   16 -
 .../gradle/wrapper/gradle-wrapper.jar           |  Bin 51018 -> 0 bytes
 .../gradle/wrapper/gradle-wrapper.properties    |    8 -
 android/playground/gradlew                      |  164 -
 android/playground/gradlew.bat                  |   90 -
 android/playground/settings.gradle              |   10 -
 android/run-ci.sh                               |    8 +-
 android/sdk/.gitignore                          |    3 +-
 android/sdk/NOTICE                              |   13 -
 android/sdk/assets/main.js                      |   15 +-
 android/sdk/build.gradle                        |   87 +-
 android/sdk/config/quality/checkstyle.xml       |   18 +
 android/sdk/gradle/wrapper/gradle-wrapper.jar   |  Bin 53637 -> 0 bytes
 .../gradle/wrapper/gradle-wrapper.properties    |    7 -
 android/sdk/gradlew                             |  160 -
 android/sdk/gradlew.bat                         |   90 -
 android/sdk/libs/armeabi/libweexjsc.so          |  Bin 0 -> 7558100 bytes
 android/sdk/libs/armeabi/libweexv8.so           |  Bin 3583820 -> 0 bytes
 android/sdk/libs/x86/libweexjsc.so              |  Bin 0 -> 4545544 bytes
 android/sdk/libs/x86/libweexv8.so               |  Bin 4340864 -> 0 bytes
 android/sdk/license/LICENSE                     |  202 -
 .../license/license-gradle-plugin-0.12.1.jar    |  Bin 329739 -> 0 bytes
 .../license/maven-license-plugin-1.10.b1.jar    |  Bin 57954 -> 0 bytes
 android/sdk/license/plexus-utils-3.0.24.jar     |  Bin 247351 -> 0 bytes
 android/sdk/src/main/AndroidManifest.xml        |   18 +
 .../taobao/weex/IWXActivityStateListener.java   |  220 +-
 .../java/com/taobao/weex/IWXRenderListener.java |  220 +-
 .../com/taobao/weex/IWXStatisticsListener.java  |   66 +
 .../main/java/com/taobao/weex/InitConfig.java   |  234 +-
 .../java/com/taobao/weex/RenderContainer.java   |  220 +-
 .../java/com/taobao/weex/WXEnvironment.java     |  256 +-
 .../com/taobao/weex/WXGlobalEventModule.java    |  126 +-
 .../com/taobao/weex/WXGlobalEventReceiver.java  |  220 +-
 .../java/com/taobao/weex/WXRenderErrorCode.java |  220 +-
 .../main/java/com/taobao/weex/WXSDKEngine.java  |  152 +-
 .../java/com/taobao/weex/WXSDKInstance.java     |  405 +-
 .../main/java/com/taobao/weex/WXSDKManager.java |  245 +-
 .../taobao/weex/adapter/DefaultUriAdapter.java  |  241 +-
 .../weex/adapter/DefaultWXHttpAdapter.java      |  220 +-
 .../taobao/weex/adapter/DrawableStrategy.java   |  218 +-
 .../taobao/weex/adapter/IDrawableLoader.java    |  218 +-
 .../taobao/weex/adapter/IWXDebugAdapter.java    |  220 +-
 .../com/taobao/weex/adapter/IWXHttpAdapter.java |  220 +-
 .../weex/adapter/IWXImgLoaderAdapter.java       |  220 +-
 .../weex/adapter/IWXJSExceptionAdapter.java     |  220 +-
 .../taobao/weex/adapter/IWXSoLoaderAdapter.java |   50 +
 .../weex/adapter/IWXUserTrackAdapter.java       |  220 +-
 .../com/taobao/weex/adapter/URIAdapter.java     |  220 +-
 .../com/taobao/weex/annotation/Component.java   |  220 +-
 .../com/taobao/weex/annotation/JSMethod.java    |  220 +-
 .../weex/appfram/clipboard/IWXClipboard.java    |  220 +-
 .../appfram/clipboard/WXClipboardModule.java    |  220 +-
 .../navigator/IActivityNavBarSetter.java        |  220 +-
 .../appfram/navigator/WXNavigatorModule.java    |  130 +-
 .../weex/appfram/pickers/DatePickerImpl.java    |  220 +-
 .../weex/appfram/pickers/WXPickersModule.java   |  394 +-
 .../weex/appfram/storage/DefaultWXStorage.java  |  220 +-
 .../taobao/weex/appfram/storage/IWXStorage.java |  220 +-
 .../weex/appfram/storage/IWXStorageAdapter.java |  220 +-
 .../appfram/storage/StorageResultHandler.java   |  220 +-
 .../appfram/storage/WXSQLiteOpenHelper.java     |  220 +-
 .../weex/appfram/storage/WXStorageModule.java   |  220 +-
 .../appfram/websocket/IWebSocketAdapter.java    |  220 +-
 .../websocket/IWebSocketAdapterFactory.java     |  220 +-
 .../appfram/websocket/WebSocketCloseCodes.java  |  220 +-
 .../weex/appfram/websocket/WebSocketModule.java |  220 +-
 .../java/com/taobao/weex/bridge/Invoker.java    |  220 +-
 .../java/com/taobao/weex/bridge/JSCallback.java |  220 +-
 .../taobao/weex/bridge/JavascriptInvokable.java |  220 +-
 .../com/taobao/weex/bridge/MethodInvoker.java   |  220 +-
 .../com/taobao/weex/bridge/ModuleFactory.java   |  220 +-
 .../taobao/weex/bridge/NativeInvokeHelper.java  |  220 +-
 .../taobao/weex/bridge/SimpleJSCallback.java    |  220 +-
 .../java/com/taobao/weex/bridge/WXBridge.java   |  226 +-
 .../com/taobao/weex/bridge/WXBridgeManager.java |  381 +-
 .../java/com/taobao/weex/bridge/WXHashMap.java  |  220 +-
 .../java/com/taobao/weex/bridge/WXJSObject.java |  220 +-
 .../com/taobao/weex/bridge/WXModuleManager.java |  220 +-
 .../java/com/taobao/weex/bridge/WXParams.java   |  162 +-
 .../taobao/weex/bridge/WXServiceManager.java    |  251 +-
 .../java/com/taobao/weex/bridge/WXTask.java     |  220 +-
 .../taobao/weex/bridge/WXValidateProcessor.java |   55 +
 .../java/com/taobao/weex/common/Constants.java  |  254 +-
 .../com/taobao/weex/common/Destroyable.java     |  220 +-
 .../java/com/taobao/weex/common/IWXBridge.java  |  227 +-
 .../com/taobao/weex/common/IWXDebugProxy.java   |  220 +-
 .../java/com/taobao/weex/common/IWXObject.java  |  220 +-
 .../java/com/taobao/weex/common/IWXTask.java    |  220 +-
 .../taobao/weex/common/OnWXScrollListener.java  |  143 +-
 .../taobao/weex/common/TypeModuleFactory.java   |  220 +-
 .../com/taobao/weex/common/WXCompatModule.java  |  220 +-
 .../java/com/taobao/weex/common/WXConfig.java   |  220 +-
 .../com/taobao/weex/common/WXErrorCode.java     |  220 +-
 .../com/taobao/weex/common/WXException.java     |  220 +-
 .../com/taobao/weex/common/WXImageSharpen.java  |  220 +-
 .../com/taobao/weex/common/WXImageStrategy.java |  224 +-
 .../com/taobao/weex/common/WXInstanceWrap.java  |  220 +-
 .../taobao/weex/common/WXJSBridgeMsgType.java   |  221 +-
 .../taobao/weex/common/WXJSEngineListener.java  |  220 +-
 .../taobao/weex/common/WXJSExceptionInfo.java   |  220 +-
 .../com/taobao/weex/common/WXJSService.java     |   43 +
 .../java/com/taobao/weex/common/WXModule.java   |  220 +-
 .../com/taobao/weex/common/WXModuleAnno.java    |  222 +-
 .../com/taobao/weex/common/WXPerformance.java   |  222 +-
 .../com/taobao/weex/common/WXRefreshData.java   |  220 +-
 .../taobao/weex/common/WXRenderStrategy.java    |  223 +-
 .../java/com/taobao/weex/common/WXRequest.java  |  220 +-
 .../taobao/weex/common/WXRequestListener.java   |  220 +-
 .../java/com/taobao/weex/common/WXResponse.java |  220 +-
 .../taobao/weex/common/WXRuntimeException.java  |  220 +-
 .../java/com/taobao/weex/common/WXThread.java   |  229 +-
 .../com/taobao/weex/dom/ApplyStyleConsumer.java |   59 +
 .../taobao/weex/dom/BasicEditTextDomObject.java |  220 +-
 .../com/taobao/weex/dom/CSSAlignConvert.java    |  220 +-
 .../weex/dom/CSSFlexDirectionConvert.java       |  220 +-
 .../com/taobao/weex/dom/CSSJustifyConvert.java  |  220 +-
 .../taobao/weex/dom/CSSPositionTypeConvert.java |  220 +-
 .../com/taobao/weex/dom/CSSWrapConvert.java     |  220 +-
 .../java/com/taobao/weex/dom/DOMAction.java     |   30 +
 .../com/taobao/weex/dom/DOMActionContext.java   |   69 +
 .../taobao/weex/dom/DOMActionContextImpl.java   |  434 +
 .../java/com/taobao/weex/dom/DomContext.java    |  220 +-
 .../com/taobao/weex/dom/ImmutableDomObject.java |  238 +-
 .../java/com/taobao/weex/dom/RenderAction.java  |   29 +
 .../taobao/weex/dom/RenderActionContext.java    |   32 +
 .../com/taobao/weex/dom/RenderActionTask.java   |   41 +
 .../weex/dom/SafePutConcurrentHashMap.java      |  220 +-
 .../weex/dom/TextAreaEditTextDomObject.java     |  220 +-
 .../main/java/com/taobao/weex/dom/WXAttr.java   |  316 +-
 .../com/taobao/weex/dom/WXCellDomObject.java    |   57 +
 .../com/taobao/weex/dom/WXCustomStyleSpan.java  |  220 +-
 .../java/com/taobao/weex/dom/WXDomHandler.java  |  304 +-
 .../java/com/taobao/weex/dom/WXDomManager.java  |  520 +-
 .../java/com/taobao/weex/dom/WXDomModule.java   |  655 +-
 .../java/com/taobao/weex/dom/WXDomObject.java   |  302 +-
 .../com/taobao/weex/dom/WXDomObjectFactory.java |  220 +-
 .../java/com/taobao/weex/dom/WXDomRegistry.java |  220 +-
 .../com/taobao/weex/dom/WXDomStatement.java     | 1272 ---
 .../java/com/taobao/weex/dom/WXDomTask.java     |  220 +-
 .../main/java/com/taobao/weex/dom/WXEvent.java  |  220 +-
 .../com/taobao/weex/dom/WXImageQuality.java     |  222 +-
 .../com/taobao/weex/dom/WXLineHeightSpan.java   |  220 +-
 .../com/taobao/weex/dom/WXListDomObject.java    |  220 +-
 .../taobao/weex/dom/WXRecyclerDomObject.java    |  132 +
 .../taobao/weex/dom/WXScrollerDomObject.java    |  220 +-
 .../main/java/com/taobao/weex/dom/WXStyle.java  |  446 +-
 .../com/taobao/weex/dom/WXSwitchDomObject.java  |  220 +-
 .../com/taobao/weex/dom/WXTextDomObject.java    |  220 +-
 .../dom/action/AbstractAddElementAction.java    |  127 +
 .../dom/action/AbstractLayoutFinishAction.java  |   54 +
 .../java/com/taobao/weex/dom/action/Action.java |   26 +
 .../com/taobao/weex/dom/action/Actions.java     |  164 +
 .../weex/dom/action/AddElementAction.java       |  109 +
 .../taobao/weex/dom/action/AddEventAction.java  |   76 +
 .../taobao/weex/dom/action/AddRuleAction.java   |   68 +
 .../taobao/weex/dom/action/AnimationAction.java |  278 +
 .../weex/dom/action/CreateBodyAction.java       |  116 +
 .../weex/dom/action/CreateFinishAction.java     |   38 +
 .../weex/dom/action/GetComponentRectAction.java |  116 +
 .../weex/dom/action/InvokeMethodAction.java     |   50 +
 .../weex/dom/action/MoveElementAction.java      |   95 +
 .../weex/dom/action/RefreshFinishAction.java    |   35 +
 .../weex/dom/action/RemoveElementAction.java    |  100 +
 .../weex/dom/action/RemoveEventAction.java      |   78 +
 .../weex/dom/action/ScrollToElementAction.java  |   71 +
 .../weex/dom/action/UpdateAttributeAction.java  |   77 +
 .../weex/dom/action/UpdateFinishAction.java     |   51 +
 .../weex/dom/action/UpdateStyleAction.java      |  112 +
 .../java/com/taobao/weex/dom/flex/CSSNode.java  |    8 +-
 .../main/java/com/taobao/weex/http/Options.java |  220 +-
 .../main/java/com/taobao/weex/http/Status.java  |  220 +-
 .../java/com/taobao/weex/http/WXHttpUtil.java   |  220 +-
 .../com/taobao/weex/http/WXStreamModule.java    |  248 +-
 .../com/taobao/weex/ui/ComponentCreator.java    |  220 +-
 .../weex/ui/ExternalLoaderComponentHolder.java  |  220 +-
 .../weex/ui/IExternalComponentGetter.java       |  220 +-
 .../taobao/weex/ui/IExternalMoudleGetter.java   |   29 +
 .../com/taobao/weex/ui/IFComponentHolder.java   |  220 +-
 .../java/com/taobao/weex/ui/IWXRenderTask.java  |  220 +-
 .../taobao/weex/ui/RenderActionContextImpl.java |  113 +
 .../taobao/weex/ui/SimpleComponentHolder.java   |  220 +-
 .../com/taobao/weex/ui/WXComponentRegistry.java |  220 +-
 .../com/taobao/weex/ui/WXRenderHandler.java     |  220 +-
 .../com/taobao/weex/ui/WXRenderManager.java     |  411 +-
 .../com/taobao/weex/ui/WXRenderStatement.java   |  556 --
 .../ui/animation/BackgroundColorProperty.java   |   66 +
 .../ui/animation/DimensionUpdateListener.java   |  224 +-
 .../weex/ui/animation/WXAnimationBean.java      |  225 +-
 .../weex/ui/animation/WXAnimationModule.java    |  419 +-
 .../ui/component/AbstractEditComponent.java     |  298 +-
 .../weex/ui/component/AppearanceHelper.java     |  220 +-
 .../weex/ui/component/NestedContainer.java      |  222 +-
 .../taobao/weex/ui/component/Scrollable.java    |  220 +-
 .../com/taobao/weex/ui/component/Textarea.java  |  220 +-
 .../java/com/taobao/weex/ui/component/WXA.java  |  220 +-
 .../taobao/weex/ui/component/WXBaseRefresh.java |  230 +-
 .../weex/ui/component/WXBasicComponentType.java |  223 +-
 .../taobao/weex/ui/component/WXComponent.java   |  329 +-
 .../weex/ui/component/WXComponentFactory.java   |  220 +-
 .../weex/ui/component/WXComponentProp.java      |  220 +-
 .../com/taobao/weex/ui/component/WXDiv.java     |  224 +-
 .../com/taobao/weex/ui/component/WXEmbed.java   |  277 +-
 .../com/taobao/weex/ui/component/WXHeader.java  |  229 +-
 .../com/taobao/weex/ui/component/WXImage.java   |  315 +-
 .../taobao/weex/ui/component/WXIndicator.java   |  222 +-
 .../com/taobao/weex/ui/component/WXInput.java   |  220 +-
 .../com/taobao/weex/ui/component/WXLoading.java |  232 +-
 .../weex/ui/component/WXLoadingIndicator.java   |  220 +-
 .../com/taobao/weex/ui/component/WXRefresh.java |  225 +-
 .../taobao/weex/ui/component/WXScroller.java    |  254 +-
 .../com/taobao/weex/ui/component/WXSlider.java  |  321 +-
 .../weex/ui/component/WXSliderNeighbor.java     |  262 +-
 .../com/taobao/weex/ui/component/WXSwitch.java  |  220 +-
 .../com/taobao/weex/ui/component/WXText.java    |  228 +-
 .../weex/ui/component/WXTextDecoration.java     |  220 +-
 .../taobao/weex/ui/component/WXVContainer.java  |  234 +-
 .../com/taobao/weex/ui/component/WXVideo.java   |  220 +-
 .../com/taobao/weex/ui/component/WXWeb.java     |  220 +-
 .../component/helper/SoftKeyboardDetector.java  |  148 +
 .../ui/component/helper/WXStickyHelper.java     |  231 +-
 .../ui/component/helper/WXTimeInputHelper.java  |  222 +-
 .../ui/component/list/BasicListComponent.java   |  409 +-
 .../component/list/HorizontalListComponent.java |  220 +-
 .../ui/component/list/ListComponentView.java    |  224 +-
 .../ui/component/list/SimpleListComponent.java  |  226 +-
 .../ui/component/list/SimpleRecyclerView.java   |  297 +-
 .../ui/component/list/StickyHeaderHelper.java   |  154 +
 .../taobao/weex/ui/component/list/WXCell.java   |  231 +-
 .../weex/ui/component/list/WXListComponent.java |  311 +-
 .../component/pesudo/OnActivePseudoListner.java |  220 +-
 .../weex/ui/component/pesudo/PesudoStatus.java  |  222 +-
 .../pesudo/TouchActivePseudoListener.java       |  220 +-
 .../com/taobao/weex/ui/module/WXMetaModule.java |  227 +-
 .../taobao/weex/ui/module/WXModalUIModule.java  |  222 +-
 .../taobao/weex/ui/module/WXTimerModule.java    |  222 +-
 .../taobao/weex/ui/module/WXWebViewModule.java  |  220 +-
 .../com/taobao/weex/ui/view/IRenderResult.java  |   26 +
 .../com/taobao/weex/ui/view/IRenderStatus.java  |  218 +-
 .../com/taobao/weex/ui/view/IWXScroller.java    |  220 +-
 .../com/taobao/weex/ui/view/IWXTextView.java    |  220 +-
 .../java/com/taobao/weex/ui/view/IWebView.java  |  220 +-
 .../weex/ui/view/WXBaseCircleIndicator.java     |  222 +-
 .../weex/ui/view/WXBaseRefreshLayout.java       |  220 +-
 .../taobao/weex/ui/view/WXCircleIndicator.java  |  220 +-
 .../weex/ui/view/WXCirclePageAdapter.java       |  220 +-
 .../taobao/weex/ui/view/WXCircleViewPager.java  |  241 +-
 .../com/taobao/weex/ui/view/WXEditText.java     |  220 +-
 .../com/taobao/weex/ui/view/WXFrameLayout.java  |  239 +-
 .../weex/ui/view/WXHorizontalScrollView.java    |  220 +-
 .../com/taobao/weex/ui/view/WXImageView.java    |  247 +-
 .../taobao/weex/ui/view/WXLoadingLayout.java    |  220 +-
 .../taobao/weex/ui/view/WXRefreshLayout.java    |  220 +-
 .../com/taobao/weex/ui/view/WXScrollView.java   |  224 +-
 .../taobao/weex/ui/view/WXSmoothScroller.java   |  220 +-
 .../com/taobao/weex/ui/view/WXSwitchView.java   |  220 +-
 .../com/taobao/weex/ui/view/WXTextView.java     |  247 +-
 .../com/taobao/weex/ui/view/WXVideoView.java    |  220 +-
 .../java/com/taobao/weex/ui/view/WXWebView.java |  220 +-
 .../weex/ui/view/border/BorderCorner.java       |  220 +-
 .../weex/ui/view/border/BorderDrawable.java     |  231 +-
 .../taobao/weex/ui/view/border/BorderEdge.java  |  291 +-
 .../weex/ui/view/border/BorderRadiusType.java   |  218 +-
 .../taobao/weex/ui/view/border/BorderStyle.java |  220 +-
 .../taobao/weex/ui/view/border/BorderUtil.java  |  220 +-
 .../view/border/BorderWidthStyleColorType.java  |  218 +-
 .../weex/ui/view/border/BottomLeftCorner.java   |  220 +-
 .../weex/ui/view/border/BottomRightCorner.java  |  220 +-
 .../weex/ui/view/border/TopLeftCorner.java      |  220 +-
 .../weex/ui/view/border/TopRightCorner.java     |  220 +-
 .../taobao/weex/ui/view/gesture/WXGesture.java  |  243 +-
 .../ui/view/gesture/WXGestureObservable.java    |  220 +-
 .../weex/ui/view/gesture/WXGestureType.java     |  220 +-
 .../listview/ExtendedLinearLayoutManager.java   |  245 +-
 .../ExtendedStaggeredGridLayoutManager.java     |   49 +
 .../weex/ui/view/listview/WXRecyclerView.java   |  263 +-
 .../listview/adapter/IOnLoadMoreListener.java   |  220 +-
 .../adapter/IRecyclerAdapterListener.java       |  220 +-
 .../listview/adapter/ListBaseViewHolder.java    |  262 +-
 .../adapter/RecyclerViewBaseAdapter.java        |  243 +-
 .../adapter/TransformItemDecoration.java        |  220 +-
 .../adapter/WXRecyclerViewOnScrollListener.java |  329 +-
 .../refresh/circlebar/CircleProgressBar.java    |  222 +-
 .../circlebar/MaterialProgressDrawable.java     |  222 +-
 .../ui/view/refresh/core/WXRefreshView.java     |  220 +-
 .../ui/view/refresh/core/WXSwipeLayout.java     |  220 +-
 .../ui/view/refresh/wrapper/BaseBounceView.java |  294 +-
 .../refresh/wrapper/BounceRecyclerView.java     |  342 +-
 .../refresh/wrapper/BounceScrollerView.java     |  221 +-
 .../java/com/taobao/weex/utils/ATagUtil.java    |  226 +-
 .../main/java/com/taobao/weex/utils/FontDO.java |  222 +-
 .../com/taobao/weex/utils/FunctionParser.java   |  220 +-
 .../com/taobao/weex/utils/ImageDrawable.java    |  218 +-
 .../java/com/taobao/weex/utils/ImgURIUtil.java  |  218 +-
 .../java/com/taobao/weex/utils/LogLevel.java    |  220 +-
 .../java/com/taobao/weex/utils/OsVersion.java   |   47 +
 .../taobao/weex/utils/SingleFunctionParser.java |  218 +-
 .../main/java/com/taobao/weex/utils/Trace.java  |  115 +
 .../com/taobao/weex/utils/TypefaceUtil.java     |  220 +-
 .../taobao/weex/utils/WXDataStructureUtil.java  |  220 +-
 .../java/com/taobao/weex/utils/WXDomUtils.java  |  218 +-
 .../java/com/taobao/weex/utils/WXFileUtils.java |  257 +-
 .../com/taobao/weex/utils/WXInterception.java   |  220 +-
 .../java/com/taobao/weex/utils/WXJsonUtils.java |  220 +-
 .../java/com/taobao/weex/utils/WXLogUtils.java  |  126 +-
 .../taobao/weex/utils/WXReflectionUtils.java    |  220 +-
 .../com/taobao/weex/utils/WXResourceUtils.java  |  325 +-
 .../taobao/weex/utils/WXSoInstallMgrSdk.java    |  280 +-
 .../java/com/taobao/weex/utils/WXUtils.java     |  364 +-
 .../java/com/taobao/weex/utils/WXViewUtils.java |  305 +-
 .../taobao/weex/utils/batch/BactchExecutor.java |  220 +-
 .../weex/utils/batch/BatchOperationHelper.java  |  220 +-
 .../taobao/weex/utils/batch/Interceptor.java    |  220 +-
 android/sdk/src/main/res/values/strings.xml     |  222 +-
 .../test/java/com/taobao/weex/TestActivity.java |  226 +-
 .../java/com/taobao/weex/TestApplication.java   |  220 +-
 .../java/com/taobao/weex/WXSDKEngineTest.java   |  222 +-
 .../java/com/taobao/weex/WXSDKInstanceTest.java |  223 +-
 .../java/com/taobao/weex/WXSDKManagerTest.java  |  224 +-
 .../weex/adapter/DefaultUriAdapterTest.java     |  231 +-
 .../clipboard/WXClipboardModuleTest.java        |  222 +-
 .../navigator/WXNavigatorModuleTest.java        |  222 +-
 .../appfram/storage/DefaultWXStorageTest.java   |  222 +-
 .../appfram/storage/WXStorageModuleTest.java    |  222 +-
 .../taobao/weex/bridge/WXBridgeManagerTest.java |  222 +-
 .../com/taobao/weex/bridge/WXBridgeTest.java    |  222 +-
 .../com/taobao/weex/bridge/WXHashMapTest.java   |  220 +-
 .../taobao/weex/bridge/WXModuleManagerTest.java |  222 +-
 .../java/com/taobao/weex/common/TestModule.java |  220 +-
 .../taobao/weex/common/TestModuleFactory.java   |  220 +-
 .../com/taobao/weex/common/WXModuleTest.java    |  222 +-
 .../java/com/taobao/weex/dom/TestDomObject.java |  220 +-
 .../java/com/taobao/weex/dom/WXAttrTest.java    |  222 +-
 .../com/taobao/weex/dom/WXDomManagerTest.java   |  222 +-
 .../com/taobao/weex/dom/WXDomModuleTest.java    |  222 +-
 .../com/taobao/weex/dom/WXDomObjectTest.java    |  222 +-
 .../com/taobao/weex/dom/WXDomStatementTest.java |  341 +-
 .../java/com/taobao/weex/dom/WXStyleTest.java   |  243 +-
 .../taobao/weex/dom/WXTextDomObjectTest.java    |  222 +-
 .../com/taobao/weex/dom/action/TestActions.java |   77 +
 .../taobao/weex/http/WXStreamModuleTest.java    |  220 +-
 .../com/taobao/weex/ui/ComponentHolderTest.java |  222 +-
 .../taobao/weex/ui/WXRenderStatementTest.java   |  226 +-
 .../ui/animation/WXAnimationModuleTest.java     |  240 +-
 .../taobao/weex/ui/component/ComponentTest.java |  220 +-
 .../weex/ui/component/EditComponentTest.java    |  222 +-
 .../taobao/weex/ui/component/TestComponent.java |  220 +-
 .../taobao/weex/ui/component/TestConstants.java |  220 +-
 .../taobao/weex/ui/component/TextareaTest.java  |  222 +-
 .../weex/ui/component/WXComponentTest.java      |  222 +-
 .../com/taobao/weex/ui/component/WXDivTest.java |  222 +-
 .../taobao/weex/ui/component/WXEmbedTest.java   |  222 +-
 .../taobao/weex/ui/component/WXHeaderTest.java  |  222 +-
 .../taobao/weex/ui/component/WXImageTest.java   |  128 +-
 .../taobao/weex/ui/component/WXLoadingTest.java |  222 +-
 .../taobao/weex/ui/component/WXRefreshTest.java |  222 +-
 .../weex/ui/component/WXScrollerTest.java       |  222 +-
 .../weex/ui/component/WXSliderNeighborTest.java |  222 +-
 .../taobao/weex/ui/component/WXSliderTest.java  |  222 +-
 .../taobao/weex/ui/component/WXSwitchTest.java  |  222 +-
 .../taobao/weex/ui/component/WXTextTest.java    |  227 +-
 .../taobao/weex/ui/component/WXVideoTest.java   |  222 +-
 .../com/taobao/weex/ui/component/WXWebTest.java |  222 +-
 .../component/helper/WXTimeInputHelperTest.java |  220 +-
 .../ui/component/list/WXListComponentTest.java  |  222 +-
 .../taobao/weex/ui/module/WXMetaModuleTest.java |  232 +-
 .../weex/ui/module/WXModalUIModuleTest.java     |  222 +-
 .../weex/ui/module/WXTimerModuleTest.java       |  222 +-
 .../weex/ui/module/WXWebViewModuleTest.java     |  222 +-
 .../weex/ui/view/WXCirclePageAdapterTest.java   |  222 +-
 .../taobao/weex/ui/view/WXScrollViewTest.java   |  222 +-
 .../com/taobao/weex/ui/view/WXWebViewTest.java  |  222 +-
 .../weex/ui/view/border/BorderCornerTest.java   |  220 +-
 .../weex/ui/view/border/BorderDrawableTest.java |  220 +-
 .../weex/ui/view/gesture/WXGestureTest.java     |  222 +-
 .../taobao/weex/utils/FunctionParserTest.java   |  233 +-
 .../com/taobao/weex/utils/TypefaceUtilTest.java |  222 +-
 .../com/taobao/weex/utils/WXFileUtilsTest.java  |  222 +-
 .../com/taobao/weex/utils/WXJsonUtilsTest.java  |  222 +-
 .../com/taobao/weex/utils/WXLogUtilsTest.java   |  222 +-
 .../weex/utils/WXReflectionUtilsTest.java       |  222 +-
 .../taobao/weex/utils/WXResourceUtilsTest.java  |  233 +-
 .../java/com/taobao/weex/utils/WXUtilsTest.java |  222 +-
 .../configuration/MockitoConfiguration.java     |  220 +-
 android/sdk/unittest.sh                         |    3 -
 android/settings.gradle                         |    9 +
 android/weex_debug/build.gradle                 |   25 +-
 .../gradle/wrapper/gradle-wrapper.jar           |  Bin 51018 -> 0 bytes
 .../gradle/wrapper/gradle-wrapper.properties    |    6 -
 android/weex_debug/gradlew                      |  164 -
 android/weex_debug/gradlew.bat                  |   90 -
 .../java/com/taobao/weex/ApplicationTest.java   |   20 +-
 android/weex_debug/src/main/AndroidManifest.xml |   18 +
 .../main/java/com/taobao/weex/WXDebugTool.java  |   18 +
 .../java/com/taobao/weex/WXPFComponent.java     |   18 +
 .../main/java/com/taobao/weex/WXPrettyFish.java |   18 +
 .../taobao/weex/adapter/DefautDebugAdapter.java |   18 +
 .../taobao/weex/bridge/WXWebsocketBridge.java   |  223 +-
 .../taobao/weex/scalpel/ScalpelFrameLayout.java |   18 +
 .../weex/websocket/WXWebSocketManager.java      |  126 +-
 .../drawable/leak_canary_toast_background.xml   |   18 +
 .../res/drawable/prettyfish_bg_floatmenu.xml    |   18 +
 .../main/res/drawable/prettyfish_coordrect.xml  |   18 +
 .../src/main/res/drawable/prettyfish_fab.xml    |   18 +
 .../main/res/layout/prettyfish_coordview.xml    |   18 +
 .../main/res/layout/prettyfish_coverview.xml    |   18 +
 .../main/res/layout/prettyfish_datachart.xml    |   18 +
 .../main/res/layout/prettyfish_datafilelist.xml |   18 +
 .../main/res/layout/prettyfish_datafilerow.xml  |   18 +
 .../src/main/res/layout/prettyfish_datarow.xml  |   18 +
 .../src/main/res/layout/prettyfish_detail.xml   |   18 +
 .../main/res/layout/prettyfish_filedetail.xml   |   18 +
 .../src/main/res/layout/prettyfish_filelist.xml |   18 +
 .../src/main/res/layout/prettyfish_filerow.xml  |   18 +
 .../res/layout/prettyfish_floatmenu_item.xml    |   18 +
 .../res/layout/prettyfish_floatmenuview.xml     |   18 +
 .../main/res/layout/prettyfish_recordview.xml   |   18 +
 .../src/main/res/layout/prettyfish_table.xml    |   18 +
 .../main/res/layout/prettyfish_tableitem.xml    |   18 +
 .../src/main/res/layout/prettyfish_uedgird.xml  |   18 +
 .../weex_debug/src/main/res/values/attrs.xml    |   18 +
 .../weex_debug/src/main/res/values/colors.xml   |   18 +
 .../weex_debug/src/main/res/values/dimens.xml   |   18 +
 .../weex_debug/src/main/res/values/strings.xml  |   18 +
 .../java/com/taobao/weex/ExampleUnitTest.java   |   20 +-
 bin/commit-msg.sh                               |   12 -
 bin/dist-browser.sh                             |   44 -
 bin/dist-js-framework.sh                        |   40 -
 bin/install-hooks.sh                            |    7 -
 bin/pre-commit.sh                               |   11 -
 bin/pre-push.sh                                 |   12 -
 bin/release.sh                                  |    4 -
 bin/welcome.sh                                  |   11 -
 build/build.js                                  |   20 +
 build/config.js                                 |   31 +-
 build/examples-banner-plugin.js                 |   83 +
 build/karma.vue.conf.js                         |   90 +-
 build/nightwatch.config.js                      |   19 +-
 build/rollup.browser.common.config.js           |   18 +
 build/webpack.ci.config.js                      |   71 +
 build/webpack.ci.web.config.js                  |   86 +
 build/webpack.deprecatedmacacatest.config.js    |   71 +
 build/webpack.examples.config.js                |   19 +
 build/webpack.examples.web.config.js            |   37 +-
 build/webpack.macacatest.config.js              |   57 -
 build/webpack.test.config.js                    |   18 +
 build/webpack.test.web.config.js                |   99 +
 build/webpack.vue.config.js                     |   18 +
 circle.yml                                      |   37 -
 dangerfile.js                                   |  189 +
 doc/_config.yml                                 |    6 +-
 doc/package.json                                |    5 +-
 doc/source/cn/faq.md                            |    2 +-
 doc/source/cn/guide/contributing.md             |  106 +
 doc/source/cn/guide/integrate-to-your-app.md    |   18 +-
 doc/source/cn/guide/intro/app-architecture.md   |    2 +-
 doc/source/cn/guide/intro/how-it-works.md       |    2 +-
 doc/source/cn/guide/intro/index.md              |    4 +-
 doc/source/cn/guide/intro/page-architecture.md  |    2 +-
 doc/source/cn/guide/intro/using-vue.md          |    2 +-
 doc/source/cn/guide/intro/web-dev-experience.md |    2 +-
 doc/source/cn/guide/intro/write-once.md         |    4 +-
 doc/source/cn/guide/set-up-env.md               |    4 +-
 doc/source/cn/guide/tools/devtools.md           |  111 -
 doc/source/cn/guide/tools/index.md              |    5 +-
 doc/source/cn/guide/tools/toolkit.md            |  231 +
 doc/source/cn/guide/tools/weexpack.md           |  388 -
 .../cn/references/advanced/extend-to-ios.md     |   84 +-
 doc/source/cn/references/common-style.md        |  126 +-
 doc/source/cn/references/components/a.md        |   19 -
 doc/source/cn/references/components/div.md      |   10 +-
 doc/source/cn/references/components/image.md    |   16 +-
 .../cn/references/components/indicator.md       |    3 +-
 doc/source/cn/references/components/input.md    |   18 +-
 doc/source/cn/references/components/list.md     |   18 +
 doc/source/cn/references/components/refresh.md  |    9 +-
 doc/source/cn/references/components/scroller.md |   19 +-
 doc/source/cn/references/components/slider.md   |    9 +-
 doc/source/cn/references/components/text.md     |   33 +
 .../cn/references/components/waterfall.md       |   64 +
 doc/source/cn/references/components/web.md      |   11 +-
 doc/source/cn/references/modules/dom.md         |   99 +-
 doc/source/cn/references/modules/globalevent.md |    8 +-
 doc/source/cn/references/modules/modal.md       |    2 +
 doc/source/cn/references/modules/storage.md     |    2 +-
 doc/source/cn/references/modules/websocket.md   |  134 +-
 doc/source/cn/references/modules/webview.md     |   11 +-
 doc/source/cn/references/path.md                |    2 +-
 doc/source/cn/releasenote.md                    |  858 ++
 .../cn/v-0.10/advanced/extend-to-html5.md       |    2 +-
 .../cn/v-0.10/advanced/integrate-to-android.md  |    4 +-
 .../cn/v-0.10/references/modules/globalevent.md |    2 +-
 .../cn/v-0.10/references/modules/storage.md     |    2 +-
 doc/source/cn/v-0.10/tools/devtools.md          |    4 +-
 doc/source/examples/dom-rect.md                 |   73 +-
 doc/source/faq.md                               |    2 +-
 doc/source/guide/contributing.md                |  106 +
 doc/source/guide/integrate-to-your-app.md       |   12 +-
 doc/source/guide/intro/app-architecture.md      |    2 +-
 doc/source/guide/intro/how-it-works.md          |    2 +-
 doc/source/guide/intro/index.md                 |    2 +-
 doc/source/guide/intro/page-architecture.md     |    2 +-
 doc/source/guide/intro/using-vue.md             |    2 +-
 doc/source/guide/intro/web-dev-experience.md    |    2 +-
 doc/source/guide/intro/write-once.md            |    2 +-
 doc/source/guide/set-up-env.md                  |    4 +-
 doc/source/guide/tools/devtools.md              |  100 -
 doc/source/guide/tools/index.md                 |    5 +-
 doc/source/guide/tools/toolkit.md               |  198 +
 doc/source/guide/tools/weexpack.md              |  300 -
 doc/source/references/advanced/extend-to-ios.md |   70 +-
 doc/source/references/common-style.md           |  109 +-
 doc/source/references/components/image.md       |    5 +-
 doc/source/references/components/input.md       |   25 +-
 doc/source/references/components/list.md        |    5 +
 doc/source/references/components/refresh.md     |   11 +-
 doc/source/references/components/scroller.md    |    3 +
 doc/source/references/components/slider.md      |    4 +-
 doc/source/references/components/text.md        |   36 +-
 doc/source/references/components/waterfall.md   |   55 +
 doc/source/references/components/web.md         |   13 +-
 doc/source/references/modules/dom.md            |   98 +-
 doc/source/references/modules/globalevent.md    |    8 +-
 doc/source/references/modules/modal.md          |    2 +
 doc/source/references/modules/websocket.md      |  134 +-
 doc/source/references/modules/webview.md        |   11 +-
 doc/source/releasenote.md                       |  858 ++
 doc/source/v-0.10/advanced/extend-to-html5.md   |    2 +-
 .../v-0.10/advanced/integrate-to-android.md     |    6 +-
 .../guide/how-to/preview-in-playground-app.md   |    2 +-
 doc/source/v-0.10/references/components/list.md |   11 +-
 .../references/components/refresh-loading.md    |   13 +-
 .../v-0.10/references/modules/globalevent.md    |    2 +-
 doc/themes/weex/languages/cn.yml                |    5 +-
 doc/themes/weex/languages/en.yml                |   45 +-
 .../weex/layout/_partial/after-footer.ejs       |    2 +-
 doc/themes/weex/layout/_partial/article.ejs     |    2 +-
 doc/themes/weex/layout/_partial/footer.ejs      |   14 +-
 doc/themes/weex/layout/_partial/header.ejs      |   27 +-
 .../weex/layout/_partial/post/summary.ejs       |   17 +-
 doc/themes/weex/layout/_partial/sidebar.ejs     |   13 +-
 doc/themes/weex/layout/_partial/slider.ejs      |    2 +-
 doc/themes/weex/layout/page.ejs                 |    1 +
 doc/themes/weex/layout/playground.ejs           |    2 +-
 doc/themes/weex/layout/post.ejs                 |    7 +
 doc/themes/weex/scripts/helper.js               |   18 +
 doc/themes/weex/source/css/common.scss          |    4 +-
 doc/themes/weex/source/css/partial/article.scss |    4 +
 doc/themes/weex/source/css/partial/footer.scss  |   18 +-
 doc/themes/weex/source/css/post.scss            |   32 +-
 doc/themes/weex/source/js/common.js             |   32 +-
 examples/accessibilitySupport.we                |   57 +
 examples/component/image-demo.we                |    2 +-
 examples/component/input-demo.we                |  253 +-
 examples/component/list/list-basic.we           |    7 +-
 examples/component/slider-tab.we                |  100 +
 examples/include/example-list-item.we           |   30 +-
 examples/index.we                               |    7 +-
 examples/linear-gradient.we                     |    3 +
 examples/module/chatroom-demo.we                |  227 +
 examples/module/componentRect.we                |    4 +-
 examples/module/websocket-demo.we               |  282 +-
 examples/showcase/boxshadow.we                  |   46 +
 examples/vanilla/index.js                       |   19 +-
 examples/vue/animation.vue                      |    4 +-
 examples/vue/components/countdown.vue           |    2 +-
 examples/vue/components/image.vue               |    2 +-
 examples/vue/components/input.vue               |  203 +-
 examples/vue/components/list.vue                |   22 +-
 examples/vue/components/marquee.vue             |    3 +-
 examples/vue/components/navigator.vue           |    7 +-
 examples/vue/components/scroller.vue            |   34 +-
 examples/vue/components/slider.vue              |   22 +-
 examples/vue/components/sliderinfinite.vue      |   46 +
 examples/vue/components/text.vue                |    2 +-
 examples/vue/components/textarea.vue            |   57 +
 examples/vue/components/video.vue               |    2 +-
 examples/vue/components/waterfall.vue           |  468 +
 examples/vue/components/web.vue                 |    2 +-
 examples/vue/iconfont.vue                       |    2 +-
 examples/vue/include/base-url.js                |   22 +-
 examples/vue/include/button.vue                 |    2 +-
 examples/vue/include/countdown.vue              |    2 +-
 examples/vue/include/example-list-item.vue      |    2 +-
 examples/vue/include/example-list.vue           |    2 +-
 examples/vue/include/h1.vue                     |    2 +-
 examples/vue/include/h2.vue                     |    2 +-
 examples/vue/include/h3.vue                     |    2 +-
 examples/vue/include/hn.vue                     |    2 +-
 examples/vue/include/list-item.vue              |    2 +-
 examples/vue/include/marquee.vue                |    4 +-
 examples/vue/include/navbar.vue                 |    2 +-
 examples/vue/include/navpage.vue                |    2 +-
 examples/vue/include/panel.vue                  |   10 +-
 examples/vue/include/slider-item.vue            |    2 +-
 examples/vue/include/slider-page.vue            |    5 +-
 examples/vue/include/tabbar.vue                 |    6 +-
 examples/vue/include/tabitem.vue                |    2 +-
 examples/vue/include/tip.vue                    |    2 +-
 examples/vue/include/wxc-list-item.vue          |    2 +-
 examples/vue/index.vue                          |   15 +-
 examples/vue/market/gcanvas.vue                 |   40 +
 examples/vue/modules/stream.vue                 |    2 +-
 examples/vue/showcase/boxshadow.vue             |   39 +
 examples/vue/showcase/calculator.vue            |    2 +-
 examples/vue/showcase/compositing.vue           |   89 +
 examples/vue/showcase/gesture.vue               |   57 +
 examples/vue/showcase/include/banners.vue       |    4 +-
 examples/vue/showcase/include/brand.vue         |    2 +-
 examples/vue/showcase/include/category.vue      |    8 +-
 examples/vue/showcase/include/coupon.vue        |    2 +-
 examples/vue/showcase/include/goods.vue         |    4 +-
 examples/vue/showcase/include/headlines.vue     |    2 +-
 examples/vue/showcase/include/match.vue         |    4 +-
 examples/vue/showcase/include/resource.vue      |    2 +-
 examples/vue/showcase/include/scene.vue         |    4 +-
 examples/vue/showcase/include/util.js           |   18 +
 examples/vue/showcase/itemlist.vue              |  249 +-
 examples/vue/showcase/new-fashion.vue           |    2 +-
 examples/vue/style/index.vue                    |    4 +-
 examples/vue/style/style-box.vue                |    2 +-
 examples/vue/style/style-flex.vue               |    2 +-
 examples/vue/style/style-item.vue               |    2 +-
 examples/vue/syntax/hello-world-3.vue           |    4 +-
 examples/vue/syntax/hello-world-4.vue           |    4 +-
 examples/vue/syntax/hello-world-5.vue           |    4 +-
 examples/vue/syntax/hello-world.vue             |    4 +-
 examples/vue/syntax/include/btn.vue             |    2 +-
 examples/vue/syntax/include/sub.vue             |    2 +-
 examples/vue/syntax/script-component.vue        |    2 +-
 examples/vue/syntax/script-data.vue             |    2 +-
 examples/vue/syntax/script-events.vue           |    4 +-
 examples/vue/syntax/script-instance.vue         |    2 +-
 examples/vue/syntax/script-lifecycle.vue        |    4 +-
 examples/vue/syntax/script-module.vue           |    2 +-
 examples/vue/syntax/script-options.vue          |    2 +-
 examples/vue/syntax/template-class.vue          |    2 +-
 examples/vue/syntax/template-event.vue          |    2 +-
 examples/vue/syntax/template-if.vue             |    2 +-
 examples/vue/syntax/template-repeat-update.vue  |    2 +-
 examples/vue/syntax/template-repeat.vue         |    8 +-
 flow-typed/npm/animationjs_vx.x.x.js            |   60 +
 flow-typed/npm/babel-core_vx.x.x.js             |  227 +
 flow-typed/npm/babel-eslint_vx.x.x.js           |   73 +
 flow-typed/npm/babel-istanbul_vx.x.x.js         |  353 +
 flow-typed/npm/babel-loader_vx.x.x.js           |   67 +
 flow-typed/npm/babel-plugin-coverage_vx.x.x.js  |   32 +
 flow-typed/npm/babel-preset-es2015_vx.x.x.js    |   32 +
 flow-typed/npm/babel-runtime_vx.x.x.js          | 1691 ++++
 flow-typed/npm/chai_v3.5.x.js                   |  212 +
 flow-typed/npm/chromedriver_vx.x.x.js           |   46 +
 flow-typed/npm/core-js_vx.x.x.js                | 9390 ++++++++++++++++++
 flow-typed/npm/cross-spawn_vx.x.x.js            |   59 +
 flow-typed/npm/css-loader_vx.x.x.js             |   87 +
 flow-typed/npm/cubicbezier_vx.x.x.js            |  109 +
 flow-typed/npm/danger_vx.x.x.js                 |  284 +
 flow-typed/npm/envd_vx.x.x.js                   |  109 +
 flow-typed/npm/eslint-plugin-flowtype_vx.x.x.js |  319 +
 flow-typed/npm/eslint_vx.x.x.js                 | 1978 ++++
 flow-typed/npm/flow-bin_v0.x.x.js               |    6 +
 flow-typed/npm/fs-extra_vx.x.x.js               |  221 +
 flow-typed/npm/http-server_vx.x.x.js            |   39 +
 flow-typed/npm/httpurl_vx.x.x.js                |   67 +
 flow-typed/npm/inline-style-prefixer_vx.x.x.js  |  347 +
 flow-typed/npm/json-loader_vx.x.x.js            |   33 +
 flow-typed/npm/karma-coverage_vx.x.x.js         |   81 +
 flow-typed/npm/karma-mocha-reporter_vx.x.x.js   |   38 +
 flow-typed/npm/karma-mocha_vx.x.x.js            |   53 +
 .../npm/karma-phantomjs-launcher_vx.x.x.js      |   59 +
 .../npm/karma-rollup-preprocessor_vx.x.x.js     |   53 +
 flow-typed/npm/karma-sinon-chai_vx.x.x.js       |   38 +
 flow-typed/npm/karma-sourcemap-loader_vx.x.x.js |   33 +
 flow-typed/npm/karma-webpack_vx.x.x.js          |   45 +
 flow-typed/npm/karma_vx.x.x.js                  |  445 +
 flow-typed/npm/lazyimg_vx.x.x.js                |   32 +
 flow-typed/npm/macaca-cli_vx.x.x.js             |  123 +
 flow-typed/npm/macaca-utils_vx.x.x.js           |   39 +
 flow-typed/npm/mocha_v2.4.x.js                  |   25 +
 flow-typed/npm/modals_vx.x.x.js                 |   81 +
 flow-typed/npm/nightwatch_vx.x.x.js             |  633 ++
 flow-typed/npm/phantomjs-prebuilt_vx.x.x.js     |  389 +
 flow-typed/npm/query-string_vx.x.x.js           |   33 +
 flow-typed/npm/reify_vx.x.x.js                  |   95 +
 flow-typed/npm/rollup-plugin-buble_vx.x.x.js    |   39 +
 flow-typed/npm/rollup-plugin-commonjs_vx.x.x.js |   81 +
 flow-typed/npm/rollup-plugin-eslint_vx.x.x.js   |   39 +
 .../rollup-plugin-flow-no-whitespace_vx.x.x.js  |   33 +
 flow-typed/npm/rollup-plugin-flow_vx.x.x.js     |   33 +
 flow-typed/npm/rollup-plugin-json_vx.x.x.js     |   46 +
 .../npm/rollup-plugin-node-resolve_vx.x.x.js    |   53 +
 flow-typed/npm/rollup-plugin-postcss_vx.x.x.js  |   38 +
 flow-typed/npm/rollup-plugin-replace_vx.x.x.js  |   46 +
 flow-typed/npm/rollup-plugin-uglify_vx.x.x.js   |   32 +
 flow-typed/npm/rollup-watch_vx.x.x.js           |   67 +
 flow-typed/npm/rollup_vx.x.x.js                 |   46 +
 flow-typed/npm/scroll-to_vx.x.x.js              |   33 +
 flow-typed/npm/selenium-server_vx.x.x.js        |   39 +
 flow-typed/npm/semver_v5.1.x.js                 |   81 +
 flow-typed/npm/serve_vx.x.x.js                  |   18 +
 flow-typed/npm/sinon-chai_vx.x.x.js             |   32 +
 flow-typed/npm/sinon_vx.x.x.js                  |  263 +
 flow-typed/npm/uglify-js_vx.x.x.js              |  116 +
 flow-typed/npm/vue-loader_vx.x.x.js             |  122 +
 flow-typed/npm/vue-template-compiler_vx.x.x.js  |   38 +
 flow-typed/npm/vue_vx.x.x.js                    | 1089 ++
 flow-typed/npm/webdriver-client_vx.x.x.js       |  129 +
 flow-typed/npm/webpack_vx.x.x.js                | 1523 +++
 flow-typed/npm/weex-components_vx.x.x.js        |   33 +
 flow-typed/npm/weex-loader_vx.x.x.js            |  108 +
 flow-typed/npm/weex-picker_vx.x.x.js            |   81 +
 flow-typed/npm/weex-rax-framework_vx.x.x.js     |  165 +
 flow-typed/npm/weex-styler_vx.x.x.js            |   66 +
 flow-typed/npm/weex-vdom-tester_vx.x.x.js       |  108 +
 flow-typed/npm/weex-vue-framework_vx.x.x.js     |   33 +
 flow-typed/npm/weex-wd_vx.x.x.js                |   38 +
 flow-typed/npm/wwp_vx.x.x.js                    |   39 +
 flow-typed/npm/xml2map_vx.x.x.js                |   45 +
 html5/frameworks/index.js                       |   18 +
 html5/frameworks/legacy/api/methods.js          |   18 +
 html5/frameworks/legacy/api/modules.js          |   18 +
 html5/frameworks/legacy/app/bundle/bootstrap.js |   18 +
 html5/frameworks/legacy/app/bundle/define.js    |   18 +
 html5/frameworks/legacy/app/bundle/index.js     |   18 +
 html5/frameworks/legacy/app/ctrl/index.js       |   18 +
 html5/frameworks/legacy/app/ctrl/init.js        |   75 +-
 html5/frameworks/legacy/app/ctrl/misc.js        |   18 +
 html5/frameworks/legacy/app/differ.js           |   18 +
 html5/frameworks/legacy/app/downgrade.js        |   18 +
 html5/frameworks/legacy/app/index.js            |   18 +
 html5/frameworks/legacy/app/instance.js         |   18 +
 html5/frameworks/legacy/app/register.js         |   18 +
 html5/frameworks/legacy/app/viewport.js         |   18 +
 html5/frameworks/legacy/config.js               |   19 +
 html5/frameworks/legacy/core/array.js           |    1 +
 html5/frameworks/legacy/core/dep.js             |    1 +
 html5/frameworks/legacy/core/object.js          |    1 +
 html5/frameworks/legacy/core/observer.js        |    1 +
 html5/frameworks/legacy/core/state.js           |    1 +
 html5/frameworks/legacy/core/watcher.js         |    1 +
 html5/frameworks/legacy/index.js                |   18 +
 html5/frameworks/legacy/static/bridge.js        |   18 +
 html5/frameworks/legacy/static/create.js        |   23 +-
 html5/frameworks/legacy/static/life.js          |   37 +
 html5/frameworks/legacy/static/map.js           |   18 +
 html5/frameworks/legacy/static/misc.js          |   18 +
 html5/frameworks/legacy/static/register.js      |   18 +
 html5/frameworks/legacy/util/index.js           |   18 +
 html5/frameworks/legacy/util/shared.js          |   18 +
 html5/frameworks/legacy/vm/compiler.js          |   18 +
 html5/frameworks/legacy/vm/directive.js         |   18 +
 html5/frameworks/legacy/vm/dom-helper.js        |   18 +
 html5/frameworks/legacy/vm/events.js            |   18 +
 html5/frameworks/legacy/vm/index.js             |   18 +
 html5/frameworks/vanilla/index.js               |   18 +
 html5/render/browser/base/atomic.js             |   18 +
 html5/render/browser/base/component/flexbox.js  |   18 +
 html5/render/browser/base/component/index.js    |   18 +
 html5/render/browser/base/component/lazyload.js |   18 +
 html5/render/browser/base/component/operate.js  |   18 +
 html5/render/browser/base/component/position.js |   18 +
 html5/render/browser/base/component/sticky.js   |   18 +
 .../browser/base/component/valueFilter.js       |   18 +
 html5/render/browser/base/div.js                |   18 +
 html5/render/browser/base/droot.js              |   18 +
 html5/render/browser/base/moduleEvent.js        |   18 +
 html5/render/browser/base/root.js               |   18 +
 html5/render/browser/bridge/index.js            |   18 +
 html5/render/browser/bridge/protocol.js         |   18 +
 html5/render/browser/bridge/receiver.js         |   18 +
 html5/render/browser/bridge/sender.js           |   18 +
 html5/render/browser/dom/appearWatcher.js       |   18 +
 html5/render/browser/dom/componentManager.js    |   18 +
 html5/render/browser/dom/index.js               |   18 +
 .../browser/extend/api/animation/index.js       |   18 +
 .../render/browser/extend/api/animation/lib.js  |   18 +
 html5/render/browser/extend/api/clipboard.js    |   18 +
 html5/render/browser/extend/api/dom.js          |   18 +
 html5/render/browser/extend/api/event.js        |   18 +
 html5/render/browser/extend/api/geolocation.js  |   18 +
 html5/render/browser/extend/api/globalEvent.js  |   18 +
 html5/render/browser/extend/api/meta.js         |   18 +
 html5/render/browser/extend/api/modal.js        |   18 +
 html5/render/browser/extend/api/navigator.js    |   18 +
 html5/render/browser/extend/api/pageInfo.js     |   18 +
 html5/render/browser/extend/api/storage.js      |   19 +
 html5/render/browser/extend/api/stream.js       |   20 +-
 html5/render/browser/extend/api/timer.js        |   19 +-
 html5/render/browser/extend/api/webSocket.js    |   19 +
 html5/render/browser/extend/api/webview.js      |   18 +
 html5/render/browser/extend/components/a.js     |   18 +
 .../browser/extend/components/countdown.js      |   18 +
 .../browser/extend/components/datepicker.js     |   18 +
 html5/render/browser/extend/components/embed.js |   18 +
 .../browser/extend/components/image/index.js    |   18 +
 .../extend/components/indicator/index.js        |   18 +
 html5/render/browser/extend/components/input.js |   51 +
 .../render/browser/extend/components/marquee.js |   18 +
 .../browser/extend/components/neighbor/index.js |   18 +
 .../browser/extend/components/richtext.js       |   18 +
 .../extend/components/scrollable/index.js       |   18 +
 .../extend/components/scrollable/list/hlist.js  |   18 +
 .../extend/components/scrollable/list/index.js  |   18 +
 .../extend/components/scrollable/list/list.js   |   18 +
 .../extend/components/scrollable/list/vlist.js  |   18 +
 .../components/scrollable/loading/index.js      |   18 +
 .../extend/components/scrollable/motion.js      |   18 +
 .../components/scrollable/refresh/index.js      |   18 +
 .../extend/components/scrollable/scroll.js      |   19 +
 .../extend/components/scrollable/scrollable.js  |   18 +
 .../components/scrollable/scroller/index.js     |   18 +
 .../render/browser/extend/components/select.js  |   18 +
 .../extend/components/slider/carrousel.js       |   19 +
 .../browser/extend/components/slider/index.js   |   18 +
 .../browser/extend/components/slider/timer.js   |   19 +
 .../browser/extend/components/spinner/index.js  |   18 +
 .../browser/extend/components/switch/index.js   |   18 +
 .../extend/components/tabheader/index.js        |   18 +
 html5/render/browser/extend/components/text.js  |   18 +
 .../browser/extend/components/textarea.js       |   50 +
 .../browser/extend/components/timepicker.js     |   18 +
 .../browser/extend/components/video/index.js    |   18 +
 html5/render/browser/extend/components/web.js   |   18 +
 html5/render/browser/extend/index.js            |   18 +
 html5/render/browser/index.js                   |   18 +
 html5/render/browser/render/config.js           |   18 +
 html5/render/browser/render/gesture.js          |   18 +
 html5/render/browser/render/index.js            |   19 +
 html5/render/browser/render/loader.js           |   19 +
 html5/render/browser/render/register.js         |   18 +
 html5/render/browser/utils/array.js             |   18 +
 html5/render/browser/utils/index.js             |   28 +
 html5/render/browser/utils/logger.js            |   20 +-
 html5/render/native/index.js                    |   18 +
 html5/render/vue/README.md                      |   29 +-
 html5/render/vue/components/a.js                |   47 +-
 html5/render/vue/components/div.js              |   50 +-
 html5/render/vue/components/image.js            |  113 +-
 html5/render/vue/components/index.js            |   35 +-
 html5/render/vue/components/input.js            |   64 +-
 .../render/vue/components/scrollable/header.js  |   59 +-
 .../vue/components/scrollable/list/cell.js      |   35 +-
 .../vue/components/scrollable/list/index.js     |   54 +-
 .../vue/components/scrollable/list/listMixin.js |  136 +-
 .../vue/components/scrollable/list/style.js     |   34 +
 .../components/scrollable/loading-indicator.js  |   62 +-
 .../render/vue/components/scrollable/loading.js |   75 +-
 .../render/vue/components/scrollable/refresh.js |   84 +-
 .../vue/components/scrollable/scroller.js       |   54 +-
 .../render/vue/components/scrollable/shared.js  |   22 -
 html5/render/vue/components/slider/index.js     |   98 +-
 html5/render/vue/components/slider/indicator.js |  163 +-
 .../render/vue/components/slider/slideMixin.js  |  218 +-
 .../vue/components/slider/slider-neighbor.css   |   21 +
 .../vue/components/slider/slider-neighbor.js    |  200 +
 html5/render/vue/components/switch.js           |   95 +-
 html5/render/vue/components/text.js             |   81 +-
 html5/render/vue/components/textarea.js         |   62 +-
 html5/render/vue/components/video.js            |   34 +-
 html5/render/vue/components/warning.js          |   18 +
 html5/render/vue/components/web.js              |   52 +-
 html5/render/vue/core/index.js                  |   20 +
 html5/render/vue/core/node.js                   |   96 +
 html5/render/vue/core/style.js                  |  261 +
 html5/render/vue/env/WXEnvironment.js           |   39 -
 html5/render/vue/env/global.js                  |   30 +
 html5/render/vue/env/index.js                   |   38 +-
 html5/render/vue/env/viewport.js                |  198 +-
 html5/render/vue/env/weex.js                    |   58 +-
 html5/render/vue/env/wx-env.js                  |   70 +
 html5/render/vue/index.js                       |   72 +-
 html5/render/vue/mixins/base.js                 |  141 +-
 html5/render/vue/mixins/event.js                |   76 -
 html5/render/vue/mixins/index.js                |   26 +-
 html5/render/vue/mixins/input-common.js         |   66 +
 html5/render/vue/mixins/scrollable.js           |  128 +
 html5/render/vue/mixins/style.js                |  191 +-
 html5/render/vue/modules/animation.js           |   43 +-
 html5/render/vue/modules/dom.js                 |  124 +-
 html5/render/vue/modules/index.js               |   64 +-
 html5/render/vue/modules/modal/alert.js         |   18 +
 html5/render/vue/modules/modal/confirm.js       |   18 +
 html5/render/vue/modules/modal/index.js         |   28 +-
 html5/render/vue/modules/modal/modal.js         |   18 +
 html5/render/vue/modules/modal/prompt.js        |   18 +
 html5/render/vue/modules/modal/style.js         |  164 +
 html5/render/vue/modules/modal/toast.js         |   18 +
 html5/render/vue/modules/navigator.js           |   19 +
 html5/render/vue/modules/webview.js             |   39 +-
 html5/render/vue/styles/base.css                |  194 +
 html5/render/vue/styles/components.css          |  506 -
 html5/render/vue/styles/reset.css               |   44 +-
 html5/render/vue/utils/component.js             |  126 +-
 html5/render/vue/utils/event.js                 |  118 +-
 html5/render/vue/utils/func.js                  |  100 +-
 html5/render/vue/utils/index.js                 |   87 +-
 html5/render/vue/utils/lazyload.js              |  135 +
 html5/render/vue/utils/perf.js                  |  225 +
 html5/render/vue/utils/style.js                 |  191 +
 html5/render/vue/utils/type.js                  |   39 +
 html5/render/vue/validator/check.js             |   18 +
 html5/render/vue/validator/index.js             |   18 +
 html5/render/vue/validator/prop.js              |   18 +
 html5/render/vue/validator/style.js             |   18 +
 html5/runtime/callback-manager.js               |   19 +
 html5/runtime/config.js                         |   18 +
 html5/runtime/handler.js                        |   19 +
 html5/runtime/index.js                          |   19 +
 html5/runtime/init.js                           |   18 +
 html5/runtime/listener.js                       |   19 +
 html5/runtime/service.js                        |   19 +
 html5/runtime/task-center.js                    |   18 +
 html5/runtime/vdom/comment.js                   |   19 +
 html5/runtime/vdom/document.js                  |   19 +
 html5/runtime/vdom/element-types.js             |   18 +
 html5/runtime/vdom/element.js                   |   19 +
 html5/runtime/vdom/index.js                     |   18 +
 html5/runtime/vdom/node.js                      |   19 +
 html5/runtime/vdom/operation.js                 |   18 +
 html5/services/amd/index.js                     |   19 +
 html5/services/broadcast-channel/index.js       |   19 +
 .../services/broadcast-channel/message-event.js |   19 +
 html5/services/index.js                         |   18 +
 html5/shared/arrayFrom.js                       |   19 +
 html5/shared/console.js                         |   19 +
 html5/shared/freeze.js                          |   76 +-
 html5/shared/index.js                           |   18 +
 html5/shared/objectAssign.js                    |   18 +
 html5/shared/objectSetPrototypeOf.js            |   19 +
 html5/shared/promise.js                         |   20 +
 html5/shared/setTimeout.js                      |   19 +
 html5/test/case/basic/append-root.source.js     |   21 +-
 html5/test/case/basic/append.source.js          |   18 +
 html5/test/case/basic/backward1.source.js       |   20 +-
 html5/test/case/basic/backward2.source.js       |   20 +-
 html5/test/case/basic/components.source.js      |   18 +
 .../case/basic/computed-in-repeat.source.js     |   20 +-
 html5/test/case/basic/created.source.js         |   20 +-
 html5/test/case/basic/dynamic-id.source.js      |   18 +
 .../test/case/basic/dynamic-property.source.js  |   18 +
 html5/test/case/basic/dynamic-type.source.js    |   18 +
 html5/test/case/basic/foo.source.js             |   20 +-
 html5/test/case/basic/foo2.source.js            |   20 +-
 html5/test/case/basic/foo3.source.js            |   20 +-
 html5/test/case/basic/foo4.source.js            |   20 +-
 html5/test/case/basic/foo5.source.js            |   20 +-
 html5/test/case/basic/foo6.source.js            |   20 +-
 html5/test/case/basic/foo7.source.js            |   20 +-
 html5/test/case/basic/foo8.source.js            |   18 +
 html5/test/case/basic/foo9.source.js            |   20 +-
 .../case/basic/global-weex-object.source.js     |   18 +
 html5/test/case/basic/id.source.js              |   18 +
 html5/test/case/basic/if-repeat.source.js       |   20 +-
 html5/test/case/basic/if-root.source.js         |   18 +
 html5/test/case/basic/if.source.js              |   20 +-
 html5/test/case/basic/promise.source.js         |   18 +
 html5/test/case/basic/ready.source.js           |   20 +-
 html5/test/case/basic/repeat-array-kv.source.js |   18 +
 .../case/basic/repeat-array-no-kv.source.js     |   18 +
 .../case/basic/repeat-array-non-obj.source.js   |   18 +
 html5/test/case/basic/repeat-array-v.source.js  |   18 +
 html5/test/case/basic/repeat-index.source.js    |   18 +
 html5/test/case/basic/repeat-root.source.js     |   18 +
 html5/test/case/basic/repeat-watch.source.js    |   20 +-
 html5/test/case/basic/require.source.js         |   18 +
 html5/test/case/basic/reset-style.source.js     |   18 +
 html5/test/case/basic/static1.source.js         |   18 +
 html5/test/case/basic/static2.source.js         |   18 +
 html5/test/case/basic/static3.source.js         |   18 +
 html5/test/case/basic/static4.source.js         |   18 +
 html5/test/case/basic/subvm.source.js           |   18 +
 html5/test/case/basic/transformer1.source.js    |   20 +-
 .../case/complex/append-root-event.source.js    |   19 +-
 html5/test/case/complex/click.source.js         |   20 +-
 html5/test/case/complex/computed.source.js      |   18 +
 html5/test/case/complex/if-refresh.source.js    |   20 +-
 .../case/complex/if-repeat-refresh.source.js    |   20 +-
 html5/test/case/complex/inline-click.source.js  |   20 +-
 html5/test/case/complex/input-binding.source.js |   18 +
 html5/test/case/complex/refresh2.source.js      |   19 +-
 .../test/case/complex/repeat-track-by.source.js |   18 +
 html5/test/case/complex/transformer2.source.js  |   20 +-
 html5/test/case/complex/transformer3.source.js  |   20 +-
 .../case/multi/clear-dep-target-error.source.js |   18 +
 .../case/multi/clear-dep-target-fine.source.js  |   18 +
 html5/test/case/multi/clear-moduleA.source.js   |   18 +
 html5/test/case/multi/clear-moduleB.source.js   |   18 +
 html5/test/case/prepare.js                      |   18 +
 html5/test/case/signals/modal.source.js         |   18 +
 html5/test/case/signals/signals-long.source.js  |   18 +
 html5/test/case/signals/signals.source.js       |   18 +
 html5/test/case/signals/timer.source.js         |   18 +
 html5/test/case/tester.js                       |   18 +
 .../test/case/throws/global-variable1.source.js |   18 +
 .../test/case/throws/global-variable2.source.js |   18 +
 .../test/case/throws/global-variable3.source.js |   18 +
 html5/test/e2e/runner.js                        |   18 +
 html5/test/e2e/specs/index.js                   |   18 +
 html5/test/render/index.js                      |    3 -
 html5/test/render/vue/components/a.js           |   56 +
 html5/test/render/vue/components/div.js         |   47 +
 html5/test/render/vue/components/image.js       |   64 +-
 html5/test/render/vue/components/list.js        |   39 +-
 html5/test/render/vue/components/switch.js      |   57 +-
 html5/test/render/vue/components/text.js        |   64 +-
 html5/test/render/vue/components/web.js         |   36 +-
 html5/test/render/vue/core/node.js              |   62 +
 html5/test/render/vue/core/scope-style-map.js   |   94 +
 html5/test/render/vue/core/style.js             |   96 +
 html5/test/render/vue/data/css/head1.css        |   38 +
 html5/test/render/vue/data/css/head10.css       |   14 +
 html5/test/render/vue/data/css/head11.css       |    2 +
 html5/test/render/vue/data/css/head12.css       |    2 +
 html5/test/render/vue/data/css/head13.css       |   25 +
 html5/test/render/vue/data/css/head14.css       |    1 +
 html5/test/render/vue/data/css/head2.css        |   11 +
 html5/test/render/vue/data/css/head3.css        |   25 +
 html5/test/render/vue/data/css/head4.css        |   56 +
 html5/test/render/vue/data/css/head5.css        |  153 +
 html5/test/render/vue/data/css/head6.css        |    4 +
 html5/test/render/vue/data/css/head7.css        |   61 +
 html5/test/render/vue/data/css/head8.css        |  507 +
 html5/test/render/vue/data/css/head9.css        |  173 +
 .../render/vue/data/dotvue/event-bubble-bar.vue |   20 +
 .../render/vue/data/dotvue/event-bubble.vue     |   25 +
 .../vue/data/dotvue/first-screen-appear-foo.vue |   27 +
 .../vue/data/dotvue/first-screen-appear.vue     |   21 +
 .../render/vue/data/dotvue/scoped-style.vue     |   25 +
 html5/test/render/vue/data/head-css.js          |   32 +
 html5/test/render/vue/data/head-map.js          |  294 +
 html5/test/render/vue/examples/list-cell.js     |   34 +-
 html5/test/render/vue/helper.js                 |   31 -
 html5/test/render/vue/helper/env.js             |   38 +
 html5/test/render/vue/helper/index.js           |   91 +
 html5/test/render/vue/helper/main.js            |   85 +
 html5/test/render/vue/helper/mixin/done.js      |    9 +
 html5/test/render/vue/helper/mixin/index.js     |    1 +
 html5/test/render/vue/helper/runtime.js         |   62 +
 html5/test/render/vue/helper/utils.js           |   26 +
 html5/test/render/vue/utils.js                  |   48 -
 html5/test/render/vue/utils/component.js        |   40 +
 html5/test/render/vue/utils/func.js             |   67 +
 html5/test/render/vue/utils/style.js            |   86 +
 html5/test/render/vue/validator/check.js        |   19 +-
 html5/test/render/vue/validator/index.js        |   19 +-
 html5/test/render/vue/validator/prop.js         |   19 +-
 html5/test/render/vue/validator/style.js        |   19 +-
 html5/test/render/vue/vender/vue-2.0.0.js       |    7 -
 html5/test/render/vue/vender/vue-2.1.0.js       |    8 -
 html5/test/unit/default/api/methods.js          |   18 +
 html5/test/unit/default/api/modules.js          |   18 +
 html5/test/unit/default/app/bundle.js           |   18 +
 html5/test/unit/default/app/ctrl.js             |   18 +
 html5/test/unit/default/app/downgrade.js        |   18 +
 html5/test/unit/default/app/index.js            |   18 +
 html5/test/unit/default/app/register.js         |   18 +
 html5/test/unit/default/app/viewport.js         |   18 +
 html5/test/unit/default/helper/document.js      |   19 +-
 html5/test/unit/default/runtime.js              |   18 +
 html5/test/unit/default/util/index.js           |   18 +
 html5/test/unit/default/util/shared.js          |   18 +
 html5/test/unit/default/vm/compiler.js          |   18 +
 html5/test/unit/default/vm/directive.js         |   18 +
 html5/test/unit/default/vm/dom-helper.js        |   18 +
 html5/test/unit/default/vm/events.js            |   18 +
 html5/test/unit/default/vm/vm.js                |   18 +
 html5/test/unit/shared/BroadcastChannel.js      |   18 +
 html5/test/unit/shared/arrayFrom.js             |   18 +
 html5/test/unit/shared/console.js               |   18 +
 html5/test/unit/shared/index.js                 |   20 +-
 html5/test/unit/shared/objectAssign.js          |   18 +
 html5/test/unit/shared/objectSetPrototypeOf.js  |   18 +
 html5/test/unit/vanilla/index.js                |   18 +
 html5/test/unit/vdom/index.js                   |   18 +
 html5/test/unit/vdom/listener.js                |   18 +
 html5/test/unit/vdom/node.js                    |   18 +
 index.html                                      |    3 +-
 ios/playground/Podfile                          |    7 +-
 ios/playground/WeexDemo.app.zip                 |  Bin 2561323 -> 0 bytes
 .../WeexDemo.xcodeproj/project.pbxproj          |   28 +-
 ios/playground/WeexDemo/AppDelegate.h           |   23 +-
 ios/playground/WeexDemo/AppDelegate.m           |   28 +-
 .../delete.imageset/Contents.json               |   23 +
 .../Assets.xcassets/delete.imageset/delete.png  |  Bin 0 -> 289 bytes
 .../delete.imageset/delete@2x.png               |  Bin 0 -> 504 bytes
 .../delete.imageset/delete@3x.png               |  Bin 0 -> 690 bytes
 .../scan_history.imageset/Contents.json         |   23 +
 .../scan_history.imageset/history.png           |  Bin 0 -> 546 bytes
 .../scan_history.imageset/history@2x.png        |  Bin 0 -> 1037 bytes
 .../scan_history.imageset/history@3x.png        |  Bin 0 -> 1628 bytes
 .../WeexDemo/DemoBaseViewController.h           |   23 +-
 .../WeexDemo/DemoBaseViewController.m           |   23 +-
 ios/playground/WeexDemo/DemoDefine.h            |   27 +-
 ios/playground/WeexDemo/Info.plist              |   14 +-
 .../WeexDemo/Scanner/WXScannerHistoryVC.h       |   24 +
 .../WeexDemo/Scanner/WXScannerHistoryVC.m       |  224 +
 ios/playground/WeexDemo/Scanner/WXScannerVC.h   |   23 +-
 ios/playground/WeexDemo/Scanner/WXScannerVC.m   |   39 +-
 ios/playground/WeexDemo/UIView+UIThreadCheck.h  |   23 +-
 ios/playground/WeexDemo/UIView+UIThreadCheck.m  |   25 +-
 .../WeexDemo/UIViewController+WXDemoNaviBar.h   |   23 +-
 .../WeexDemo/UIViewController+WXDemoNaviBar.m   |   73 +-
 ios/playground/WeexDemo/WXDemoViewController.h  |   23 +-
 ios/playground/WeexDemo/WXDemoViewController.m  |   28 +-
 ios/playground/WeexDemo/WXSyncTestModule.h      |   23 +-
 ios/playground/WeexDemo/WXSyncTestModule.m      |   23 +-
 .../WeexDemo/debug/WXATLoggerPlugin.h           |   23 +-
 .../WeexDemo/debug/WXATLoggerPlugin.m           |   23 +-
 .../WeexDemo/debug/WXATViewHierarchyPlugin.h    |   23 +-
 .../WeexDemo/debug/WXATViewHierarchyPlugin.m    |   23 +-
 .../extend/component/WXSelectComponent.h        |   23 +-
 .../extend/component/WXSelectComponent.m        |   23 +-
 .../extend/handler/WXImgLoaderDefaultImpl.h     |   23 +-
 .../extend/handler/WXImgLoaderDefaultImpl.m     |   23 +-
 .../WeexDemo/extend/module/WXEventModule.h      |   23 +-
 .../WeexDemo/extend/module/WXEventModule.m      |   23 +-
 ios/playground/WeexDemo/main.m                  |   23 +-
 ios/playground/WeexDemoTests/WeexDemoTests.m    |   21 +-
 .../WeexUITestDemoUITests.m                     |   21 +-
 ios/playground/bundlejs/component/image-demo.js |    2 +-
 ios/playground/bundlejs/component/input-demo.js | 2683 ++---
 .../bundlejs/component/lengthunitwx-demo.js     |  329 +
 .../bundlejs/component/list/list-basic.js       |  132 +-
 .../component/list/list-demo-horizon.js         |   12 +-
 .../bundlejs/component/list/list-demo.js        |   12 +-
 .../bundlejs/component/list/waterfall.js        |  877 ++
 .../bundlejs/component/marquee-demo.js          |   13 +-
 .../bundlejs/component/process-bar-demo.js      |   17 +-
 .../bundlejs/component/scroller-demo.js         |  219 +-
 .../bundlejs/component/slider-neighbor/index.js |    8 +-
 .../slider-neighbor/slider-neighbor-item.js     |   12 +-
 .../slider-neighbor/slider-neighbor-page.js     |   28 +-
 ios/playground/bundlejs/component/slider-tab.js |  633 ++
 .../bundlejs/component/slider/index.js          |   56 +-
 .../bundlejs/component/slider/slider-item.js    |   12 +-
 .../bundlejs/component/slider/slider-page.js    |   28 +-
 ios/playground/bundlejs/component/text-demo.js  |   24 +-
 ios/playground/bundlejs/component/video-demo.js |   24 +-
 ios/playground/bundlejs/component/web-demo.js   |   25 +-
 ios/playground/bundlejs/error.js                |   20 +-
 ios/playground/bundlejs/geolocation.js          |   46 +-
 ios/playground/bundlejs/hello.js                |    4 +-
 ios/playground/bundlejs/iconfont.js             |   12 +-
 ios/playground/bundlejs/index.js                |  270 +-
 ios/playground/bundlejs/linear-gradient.js      |    8 +-
 ios/playground/bundlejs/module/chatroom-demo.js |  370 +
 ios/playground/bundlejs/module/clipboard.js     |   61 +-
 ios/playground/bundlejs/module/componentRect.js |   28 +-
 ios/playground/bundlejs/module/instance-api.js  |   61 +-
 ios/playground/bundlejs/module/modal.js         |   27 +-
 ios/playground/bundlejs/module/picker-demo.js   |   27 +-
 ios/playground/bundlejs/module/storage-demo.js  |   61 +-
 ios/playground/bundlejs/module/stream-demo.js   |   61 +-
 .../bundlejs/module/websocket-demo.js           | 2661 ++---
 ios/playground/bundlejs/showcase/boxshadow.js   |  269 +
 ios/playground/bundlejs/showcase/calculator.js  |   30 +-
 .../bundlejs/showcase/dropdown/dropdown-demo.js |   38 +-
 .../bundlejs/showcase/dropdown/we-dropdown.js   |   12 +-
 ios/playground/bundlejs/showcase/minesweeper.js |   12 +-
 .../bundlejs/showcase/pseudo-class.js           |   30 +-
 ios/playground/bundlejs/showcase/ui.js          |   30 +-
 ios/playground/bundlejs/style/index.js          |   82 +-
 ios/playground/bundlejs/style/style-box.js      |   46 +-
 ios/playground/bundlejs/style/style-flex.js     |   54 +-
 ios/playground/bundlejs/style/style-item.js     |   12 +-
 ios/playground/bundlejs/syntax/hello-world-1.js |    4 +-
 ios/playground/bundlejs/syntax/hello-world-2.js |    4 +-
 ios/playground/bundlejs/syntax/hello-world-3.js |    8 +-
 ios/playground/bundlejs/syntax/hello-world-4.js |   12 +-
 ios/playground/bundlejs/syntax/hello-world-5.js |   12 +-
 ios/playground/bundlejs/syntax/hello-world.js   |   12 +-
 ios/playground/bundlejs/syntax/index.js         |  296 +-
 .../bundlejs/syntax/script-component.js         |   24 +-
 ios/playground/bundlejs/syntax/script-data.js   |   12 +-
 ios/playground/bundlejs/syntax/script-events.js |   20 +-
 .../bundlejs/syntax/script-instance.js          |   12 +-
 .../bundlejs/syntax/script-lifecycle.js         |   12 +-
 ios/playground/bundlejs/syntax/script-module.js |   12 +-
 .../bundlejs/syntax/script-options.js           |   12 +-
 .../bundlejs/syntax/template-class.js           |   12 +-
 .../bundlejs/syntax/template-content.js         |   20 +-
 .../bundlejs/syntax/template-event.js           |   12 +-
 ios/playground/bundlejs/syntax/template-if.js   |   12 +-
 .../bundlejs/syntax/template-repeat-update.js   |   12 +-
 .../bundlejs/syntax/template-repeat.js          |   12 +-
 .../bundlejs/syntax/template-style.js           |    8 +-
 ios/playground/bundlejs/template.js             |   12 +-
 ios/playground/bundlejs/test.js                 |    8 +-
 ios/playground/bundlejs/vue/animation.js        |  120 +-
 ios/playground/bundlejs/vue/components/a.js     |   97 +-
 .../bundlejs/vue/components/countdown.js        |  122 +-
 ios/playground/bundlejs/vue/components/image.js |  142 +-
 ios/playground/bundlejs/vue/components/input.js |  735 +-
 ios/playground/bundlejs/vue/components/list.js  |   44 +-
 .../bundlejs/vue/components/marquee.js          |  105 +-
 .../bundlejs/vue/components/navigator.js        |  187 +-
 .../bundlejs/vue/components/scroller.js         |   48 +-
 .../bundlejs/vue/components/slider.js           |  341 +-
 .../bundlejs/vue/components/tabbar.js           |  133 +-
 ios/playground/bundlejs/vue/components/text.js  |  132 +-
 ios/playground/bundlejs/vue/components/video.js |   72 +-
 .../bundlejs/vue/components/waterfall.js        |  877 ++
 ios/playground/bundlejs/vue/components/web.js   |   74 +-
 ios/playground/bundlejs/vue/hello.js            |   19 +-
 ios/playground/bundlejs/vue/iconfont.js         |   36 +-
 ios/playground/bundlejs/vue/index.js            |  139 +-
 .../bundlejs/vue/modules/clipboard.js           |  147 +-
 .../bundlejs/vue/modules/instance-api.js        |   59 +-
 ios/playground/bundlejs/vue/modules/modal.js    |  105 +-
 ios/playground/bundlejs/vue/modules/storage.js  |   71 +-
 ios/playground/bundlejs/vue/modules/stream.js   |   95 +-
 .../bundlejs/vue/showcase/boxshadow.js          |  244 +
 .../bundlejs/vue/showcase/calculator.js         |   72 +-
 .../bundlejs/vue/showcase/itemlist.js           |  166 +-
 .../bundlejs/vue/showcase/new-fashion.js        |  557 +-
 .../bundlejs/vue/showcase/progress.js           |   63 +-
 ios/playground/bundlejs/vue/style/index.js      |  418 +-
 ios/playground/bundlejs/vue/style/style-box.js  |  180 +-
 ios/playground/bundlejs/vue/style/style-flex.js |  238 +-
 ios/playground/bundlejs/vue/style/style-item.js |   26 +-
 .../bundlejs/vue/syntax/hello-world-1.js        |   17 +-
 .../bundlejs/vue/syntax/hello-world-2.js        |   23 +-
 .../bundlejs/vue/syntax/hello-world-3.js        |   28 +-
 .../bundlejs/vue/syntax/hello-world-4.js        |   32 +-
 .../bundlejs/vue/syntax/hello-world-5.js        |   32 +-
 .../bundlejs/vue/syntax/hello-world.js          |   32 +-
 .../bundlejs/vue/syntax/script-component.js     |   64 +-
 .../bundlejs/vue/syntax/script-data.js          |   36 +-
 .../bundlejs/vue/syntax/script-events.js        |   32 +-
 .../bundlejs/vue/syntax/script-instance.js      |   30 +-
 .../bundlejs/vue/syntax/script-lifecycle.js     |   32 +-
 .../bundlejs/vue/syntax/script-module.js        |   30 +-
 .../bundlejs/vue/syntax/script-options.js       |   28 +-
 .../bundlejs/vue/syntax/template-class.js       |   34 +-
 .../bundlejs/vue/syntax/template-content.js     |   49 +-
 .../bundlejs/vue/syntax/template-event.js       |   36 +-
 .../bundlejs/vue/syntax/template-if.js          |   32 +-
 .../vue/syntax/template-repeat-update.js        |   40 +-
 .../bundlejs/vue/syntax/template-repeat.js      |   50 +-
 .../bundlejs/vue/syntax/template-style.js       |   27 +-
 ios/playground/bundlejs/vue/template.js         |  181 +-
 ios/sdk/LICENSE                                 |  202 -
 ios/sdk/NOTICE                                  |   13 -
 ios/sdk/WeexSDK.podspec                         |   47 -
 ios/sdk/WeexSDK.xcodeproj/project.pbxproj       |  143 +-
 ios/sdk/WeexSDK/Resources/main.js               |   15 +-
 ios/sdk/WeexSDK/Sources/Bridge/JSValue+Weex.h   |   23 +-
 ios/sdk/WeexSDK/Sources/Bridge/JSValue+Weex.m   |   23 +-
 .../WeexSDK/Sources/Bridge/WXBridgeContext.h    |   29 +-
 .../WeexSDK/Sources/Bridge/WXBridgeContext.m    |   27 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXBridgeMethod.h |   25 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXBridgeMethod.m |   27 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXCallJSMethod.h |   23 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXCallJSMethod.m |   23 +-
 .../WeexSDK/Sources/Bridge/WXComponentMethod.h  |   23 +-
 .../WeexSDK/Sources/Bridge/WXComponentMethod.m  |   23 +-
 .../Sources/Bridge/WXDebugLoggerBridge.h        |   23 +-
 .../Sources/Bridge/WXDebugLoggerBridge.m        |   23 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.h |   23 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m |  109 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXModuleMethod.h |   23 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXModuleMethod.m |   45 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXPolyfillSet.h  |   23 +-
 ios/sdk/WeexSDK/Sources/Bridge/WXPolyfillSet.m  |   23 +-
 .../Component/Recycler/WXMultiColumnLayout.h    |   55 +
 .../Component/Recycler/WXMultiColumnLayout.m    |  403 +
 .../Component/Recycler/WXRecyclerComponent.h    |   23 +
 .../Component/Recycler/WXRecyclerComponent.m    |  660 ++
 .../Recycler/WXRecyclerDataController.h         |   49 +
 .../Recycler/WXRecyclerDataController.m         |  143 +
 .../Recycler/WXRecyclerUpdateController.h       |   43 +
 .../Recycler/WXRecyclerUpdateController.m       |  261 +
 .../Recycler/WXSectionDataController.h          |   44 +
 .../Recycler/WXSectionDataController.m          |   92 +
 .../WeexSDK/Sources/Component/WXAComponent.h    |   21 +-
 .../WeexSDK/Sources/Component/WXAComponent.m    |   21 +-
 .../Sources/Component/WXCanvasComponent.h       |   21 +-
 .../Sources/Component/WXCanvasComponent.m       |   21 +-
 .../WeexSDK/Sources/Component/WXCellComponent.h |   44 +-
 .../WeexSDK/Sources/Component/WXCellComponent.m |   61 +-
 .../Component/WXComponent+GradientColor.h       |   20 -
 .../Component/WXComponent+GradientColor.m       |  116 -
 .../Sources/Component/WXComponent_internal.h    |   44 +-
 .../Sources/Component/WXCycleSliderComponent.h  |   29 +
 .../Sources/Component/WXCycleSliderComponent.m  |  605 ++
 .../WeexSDK/Sources/Component/WXDivComponent.h  |   21 +-
 .../WeexSDK/Sources/Component/WXDivComponent.m  |   21 +-
 .../WeexSDK/Sources/Component/WXEditComponent.h |   32 +
 .../WeexSDK/Sources/Component/WXEditComponent.m |  819 ++
 .../Sources/Component/WXEmbedComponent.h        |   21 +-
 .../Sources/Component/WXEmbedComponent.m        |   27 +-
 .../Sources/Component/WXFooterComponent.h       |   24 +
 .../Sources/Component/WXFooterComponent.m       |   24 +
 .../Sources/Component/WXHeaderComponent.h       |   39 +
 .../Sources/Component/WXHeaderComponent.m       |   87 +
 .../Sources/Component/WXImageComponent.h        |   23 +-
 .../Sources/Component/WXImageComponent.m        |  110 +-
 .../Sources/Component/WXIndicatorComponent.h    |   29 +-
 .../Sources/Component/WXIndicatorComponent.m    |   37 +-
 .../WeexSDK/Sources/Component/WXListComponent.h |   33 +-
 .../WeexSDK/Sources/Component/WXListComponent.m |  363 +-
 .../Sources/Component/WXLoadingComponent.h      |   23 +-
 .../Sources/Component/WXLoadingComponent.m      |   34 +-
 .../Sources/Component/WXLoadingIndicator.h      |   21 +-
 .../Sources/Component/WXLoadingIndicator.m      |   21 +-
 .../Sources/Component/WXRefreshComponent.h      |   27 +-
 .../Sources/Component/WXRefreshComponent.m      |   39 +-
 .../Sources/Component/WXScrollerComponent.h     |   21 +-
 .../Sources/Component/WXScrollerComponent.m     |   60 +-
 .../Sources/Component/WXSliderComponent.h       |   21 +-
 .../Sources/Component/WXSliderComponent.m       |  117 +-
 .../Component/WXSliderNeighborComponent.h       |   24 +-
 .../Component/WXSliderNeighborComponent.m       |   29 +-
 .../Sources/Component/WXSwitchComponent.h       |   21 +-
 .../Sources/Component/WXSwitchComponent.m       |   21 +-
 .../Sources/Component/WXTextAreaComponent.h     |   26 +-
 .../Sources/Component/WXTextAreaComponent.m     |  623 +-
 .../WeexSDK/Sources/Component/WXTextComponent.h |   23 +-
 .../WeexSDK/Sources/Component/WXTextComponent.m |  612 +-
 .../Sources/Component/WXTextInputComponent.h    |   29 +-
 .../Sources/Component/WXTextInputComponent.m    |  626 +-
 ios/sdk/WeexSDK/Sources/Component/WXTransform.h |   21 +-
 ios/sdk/WeexSDK/Sources/Component/WXTransform.m |   39 +-
 .../Sources/Component/WXVideoComponent.h        |   21 +-
 .../Sources/Component/WXVideoComponent.m        |   21 +-
 .../WeexSDK/Sources/Component/WXWebComponent.h  |   21 +-
 .../WeexSDK/Sources/Component/WXWebComponent.m  |   23 +-
 .../Sources/Controller/WXBaseViewController.h   |   25 +-
 .../Sources/Controller/WXBaseViewController.m   |   44 +-
 .../Sources/Controller/WXRootViewController.h   |   23 +-
 .../Sources/Controller/WXRootViewController.m   |   40 +-
 ios/sdk/WeexSDK/Sources/Debug/WXDebugTool.h     |   23 +-
 ios/sdk/WeexSDK/Sources/Debug/WXDebugTool.m     |   23 +-
 .../WeexSDK/Sources/Display/UIBezierPath+Weex.h |   23 +-
 .../WeexSDK/Sources/Display/UIBezierPath+Weex.m |   23 +-
 .../Sources/Display/WXComponent+BoxShadow.h     |   45 +
 .../Sources/Display/WXComponent+BoxShadow.m     |  102 +
 .../Sources/Display/WXComponent+Display.h       |   23 +-
 .../Sources/Display/WXComponent+Display.m       |  244 +-
 .../WeexSDK/Sources/Display/WXDisplayQueue.h    |   23 +-
 .../WeexSDK/Sources/Display/WXDisplayQueue.m    |   23 +-
 ios/sdk/WeexSDK/Sources/Display/WXInnerLayer.h  |   30 +
 ios/sdk/WeexSDK/Sources/Display/WXInnerLayer.m  |   98 +
 ios/sdk/WeexSDK/Sources/Display/WXLayer.h       |   23 +-
 ios/sdk/WeexSDK/Sources/Display/WXLayer.m       |   23 +-
 ios/sdk/WeexSDK/Sources/Display/WXRoundedRect.h |   27 +-
 .../WeexSDK/Sources/Display/WXRoundedRect.mm    |   33 +-
 ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h    |   23 +-
 ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m    |   39 +-
 ios/sdk/WeexSDK/Sources/Engine/WXSDKError.h     |   24 +-
 .../WeexSDK/Sources/Events/WXComponent+Events.h |   23 +-
 .../WeexSDK/Sources/Events/WXComponent+Events.m |   27 +-
 .../Sources/Handler/WXNavigationDefaultImpl.h   |   23 +-
 .../Sources/Handler/WXNavigationDefaultImpl.m   |   23 +-
 .../Sources/Handler/WXURLRewriteDefaultImpl.h   |   23 +-
 .../Sources/Handler/WXURLRewriteDefaultImpl.m   |   23 +-
 ios/sdk/WeexSDK/Sources/Layout/Layout.c         |    3 +
 .../WeexSDK/Sources/Layout/WXComponent+Layout.h |   23 +-
 .../WeexSDK/Sources/Layout/WXComponent+Layout.m |   40 +-
 ios/sdk/WeexSDK/Sources/Layout/WXLayoutDefine.h |   23 +-
 .../WeexSDK/Sources/Loader/WXResourceLoader.h   |   23 +-
 .../WeexSDK/Sources/Loader/WXResourceLoader.m   |   29 +-
 .../WeexSDK/Sources/Loader/WXWebSocketLoader.h  |   23 +-
 .../WeexSDK/Sources/Loader/WXWebSocketLoader.m  |   23 +-
 .../WeexSDK/Sources/Manager/WXBridgeManager.h   |   23 +-
 .../WeexSDK/Sources/Manager/WXBridgeManager.m   |   23 +-
 .../Sources/Manager/WXComponentFactory.h        |   23 +-
 .../Sources/Manager/WXComponentFactory.m        |   23 +-
 .../Sources/Manager/WXComponentManager.h        |   27 +-
 .../Sources/Manager/WXComponentManager.m        |   54 +-
 .../Sources/Manager/WXDatePickerManager.h       |   23 +-
 .../Sources/Manager/WXDatePickerManager.m       |   23 +-
 .../WeexSDK/Sources/Manager/WXHandlerFactory.h  |   23 +-
 .../WeexSDK/Sources/Manager/WXHandlerFactory.m  |   23 +-
 .../Sources/Manager/WXInvocationConfig.h        |   24 +-
 .../Sources/Manager/WXInvocationConfig.m        |   35 +-
 .../WeexSDK/Sources/Manager/WXModuleFactory.h   |   23 +-
 .../WeexSDK/Sources/Manager/WXModuleFactory.m   |   23 +-
 ios/sdk/WeexSDK/Sources/Manager/WXRuleManager.h |   23 +-
 ios/sdk/WeexSDK/Sources/Manager/WXRuleManager.m |   28 +-
 ios/sdk/WeexSDK/Sources/Manager/WXSDKManager.h  |   23 +-
 ios/sdk/WeexSDK/Sources/Manager/WXSDKManager.m  |   23 +-
 .../WeexSDK/Sources/Manager/WXServiceFactory.h  |   23 +-
 .../WeexSDK/Sources/Manager/WXServiceFactory.m  |   23 +-
 .../Sources/Model/WXComponent+Navigation.h      |   23 +-
 .../Sources/Model/WXComponent+Navigation.m      |   23 +-
 ios/sdk/WeexSDK/Sources/Model/WXComponent.h     |   97 +-
 ios/sdk/WeexSDK/Sources/Model/WXComponent.m     |  110 +-
 .../WeexSDK/Sources/Model/WXJSExceptionInfo.h   |   23 +-
 .../WeexSDK/Sources/Model/WXJSExceptionInfo.m   |   25 +-
 ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.h   |   29 +-
 ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m   |   38 +-
 .../Sources/Model/WXSDKInstance_private.h       |   23 +-
 .../WeexSDK/Sources/Module/WXAnimationModule.h  |   23 +-
 .../WeexSDK/Sources/Module/WXAnimationModule.m  |   81 +-
 ios/sdk/WeexSDK/Sources/Module/WXCanvasModule.h |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXCanvasModule.m |   23 +-
 .../WeexSDK/Sources/Module/WXClipboardModule.h  |   23 +-
 .../WeexSDK/Sources/Module/WXClipboardModule.m  |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXDomModule.h    |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXDomModule.m    |   23 +-
 .../Sources/Module/WXGlobalEventModule.h        |   23 +-
 .../Sources/Module/WXGlobalEventModule.m        |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXInstanceWrap.h |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXInstanceWrap.m |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXMetaModule.h   |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXMetaModule.m   |   27 +-
 .../WeexSDK/Sources/Module/WXModalUIModule.h    |   23 +-
 .../WeexSDK/Sources/Module/WXModalUIModule.m    |   23 +-
 .../WeexSDK/Sources/Module/WXNavigatorModule.h  |   23 +-
 .../WeexSDK/Sources/Module/WXNavigatorModule.m  |   28 +-
 ios/sdk/WeexSDK/Sources/Module/WXPickerModule.h |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXPickerModule.m |  155 +-
 .../WeexSDK/Sources/Module/WXStorageModule.h    |   23 +-
 .../WeexSDK/Sources/Module/WXStorageModule.m    |   25 +-
 ios/sdk/WeexSDK/Sources/Module/WXStreamModule.h |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXStreamModule.m |  262 +-
 ios/sdk/WeexSDK/Sources/Module/WXTimerModule.h  |   23 +-
 ios/sdk/WeexSDK/Sources/Module/WXTimerModule.m  |   23 +-
 .../WeexSDK/Sources/Module/WXWebSocketModule.h  |   23 +-
 .../WeexSDK/Sources/Module/WXWebSocketModule.m  |   27 +-
 .../WeexSDK/Sources/Module/WXWebViewModule.h    |   23 +-
 .../WeexSDK/Sources/Module/WXWebViewModule.m    |   23 +-
 ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.h     |   23 +-
 ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.m     |   29 +-
 .../WeexSDK/Sources/Network/WXResourceRequest.h |   23 +-
 .../WeexSDK/Sources/Network/WXResourceRequest.m |   23 +-
 .../Sources/Network/WXResourceRequestHandler.h  |   26 +-
 .../WXResourceRequestHandlerDefaultImpl.h       |   23 +-
 .../WXResourceRequestHandlerDefaultImpl.m       |   36 +-
 .../Sources/Network/WXResourceResponse.h        |   23 +-
 .../Sources/Network/WXResourceResponse.m        |   23 +-
 .../Sources/Protocol/WXAppMonitorProtocol.h     |   23 +-
 .../WeexSDK/Sources/Protocol/WXBridgeProtocol.h |   27 +-
 .../Sources/Protocol/WXDestroyProtocol.h        |   23 +-
 .../Sources/Protocol/WXEventModuleProtocol.h    |   23 +-
 .../Sources/Protocol/WXImgLoaderProtocol.h      |   23 +-
 .../Sources/Protocol/WXJSExceptionProtocol.h    |   29 +-
 .../WeexSDK/Sources/Protocol/WXModuleProtocol.h |   23 +-
 .../Sources/Protocol/WXNavigationProtocol.h     |   23 +-
 .../Sources/Protocol/WXNetworkProtocol.h        |   23 +-
 .../Sources/Protocol/WXScrollerProtocol.h       |   23 +-
 .../Sources/Protocol/WXTextComponentProtocol.h  |   23 +-
 .../Sources/Protocol/WXURLRewriteProtocol.h     |   23 +-
 .../Sources/Protocol/WXValidateProtocol.h       |   50 +
 ios/sdk/WeexSDK/Sources/Utility/NSArray+Weex.h  |   23 +-
 ios/sdk/WeexSDK/Sources/Utility/NSArray+Weex.m  |   23 +-
 .../Sources/Utility/NSObject+WXSwizzle.h        |   23 +-
 .../Sources/Utility/NSObject+WXSwizzle.m        |   23 +-
 ios/sdk/WeexSDK/Sources/Utility/NSTimer+Weex.h  |   23 +-
 ios/sdk/WeexSDK/Sources/Utility/NSTimer+Weex.m  |   23 +-
 .../Sources/Utility/WXAppConfiguration.h        |   23 +-
 .../Sources/Utility/WXAppConfiguration.m        |   23 +-
 ios/sdk/WeexSDK/Sources/Utility/WXAssert.h      |   23 +-
 ios/sdk/WeexSDK/Sources/Utility/WXAssert.m      |   23 +-
 ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.h   |   42 +
 ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.m   |  137 +
 ios/sdk/WeexSDK/Sources/Utility/WXConvert.h     |   29 +-
 ios/sdk/WeexSDK/Sources/Utility/WXConvert.m     |  145 +-
 ios/sdk/WeexSDK/Sources/Utility/WXDefine.h      |   36 +-
 ios/sdk/WeexSDK/Sources/Utility/WXDiffUtil.h    |   49 +
 ios/sdk/WeexSDK/Sources/Utility/WXDiffUtil.m    |  197 +
 ios/sdk/WeexSDK/Sources/Utility/WXLength.h      |   36 +-
 ios/sdk/WeexSDK/Sources/Utility/WXLength.m      |   68 +-
 ios/sdk/WeexSDK/Sources/Utility/WXLog.h         |   23 +-
 ios/sdk/WeexSDK/Sources/Utility/WXLog.m         |   23 +-
 .../Utility/WXSimulatorShortcutManager.h        |   23 +-
 .../Utility/WXSimulatorShortcutManager.m        |   23 +-
 .../Sources/Utility/WXThreadSafeCounter.h       |   23 +-
 .../Sources/Utility/WXThreadSafeCounter.m       |   23 +-
 .../Sources/Utility/WXThreadSafeMutableArray.h  |   23 +-
 .../Sources/Utility/WXThreadSafeMutableArray.m  |   23 +-
 .../Utility/WXThreadSafeMutableDictionary.h     |   23 +-
 .../Utility/WXThreadSafeMutableDictionary.m     |   25 +-
 ios/sdk/WeexSDK/Sources/Utility/WXType.h        |   28 +-
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.h     |   52 +-
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.m     |  180 +-
 .../Sources/Utility/WXWeakObjectWrapper.h       |   23 +-
 .../Sources/Utility/WXWeakObjectWrapper.m       |   23 +-
 .../View/WXComponent+PseudoClassManagement.h    |   23 +-
 .../View/WXComponent+PseudoClassManagement.m    |   23 +-
 .../Sources/View/WXComponent+ViewManagement.h   |   23 +-
 .../Sources/View/WXComponent+ViewManagement.m   |   54 +-
 ios/sdk/WeexSDK/Sources/View/WXErrorView.h      |   23 +-
 ios/sdk/WeexSDK/Sources/View/WXErrorView.m      |   23 +-
 ios/sdk/WeexSDK/Sources/View/WXRootView.h       |   23 +-
 ios/sdk/WeexSDK/Sources/View/WXRootView.m       |   23 +-
 ios/sdk/WeexSDK/Sources/View/WXView.h           |   23 +-
 ios/sdk/WeexSDK/Sources/View/WXView.m           |   23 +-
 .../Sources/WebSocket/SRWebSocket+Weex.h        |   23 +-
 .../Sources/WebSocket/SRWebSocket+Weex.m        |   23 +-
 .../Sources/WebSocket/WXWebSocketDefaultImpl.h  |   23 +-
 .../Sources/WebSocket/WXWebSocketDefaultImpl.m  |   23 +-
 .../Sources/WebSocket/WXWebSocketHandler.h      |   23 +-
 ios/sdk/WeexSDK/Sources/WeexSDK.h               |   25 +-
 ios/sdk/WeexSDK/dependency/SRWebSocket.h        |   17 +-
 ios/sdk/WeexSDK/dependency/SRWebSocket.m        |   18 +-
 ios/sdk/WeexSDKTests/TestSupportUtils.h         |   21 +-
 ios/sdk/WeexSDKTests/TestSupportUtils.m         |   21 +-
 ios/sdk/WeexSDKTests/WXAnimationModuleTests.m   |   21 +-
 ios/sdk/WeexSDKTests/WXBridgeMethodTests.m      |   21 +-
 ios/sdk/WeexSDKTests/WXComponentTests.m         |   21 +-
 ios/sdk/WeexSDKTests/WXConvertTests.m           |   25 +-
 ios/sdk/WeexSDKTests/WXFloatCompareTests.m      |   25 +-
 ios/sdk/WeexSDKTests/WXInstanceWrapTests.m      |   21 +-
 ios/sdk/WeexSDKTests/WXRootViewTests.m          |   29 +-
 ios/sdk/WeexSDKTests/WXSDKEngineTests.m         |   21 +-
 ios/sdk/WeexSDKTests/WXSDKManagerTests.m        |   21 +-
 ios/sdk/WeexSDKTests/WXStorageTests.m           |   34 +-
 ios/sdk/WeexSDKTests/WXStreamModuleTests.m      |   21 +-
 ios/sdk/WeexSDKTests/WXTimerModuleTests.m       |   21 +-
 ios/sdk/WeexSDKTests/WXURLRewriteTests.m        |   46 +-
 ios/sdk/WeexSDKTests/WeexSDKTests.m             |   21 +-
 ios/sdk/WeexSDKTests/dependency/libOCMock.a     |  Bin 2098920 -> 0 bytes
 ios/sdk/WeexSDKTests/testRootView.js            |   18 +
 ios/sdk/WeexSDK_MTL/WeexSDK_MTL.h               |   23 +-
 ios/sdk/WeexSDK_MTL/WeexSDK_MTL.m               |   23 +-
 ios/sdk/buildScripts.sh                         |   25 +-
 package.json                                    |   71 +-
 packages/weex-vue-render/README.md              |   29 +-
 packages/weex-vue-render/package.json           |   13 +-
 scripts/apache-rat-0.12.jar                     |  Bin 0 -> 1592593 bytes
 scripts/build_from_source.sh                    |   43 +
 scripts/commit-msg.sh                           |   28 +
 scripts/dist-browser.sh                         |   60 +
 scripts/dist-js-framework.sh                    |   56 +
 scripts/dist-vue.sh                             |   58 +
 scripts/generate_apache_release.sh              |   35 +
 scripts/install-hooks.sh                        |   23 +
 scripts/pre-commit.sh                           |   27 +
 scripts/pre-push.sh                             |   28 +
 scripts/rat-ant-build.xml                       |   32 +
 scripts/rat-scan.sh                             |    3 +
 scripts/release.sh                              |   20 +
 scripts/release_files.rules                     |   68 +
 scripts/rh/LICENSE                              |  674 ++
 scripts/rh/README                               |   46 +
 scripts/rh/header.template                      |   18 +
 scripts/rh/remove_header.awk                    |   48 +
 scripts/rh/replace_header.sh                    |   11 +
 scripts/welcome.sh                              |   27 +
 test/.gitignore                                 |    2 +
 test/README.md                                  |    3 +-
 test/ci-funcs.sh                                |   96 +-
 test/pages/attributes/compositing.vue           |   89 +
 test/pages/components/recycler.vue              |  499 +
 test/pages/components/scroller-fixed.vue        |   64 +
 test/pages/components/text-layout.vue           |   30 +
 test/pages/components/textarea-maxlength.vue    |   50 +
 test/pages/css/border.vue                       |  283 +
 test/pages/dom-operation.vue                    |   33 +
 test/pages/dom-operation.we                     |   32 -
 test/pages/image-onload.vue                     |   21 +
 test/pages/index.vue                            |   30 +
 test/pages/index.we                             |   27 -
 test/pages/list-scroll.vue                      |   33 +
 test/pages/list-scroll.we                       |   31 -
 test/pages/scroller-scroll.vue                  |   31 +
 test/pages/scroller-scroll.we                   |   31 -
 test/pages/slider-infinite.vue                  |   54 +
 test/run.sh                                     |   49 +-
 test/screenshot/border-ios.png                  |  Bin 0 -> 168396 bytes
 test/screenshot/compositing-ios.png             |  Bin 0 -> 228661 bytes
 test/scripts/attributes/compositing.test.js     |   63 +
 test/scripts/components/image-onload.test.js    |   57 +
 test/scripts/components/recycler.test.js        |  405 +
 test/scripts/components/scroll-event.test.js    |   83 +-
 test/scripts/components/scroller-fixed.test.js  |   54 +
 test/scripts/components/slider-infinite.test.js |   59 +
 test/scripts/components/text.test.js            |  123 +
 .../components/textarea-maxlength.test.js       |   54 +
 test/scripts/css/border.test.js                 |   63 +
 test/scripts/dom.test.js                        |   77 +-
 test/scripts/index.test.js                      |   46 +-
 test/scripts/util.js                            |  125 +-
 test/serve.sh                                   |    6 +-
 vue.html                                        |   53 +-
 2109 files changed, 119733 insertions(+), 94330 deletions(-)
----------------------------------------------------------------------



[17/40] incubator-weex git commit: + [ios] update image dev @notdanger

Posted by so...@apache.org.
+ [ios] update image dev @notdanger


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/14fc1590
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/14fc1590
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/14fc1590

Branch: refs/heads/0.15-dev
Commit: 14fc15906a7b1b031ce7cb10ab9153875c479015
Parents: ab8b4ea
Author: 齐山 <su...@163.com>
Authored: Tue Jun 13 18:35:52 2017 +0800
Committer: 齐山 <su...@163.com>
Committed: Tue Jun 13 18:35:52 2017 +0800

----------------------------------------------------------------------
 test/screenshot/border-ios.png | Bin 128206 -> 126185 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/14fc1590/test/screenshot/border-ios.png
----------------------------------------------------------------------
diff --git a/test/screenshot/border-ios.png b/test/screenshot/border-ios.png
index bb2f990..02e27a1 100644
Binary files a/test/screenshot/border-ios.png and b/test/screenshot/border-ios.png differ


[12/40] incubator-weex git commit: * [all] Closes #301: invalid

Posted by so...@apache.org.
* [all] Closes #301: invalid


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/55b9b6b7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/55b9b6b7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/55b9b6b7

Branch: refs/heads/0.15-dev
Commit: 55b9b6b7ae4320021bdc966bbe1c660b7c93e1ea
Parents: a05f2ef
Author: sospartan <so...@apache.org>
Authored: Fri Jun 9 10:36:08 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Fri Jun 9 10:36:08 2017 +0800

----------------------------------------------------------------------

----------------------------------------------------------------------



[14/40] incubator-weex git commit: * [all] Closes #401: invalid

Posted by so...@apache.org.
* [all] Closes #401: invalid


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/db8842e0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/db8842e0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/db8842e0

Branch: refs/heads/0.15-dev
Commit: db8842e04f5724816dcacdf4c9f0eb758e099f64
Parents: d0e5ee7
Author: sospartan <so...@apache.org>
Authored: Fri Jun 9 10:38:16 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Fri Jun 9 10:38:16 2017 +0800

----------------------------------------------------------------------

----------------------------------------------------------------------



[21/40] incubator-weex git commit: Merge branch '0.13-dev' into dev

Posted by so...@apache.org.
Merge branch '0.13-dev' into dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/92399a4a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/92399a4a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/92399a4a

Branch: refs/heads/0.15-dev
Commit: 92399a4ad69f9f2445c36747721c4f4f5d1afbda
Parents: 5b3a255 005b74a
Author: sospartan <so...@apache.org>
Authored: Thu Jun 15 13:52:56 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Thu Jun 15 13:52:56 2017 +0800

----------------------------------------------------------------------
 android/sdk/libs/armeabi/libweexjsc.so          | Bin 7566292 -> 7570392 bytes
 android/sdk/libs/x86/libweexjsc.so              | Bin 4545544 -> 12121924 bytes
 .../ui/component/AbstractEditComponent.java     |  33 +++++++------------
 3 files changed, 11 insertions(+), 22 deletions(-)
----------------------------------------------------------------------



[19/40] incubator-weex git commit: * [all] update travis config script

Posted by so...@apache.org.
* [all] update travis config script


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/c732adbd
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c732adbd
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c732adbd

Branch: refs/heads/0.15-dev
Commit: c732adbd86da7874d0166633df1eee9da7e3ca1e
Parents: f2b4494
Author: sospartan <so...@apache.org>
Authored: Mon Jun 12 22:49:55 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Thu Jun 15 10:48:09 2017 +0800

----------------------------------------------------------------------
 .travis.yml              | 84 ++++++++++++++++++++++++++++++++-----------
 android/sdk/build.gradle |  9 ++++-
 test/ci-funcs.sh         | 18 ----------
 3 files changed, 71 insertions(+), 40 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c732adbd/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
index 9e0e77d..23388e6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -9,6 +9,7 @@ env:
   - TEST_SUITE=danger
   - TEST_SUITE=jsfm
   - TEST_SUITE=android
+  - TEST_SUITE=release
 matrix:
     fast_finish: true
     exclude:
@@ -24,15 +25,19 @@ matrix:
         env: TEST_SUITE=ios
       - os: linux
         env: TEST_SUITE=android
+      - os: osx
+        env: TEST_SUITE=release
+      - os: linux
+        env: TEST_SUITE=release
     include:
       - os: osx
+        env: TEST_SUITE=release
+        osx_image: xcode8.1
+        language: objective-c
+      - os: osx
         env: TEST_SUITE=ios
         osx_image: xcode8.1
         language: objective-c
-        before_script:
-          - brew update
-        script:
-          - xcodebuild -project ios/sdk/WeexSDK.xcodeproj test -scheme WeexSDKTests CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -destination 'platform=iOS Simulator,name=iPhone 6'
       - os: linux
         env: TEST_SUITE=android
         jdk: oraclejdk8
@@ -41,40 +46,77 @@ matrix:
           components:
             - platform-tools
             - tools
-            - build-tools-23.0.2
             - build-tools-23.0.3
-            - build-tools-24.0.3
-            - android-24
             - android-23
-            - android-22
             - extra-google-m2repository
             - extra-android-m2repository
             - sys-img-armeabi-v7a-android-22
-        before_script:
-          - curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
-          - nvm install 7.0
-          - npm install
-        script:
-          - cd android
-          - ./run-ci.sh 
-          - cd $TRAVIS_BUILD_DIR
 cache:
   directories:
   - node_modules
   - $HOME/.m2
   - $HOME/.gradle
+before_script:
+  - |
+    if [[ $TEST_SUITE = "android" ]]; then
+      curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
+      nvm install 7.0
+      npm install
+    fi
+  - |
+    if [[ $TEST_SUITE = "ios" ]]; then
+      brew update
+    fi
+  - |
+    if [[ $TEST_SUITE = "release" ]]; then
+      brew update
+      #manual install android sdk
+      brew cask install android-sdk
+      brew install gradle
+      export ANDROID_HOME=/usr/local/share/android-sdk
+      export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools
+      echo yes | sdkmanager platform-tools
+      echo yes | sdkmanager tools #tools
+      echo yes | sdkmanager "build-tools;23.0.3" #build-tool
+      echo yes | sdkmanager "platforms;android-23" #compile target
+      echo yes | sdkmanager "extras;android;m2repository" #support
+    fi
 script:
-  - source test/ci-funcs.sh
-  - runJSTest $TEST_SUITE
+  - |
+    if [[ $TEST_SUITE = "android" ]]; then
+      cd android
+      ./gradlew clean assembleDebug :weex_sdk:testDebugUnitTest --info -PdisableCov=true -Dorg.gradle.daemon=true -Dorg.gradle.parallel=true -Dorg.gradle.jvmargs="-Xmx512m -XX:+HeapDumpOnOutOfMemoryError" -Dfile.encoding=UTF-8 &&
+      cd $TRAVIS_BUILD_DIR
+    fi
+  - |
+    if [[ $TEST_SUITE = "ios" ]]; then
+      xcodebuild -project ios/sdk/WeexSDK.xcodeproj test -scheme WeexSDKTests CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -destination 'platform=iOS Simulator,name=iPhone 6'
+    fi
+  - |
+    if [[ $TEST_SUITE = "jsfm" ]]; then
+      npm run build &&
+      npm run test
+    fi
+  - |
+    if [[ $TEST_SUITE = "danger" ]]; then
+      npm run danger
+    fi
+  - |
+    if [[ $TEST_SUITE = "release" ]]; then
+      bash scripts/generate_apache_release.sh &&
+      cd apache_release_temp &&
+      bash scripts/build_from_source.sh &&
+      cd $TRAVIS_BUILD_DIR
+    fi
 notifications:
   webhooks:
     on_pull_requests: false
     urls:
       - https://oapi.dingtalk.com/robot/send?access_token=5a6be5eb6ad180fa4d04bdda0b24857ee49c3dd985361efdf0964aa9134ee623
-    on_success: change 
+    on_success: never 
     on_failure: always
   email:
     recipients:
-      - dev@weex.apache.org
-    on_success: change
+      - weexnotify@gmail.com
+    on_success: never
     on_failure: always

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c732adbd/android/sdk/build.gradle
----------------------------------------------------------------------
diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle
index 7593dbd..b807490 100755
--- a/android/sdk/build.gradle
+++ b/android/sdk/build.gradle
@@ -150,4 +150,11 @@ dependencies {
     testCompile 'org.robolectric:robolectric:3.0'
     testCompile "org.robolectric:shadows-httpclient:3.0"
     testCompile 'org.json:json:20160212'
-}
\ No newline at end of file
+}
+if(new File('../license/LICENSE').exists()){
+    license {
+        header = file('../license/LICENSE')
+        excludes(["com/taobao/weex/dom/flex/*.java"])
+    }
+    preBuild.dependsOn licenseFormat
+}

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c732adbd/test/ci-funcs.sh
----------------------------------------------------------------------
diff --git a/test/ci-funcs.sh b/test/ci-funcs.sh
index 0719825..9353005 100644
--- a/test/ci-funcs.sh
+++ b/test/ci-funcs.sh
@@ -47,22 +47,4 @@ function printEnvInfo {
     printenv
 }
 
-function runJSTest {
-    set -e
-    target_danger='danger'
-    target_jsfm='jsfm'
-
-    target=${1:-$target_jsfm}
-    echo "cilog: target: $target"
-
-    if [ $target = $target_jsfm ]
-    then
-        npm run build
-        npm run test
-    elif [ $target = $target_danger ]
-    then
-        npm run danger
-    fi
-}
-
 


[38/40] incubator-weex git commit: Merge branch '0.14-dev' of https://github.com/MrRaindrop/incubator-weex into 0.14-dev

Posted by so...@apache.org.
Merge branch '0.14-dev' of https://github.com/MrRaindrop/incubator-weex into 0.14-dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/15c7cd02
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/15c7cd02
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/15c7cd02

Branch: refs/heads/0.15-dev
Commit: 15c7cd02934e506af3d18d539827c19b6de4727e
Parents: 8983f24 76ab14b
Author: tancy <ro...@gmail.com>
Authored: Thu Jun 22 10:38:46 2017 +0800
Committer: tancy <ro...@gmail.com>
Committed: Thu Jun 22 10:38:46 2017 +0800

----------------------------------------------------------------------
 html5/render/vue/components/index.js            |   4 +-
 .../components/scrollable/loading-indicator.js  | 138 ++++++++++++++++++-
 html5/render/vue/mixins/style.js                |  11 +-
 html5/render/vue/styles/base.css                |  56 --------
 html5/render/vue/utils/func.js                  |  30 ++++
 html5/render/vue/utils/style.js                 |  33 +++++
 6 files changed, 210 insertions(+), 62 deletions(-)
----------------------------------------------------------------------



[37/40] incubator-weex git commit: Merge branch '0.14-dev' of github.com:cxfeng1/incubator-weex into 0.14-dev

Posted by so...@apache.org.
Merge branch '0.14-dev' of github.com:cxfeng1/incubator-weex into 0.14-dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/8983f244
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/8983f244
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/8983f244

Branch: refs/heads/0.15-dev
Commit: 8983f244f7f656683f8f4eaa13e851406c92352d
Parents: 5a4eb48 fa91bc8
Author: sospartan <so...@apache.org>
Authored: Thu Jun 22 10:25:42 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Thu Jun 22 10:25:42 2017 +0800

----------------------------------------------------------------------

----------------------------------------------------------------------



[03/40] incubator-weex git commit: Improved and removed grammatically errors and omissions

Posted by so...@apache.org.
Improved and removed grammatically errors and omissions


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/22c9bf72
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/22c9bf72
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/22c9bf72

Branch: refs/heads/0.15-dev
Commit: 22c9bf72dd0531e39488daac9282f2c9552e3ddd
Parents: f62b6ce
Author: clintonyeb <cl...@gmail.com>
Authored: Mon Mar 20 21:00:51 2017 +0530
Committer: clintonyeb <cl...@gmail.com>
Committed: Mon Mar 20 21:00:51 2017 +0530

----------------------------------------------------------------------
 doc/source/guide/index.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/22c9bf72/doc/source/guide/index.md
----------------------------------------------------------------------
diff --git a/doc/source/guide/index.md b/doc/source/guide/index.md
index 6849990..de7de7c 100644
--- a/doc/source/guide/index.md
+++ b/doc/source/guide/index.md
@@ -12,7 +12,7 @@ Weex is a framework for building Mobile cross-platform high performance UI appli
 
 ## Introduction to VueJS
 
->[Vue](https://vuejs.org/) (pronounced /vjuː/, like view) is a progressive framework for building user interfaces. >Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core >library is focused on the view layer only, and is very easy to pick up and integrate with other libraries or >existing projects. On the other hand, Vue is also perfectly capable of powering sophisticated Single-Page Applications when used in combination with modern tooling and supporting libraries.
+>[Vue](https://vuejs.org/) (pronounced /vjuː/, like view) is a progressive framework for building user interfaces. Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core library is focused on the view layer only, and is very easy to pick up and integrate with other libraries or existing projects. On the other hand, Vue is also perfectly capable of powering sophisticated Single-Page Applications when used in combination with modern tooling and supporting libraries.
 
 **VueJS is developed by [Evan You](https://twitter.com/youyuxi).**
 


[26/40] incubator-weex git commit: * [doc] Modify faq to test auto-deploy-doc

Posted by so...@apache.org.
* [doc] Modify faq to test auto-deploy-doc


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/6c47e965
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/6c47e965
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/6c47e965

Branch: refs/heads/0.15-dev
Commit: 6c47e9653cf934c9efc1d117c40f3cf9e57f6e0b
Parents: 52ad0d7
Author: sospartan <so...@apache.org>
Authored: Tue Jun 20 15:26:32 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Tue Jun 20 15:26:32 2017 +0800

----------------------------------------------------------------------
 doc/source/faq.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6c47e965/doc/source/faq.md
----------------------------------------------------------------------
diff --git a/doc/source/faq.md b/doc/source/faq.md
index ecc2b47..afff270 100644
--- a/doc/source/faq.md
+++ b/doc/source/faq.md
@@ -13,7 +13,7 @@ layout: post
 - [Advanced](./v-0.10/advanced/index.html)
 - [Tools](./v-0.10/tools/index.html)
 
-## Command errors in Windows
+## Command errors in MS Windows
 
 Please install [Git for Windows](https://git-scm.com/download/win) first, see [For Windows](https://github.com/apache/incubator-weex/tree/dev#for-windows) for more information.
 


[27/40] incubator-weex git commit: * [html5] fix refresh & loading & loading-indicator @notdanger.

Posted by so...@apache.org.
* [html5] fix refresh & loading & loading-indicator @notdanger.

* [html5] 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/baffd79a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/baffd79a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/baffd79a

Branch: refs/heads/0.15-dev
Commit: baffd79a12119c4cc517c9f6218d06f30305b13f
Parents: 569d333
Author: MrRaindrop <te...@gmail.com>
Authored: Tue Jun 20 11:48:41 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Tue Jun 20 17:59:54 2017 +0800

----------------------------------------------------------------------
 .../components/scrollable/loading-indicator.js  | 14 +++----
 .../render/vue/components/scrollable/loading.js |  4 +-
 .../render/vue/components/scrollable/refresh.js |  4 +-
 html5/render/vue/styles/base.css                | 40 ++++++++++----------
 4 files changed, 28 insertions(+), 34 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/baffd79a/html5/render/vue/components/scrollable/loading-indicator.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/components/scrollable/loading-indicator.js b/html5/render/vue/components/scrollable/loading-indicator.js
index 1d71226..897d568 100644
--- a/html5/render/vue/components/scrollable/loading-indicator.js
+++ b/html5/render/vue/components/scrollable/loading-indicator.js
@@ -21,8 +21,8 @@ import { extractComponentStyle } from '../../core'
 const _css = `
 .weex-refresh-indicator,
 .weex-loading-indicator {
-  width: 1.0rem;
-  height: 1.0rem;
+  width: 1rem !important;
+  height: 1rem !important;
   -webkit-box-align: center;
   -webkit-align-items: center;
       -ms-flex-align: center;
@@ -39,17 +39,15 @@ const _css = `
   display: block;
   content: '';
   font-size: 0.16rem;
-  width: 1em;
-  height: 1em;
-  left: -60%;
-  top: 40%;
+  width: 0.5em;
+  height: 0.5em;
+  left: 0;
+  top: 0;
   border-radius: 50%;
   position: relative;
   text-indent: -9999em;
   -webkit-animation: weex-spinner 1.1s infinite ease;
           animation: weex-spinner 1.1s infinite ease;
-  -webkit-transform: translate3d(1.0rem, 0, 0);
-          transform: translate3d(1.0rem, 0, 0);
 }
 `
 

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/baffd79a/html5/render/vue/components/scrollable/loading.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/components/scrollable/loading.js b/html5/render/vue/components/scrollable/loading.js
index 40fe8ed..9e6fa04 100644
--- a/html5/render/vue/components/scrollable/loading.js
+++ b/html5/render/vue/components/scrollable/loading.js
@@ -45,11 +45,9 @@ export default {
       this.height = this.viewHeight
     }
   },
-  updated () {
-  },
   watch: {
     height (val) {
-      this.$el.style.height = val * weex.config.env.scale + 'px'
+      this.$el.style.height = `${val}px`
     },
     display (val) {
       if (val === 'hide') {

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/baffd79a/html5/render/vue/components/scrollable/refresh.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/components/scrollable/refresh.js b/html5/render/vue/components/scrollable/refresh.js
index 40653b7..f0afca4 100644
--- a/html5/render/vue/components/scrollable/refresh.js
+++ b/html5/render/vue/components/scrollable/refresh.js
@@ -47,11 +47,9 @@ export default {
       this.height = this.viewHeight
     }
   },
-  updated () {
-  },
   watch: {
     height (val) {
-      this.$el.style.height = val * weex.config.env.scale + 'px'
+      this.$el.style.height = `${val}px`
     },
     display (val) {
       if (val === 'hide') {

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/baffd79a/html5/render/vue/styles/base.css
----------------------------------------------------------------------
diff --git a/html5/render/vue/styles/base.css b/html5/render/vue/styles/base.css
index 119a3af..7f59e42 100644
--- a/html5/render/vue/styles/base.css
+++ b/html5/render/vue/styles/base.css
@@ -152,55 +152,55 @@ body > .weex-waterfall {
 @-webkit-keyframes weex-spinner {
   0%,
   100% {
-    box-shadow: 0em -2.6em 0em 0em #ffffff, 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.5), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7);
+    box-shadow: 0em -1.3em 0em 0em #ffffff, 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.5), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7);
   }
-  12.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.7), 1.8em -1.8em 0 0em #ffffff, 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5);
+  11.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.7), 0.9em -0.9em 0 0em #ffffff, 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5);
   }
   25% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.5), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7), 2.5em 0em 0 0em #ffffff, 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.5), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7), 1.25em 0em 0 0em #ffffff, 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   37.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5), 2.5em 0em 0 0em rgba(255, 255, 255, 0.7), 1.75em 1.75em 0 0em #ffffff, 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5), 1.25em 0em 0 0em rgba(255, 255, 255, 0.7), 0.875em 0.875em 0 0em #ffffff, 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   50% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.5), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.7), 0em 2.5em 0 0em #ffffff, -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.5), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.7), 0em 1.25em 0 0em #ffffff, -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
-  62.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.5), 0em 2.5em 0 0em rgba(255, 255, 255, 0.7), -1.8em 1.8em 0 0em #ffffff, -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+  61.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.5), 0em 1.25em 0 0em rgba(255, 255, 255, 0.7), -0.9em 0.9em 0 0em #ffffff, -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   75% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.5), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.7), -2.6em 0em 0 0em #ffffff, -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.5), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.7), -1.3em 0em 0 0em #ffffff, -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   87.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.5), -2.6em 0em 0 0em rgba(255, 255, 255, 0.7), -1.8em -1.8em 0 0em #ffffff;
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.5), -1.3em 0em 0 0em rgba(255, 255, 255, 0.7), -0.9em -0.9em 0 0em #ffffff;
   }
 }
 
 @keyframes weex-spinner {
   0%,
   100% {
-    box-shadow: 0em -2.6em 0em 0em #ffffff, 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.5), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7);
+    box-shadow: 0em -1.3em 0em 0em #ffffff, 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.5), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7);
   }
-  12.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.7), 1.8em -1.8em 0 0em #ffffff, 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5);
+  11.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.7), 0.9em -0.9em 0 0em #ffffff, 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5);
   }
   25% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.5), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7), 2.5em 0em 0 0em #ffffff, 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.5), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7), 1.25em 0em 0 0em #ffffff, 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   37.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5), 2.5em 0em 0 0em rgba(255, 255, 255, 0.7), 1.75em 1.75em 0 0em #ffffff, 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5), 1.25em 0em 0 0em rgba(255, 255, 255, 0.7), 0.875em 0.875em 0 0em #ffffff, 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   50% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.5), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.7), 0em 2.5em 0 0em #ffffff, -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.5), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.7), 0em 1.25em 0 0em #ffffff, -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
-  62.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.5), 0em 2.5em 0 0em rgba(255, 255, 255, 0.7), -1.8em 1.8em 0 0em #ffffff, -2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+  61.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.5), 0em 1.25em 0 0em rgba(255, 255, 255, 0.7), -0.9em 0.9em 0 0em #ffffff, -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   75% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.5), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.7), -2.6em 0em 0 0em #ffffff, -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.5), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.7), -1.3em 0em 0 0em #ffffff, -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
   }
   87.5% {
-    box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2), 2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.5), -2.6em 0em 0 0em rgba(255, 255, 255, 0.7), -1.8em -1.8em 0 0em #ffffff;
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.5), -1.3em 0em 0 0em rgba(255, 255, 255, 0.7), -0.9em -0.9em 0 0em #ffffff;
   }
 }


[07/40] incubator-weex git commit: * [doc] update.

Posted by so...@apache.org.
* [doc] 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/88828c29
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/88828c29
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/88828c29

Branch: refs/heads/0.15-dev
Commit: 88828c293c234ff088aa5ba2fc562e2c91bc76b7
Parents: 7e73a08
Author: MrRaindrop <te...@gmail.com>
Authored: Tue Jun 6 13:30:17 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Tue Jun 6 13:30:17 2017 +0800

----------------------------------------------------------------------
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/88828c29/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 5c9681f..839206c 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@ HTML5[![npm version](https://badge.fury.io/js/weex-html5.svg)](https://www.npmjs
 
 [![CircleCI](https://circleci.com/gh/alibaba/weex/tree/dev.svg?style=svg&circle-token=b83b047a3a01f6ec26458a455530a5ddc261925f)](https://circleci.com/gh/alibaba/weex/tree/dev)
 
-Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+ (Android 4.0.1+, iOS 6.0+).
+Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+.
 
 ## For Windows
 


[15/40] incubator-weex git commit: * [all] add mail notifiy to travis

Posted by so...@apache.org.
* [all] add mail notifiy to travis


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/8e1cc1f6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/8e1cc1f6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/8e1cc1f6

Branch: refs/heads/0.15-dev
Commit: 8e1cc1f62b6f5689bb91bedb4f20786f2b3e03b6
Parents: c689a8a
Author: sospartan <so...@apache.org>
Authored: Mon Jun 12 14:42:49 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Mon Jun 12 15:50:44 2017 +0800

----------------------------------------------------------------------
 .travis.yml | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/8e1cc1f6/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
index d0b7675..9e0e77d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -67,5 +67,14 @@ script:
   - source test/ci-funcs.sh
   - runJSTest $TEST_SUITE
 notifications:
-  webhooks: https://oapi.dingtalk.com/robot/send?access_token=553a6d23676da61499b0001a8e28d4436be776f5642fff9259f5c946ffac45d2
-  
+  webhooks:
+    on_pull_requests: false
+    urls:
+      - https://oapi.dingtalk.com/robot/send?access_token=5a6be5eb6ad180fa4d04bdda0b24857ee49c3dd985361efdf0964aa9134ee623
+    on_success: change 
+    on_failure: always
+  email:
+    recipients:
+      - dev@weex.apache.org
+    on_success: change
+    on_failure: always


[22/40] incubator-weex git commit: * [doc] add v0.13 release note

Posted by so...@apache.org.
* [doc] add v0.13 release note


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/65911805
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/65911805
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/65911805

Branch: refs/heads/0.15-dev
Commit: 659118054f68e767c83e999dea7254ed6cb95bb6
Parents: 92399a4
Author: sospartan <so...@apache.org>
Authored: Fri Jun 16 15:22:30 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Fri Jun 16 15:22:30 2017 +0800

----------------------------------------------------------------------
 doc/source/cn/releasenote.md | 18 +++++++++++++++++-
 doc/source/releasenote.md    | 18 +++++++++++++++++-
 2 files changed, 34 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/65911805/doc/source/cn/releasenote.md
----------------------------------------------------------------------
diff --git a/doc/source/cn/releasenote.md b/doc/source/cn/releasenote.md
index 6e0d081..bc69bba 100644
--- a/doc/source/cn/releasenote.md
+++ b/doc/source/cn/releasenote.md
@@ -6,8 +6,24 @@ layout: post
 
 # Release Note
 
-## v0.12.0 ( First Offical Release)
+## v0.13.0
+------
+### Notable Changes
+* Slider implemention is refactored [Pull Request#414](https://github.com/apache/incubator-weex/pull/414)
+* Improve integration test. We are working with macaca team, to write better test code.[Pull Request#411](https://github.com/apache/incubator-weex/pull/411) [Pull Request#397](https://github.com/apache/incubator-weex/pull/397) [Pull Request#402](https://github.com/apache/incubator-weex/pull/402) [Pull Request#413](https://github.com/apache/incubator-weex/pull/413) [Pull Request#390](https://github.com/apache/incubator-weex/pull/390) [Pull Request#346](https://github.com/apache/incubator-weex/pull/346) [Pull Request#319](https://github.com/apache/incubator-weex/pull/319) [Pull Request#304](https://github.com/apache/incubator-weex/pull/304) [Pull Request#295](https://github.com/apache/incubator-weex/pull/295)
+* `scroller` now has `pagingEnabled` attribute, which can enable `paging` feature in native [Pull Request#393](https://github.com/apache/incubator-weex/pull/393)
+* New 'prerender' mechanism, which will support rendering a page in background. [Pull Request#343](https://github.com/apache/incubator-weex/pull/343) Pull Request#342](https://github.com/apache/incubator-weex/pull/342)
+* Fix `line-height` feature in iOS. [Pull Request#377](https://github.com/apache/incubator-weex/pull/377) [Pull Request#305](https://github.com/apache/incubator-weex/pull/305)
+* Add `needLayout` option in animation module operation after animation finished [Pull Request#337](https://github.com/apache/incubator-weex/pull/337) [Pull Request#336](https://github.com/apache/incubator-weex/pull/336)
+* `list` component has new type of event for `sticky` feature [Pull Request#332](https://github.com/apache/incubator-weex/pull/332)
+* Support bota and atob [Pull Request#315](https://github.com/apache/incubator-weex/pull/315)
+* Fix mixing background-color and border-color(rgba) in android [Pull Request#359](https://github.com/apache/incubator-weex/pull/359)
+
 
+Beside these, lots of crashes and bugs are fixed.[Pull Request#441](https://github.com/apache/incubator-weex/pull/441) [Pull Request#413](https://github.com/apache/incubator-weex/pull/413) [Pull Request#403](https://github.com/apache/incubator-weex/pull/403) [Pull Request#373](https://github.com/apache/incubator-weex/pull/373)
+
+## v0.12.0 ( First Offical Release)
+---------
 - C++ timer  by lycool
 Discussed in https://lists.apache.org/thread.html/567c9b19d68ccf3e0d24c1467298ebcd4316ffa524c557a34c6c087f@%3Cdev.weex.apache.org%3E
 relate pull requests:[apache/incubator-weex/pull/228|https://github.com/apache/incubator-weex/pull/228], [apache/incubator-weex/pull/232|https://github.com/apache/incubator-weex/pull/232], [apache/incubator-weex/pull/221|https://github.com/apache/incubator-weex/pull/221]

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/65911805/doc/source/releasenote.md
----------------------------------------------------------------------
diff --git a/doc/source/releasenote.md b/doc/source/releasenote.md
index 6e0d081..bc69bba 100644
--- a/doc/source/releasenote.md
+++ b/doc/source/releasenote.md
@@ -6,8 +6,24 @@ layout: post
 
 # Release Note
 
-## v0.12.0 ( First Offical Release)
+## v0.13.0
+------
+### Notable Changes
+* Slider implemention is refactored [Pull Request#414](https://github.com/apache/incubator-weex/pull/414)
+* Improve integration test. We are working with macaca team, to write better test code.[Pull Request#411](https://github.com/apache/incubator-weex/pull/411) [Pull Request#397](https://github.com/apache/incubator-weex/pull/397) [Pull Request#402](https://github.com/apache/incubator-weex/pull/402) [Pull Request#413](https://github.com/apache/incubator-weex/pull/413) [Pull Request#390](https://github.com/apache/incubator-weex/pull/390) [Pull Request#346](https://github.com/apache/incubator-weex/pull/346) [Pull Request#319](https://github.com/apache/incubator-weex/pull/319) [Pull Request#304](https://github.com/apache/incubator-weex/pull/304) [Pull Request#295](https://github.com/apache/incubator-weex/pull/295)
+* `scroller` now has `pagingEnabled` attribute, which can enable `paging` feature in native [Pull Request#393](https://github.com/apache/incubator-weex/pull/393)
+* New 'prerender' mechanism, which will support rendering a page in background. [Pull Request#343](https://github.com/apache/incubator-weex/pull/343) Pull Request#342](https://github.com/apache/incubator-weex/pull/342)
+* Fix `line-height` feature in iOS. [Pull Request#377](https://github.com/apache/incubator-weex/pull/377) [Pull Request#305](https://github.com/apache/incubator-weex/pull/305)
+* Add `needLayout` option in animation module operation after animation finished [Pull Request#337](https://github.com/apache/incubator-weex/pull/337) [Pull Request#336](https://github.com/apache/incubator-weex/pull/336)
+* `list` component has new type of event for `sticky` feature [Pull Request#332](https://github.com/apache/incubator-weex/pull/332)
+* Support bota and atob [Pull Request#315](https://github.com/apache/incubator-weex/pull/315)
+* Fix mixing background-color and border-color(rgba) in android [Pull Request#359](https://github.com/apache/incubator-weex/pull/359)
+
 
+Beside these, lots of crashes and bugs are fixed.[Pull Request#441](https://github.com/apache/incubator-weex/pull/441) [Pull Request#413](https://github.com/apache/incubator-weex/pull/413) [Pull Request#403](https://github.com/apache/incubator-weex/pull/403) [Pull Request#373](https://github.com/apache/incubator-weex/pull/373)
+
+## v0.12.0 ( First Offical Release)
+---------
 - C++ timer  by lycool
 Discussed in https://lists.apache.org/thread.html/567c9b19d68ccf3e0d24c1467298ebcd4316ffa524c557a34c6c087f@%3Cdev.weex.apache.org%3E
 relate pull requests:[apache/incubator-weex/pull/228|https://github.com/apache/incubator-weex/pull/228], [apache/incubator-weex/pull/232|https://github.com/apache/incubator-weex/pull/232], [apache/incubator-weex/pull/221|https://github.com/apache/incubator-weex/pull/221]


[39/40] incubator-weex git commit: * [android] allow movement on textarea component

Posted by so...@apache.org.
* [android] allow movement on textarea component


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/7fc11908
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/7fc11908
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/7fc11908

Branch: refs/heads/0.15-dev
Commit: 7fc1190800aa5567a9ebce967954e999d50390b5
Parents: 15c7cd0
Author: moxun.ljf <fu...@foxmail.com>
Authored: Tue Jun 20 12:02:40 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Thu Jun 22 13:19:48 2017 +0800

----------------------------------------------------------------------
 .../weex/ui/component/AbstractEditComponent.java      | 14 ++++++++------
 .../java/com/taobao/weex/ui/component/Textarea.java   |  6 ++++++
 .../main/java/com/taobao/weex/ui/view/WXEditText.java |  9 +++++++--
 3 files changed, 21 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7fc11908/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
index bf8935e..e2d666e 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
@@ -210,18 +210,20 @@ public abstract class AbstractEditComponent extends WXComponent<WXEditText> {
 
         @Override
         public void onTextChanged(CharSequence s, int start, int before, int count) {
+
+          if (mIgnoreNextOnInputEvent) {
+            mIgnoreNextOnInputEvent = false;
+          }
+
           if (mBeforeText.equals(s.toString())) {
             return;
           }
 
           mBeforeText = s.toString();
 
-          if (mIgnoreNextOnInputEvent) {
-            mIgnoreNextOnInputEvent = false;
-            return;
+          if (!mIgnoreNextOnInputEvent) {
+            fireEvent(Constants.Event.INPUT, s.toString());
           }
-
-          fireEvent(Constants.Event.INPUT, s.toString());
         }
 
         @Override
@@ -331,7 +333,7 @@ public abstract class AbstractEditComponent extends WXComponent<WXEditText> {
         Integer maxLength = WXUtils.getInteger(param, null);
         if (maxLength != null)
           setMaxLength(maxLength);
-          return true;
+        return true;
       case Constants.Name.MAX:
         setMax(String.valueOf(param));
         return true;

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7fc11908/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
index 44b5754..7e36d27 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
@@ -37,6 +37,12 @@ public class Textarea extends AbstractEditComponent {
   }
 
   @Override
+  protected void onHostViewInitialized(WXEditText host) {
+    host.setAllowDisableMovement(false);
+    super.onHostViewInitialized(host);
+  }
+
+  @Override
   protected void appleStyleAfterCreated(WXEditText editText) {
     super.appleStyleAfterCreated(editText);
     String rowsStr = (String) getDomObject().getStyles().get(Constants.Name.ROWS);

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7fc11908/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
index 3bbc9ac..c6b2461 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
@@ -35,6 +35,7 @@ public class WXEditText extends EditText implements WXGestureObservable {
 
   private WXGesture wxGesture;
   private int mLines = 1;
+  private boolean mAllowDisableMovement = true;
 
   public WXEditText(Context context) {
     super(context);
@@ -86,9 +87,9 @@ public class WXEditText extends EditText implements WXGestureObservable {
     super.onSizeChanged(w, h, oldw, oldh);
     int contentH = getLayout().getHeight();
     //TODO: known issue,set movement to null will make cursor disappear.
-    if(h < contentH){
+    if(mAllowDisableMovement && h < contentH){
       setMovementMethod(null);
-    }else{
+    } else {
       setMovementMethod(getDefaultMovementMethod());
     }
   }
@@ -97,4 +98,8 @@ public class WXEditText extends EditText implements WXGestureObservable {
   public boolean postDelayed(Runnable action, long delayMillis) {
     return super.postDelayed(WXThread.secure(action), delayMillis);
   }
+
+  public void setAllowDisableMovement(boolean allow) {
+    mAllowDisableMovement = allow;
+  }
 }


[24/40] incubator-weex git commit: * [doc] add mirror website config

Posted by so...@apache.org.
* [doc] add mirror website config


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4ef53688
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4ef53688
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4ef53688

Branch: refs/heads/0.15-dev
Commit: 4ef5368810016cbc4e7c4cbef5c87178e87b6a2c
Parents: 6591180
Author: sospartan <so...@apache.org>
Authored: Mon Jun 19 12:03:06 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Mon Jun 19 12:05:29 2017 +0800

----------------------------------------------------------------------
 doc/_config_cn.yml | 326 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 326 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4ef53688/doc/_config_cn.yml
----------------------------------------------------------------------
diff --git a/doc/_config_cn.yml b/doc/_config_cn.yml
new file mode 100644
index 0000000..910d08d
--- /dev/null
+++ b/doc/_config_cn.yml
@@ -0,0 +1,326 @@
+# Hexo Configuration
+## Docs: https://hexo.io/docs/configuration.html
+## Source: https://github.com/hexojs/hexo/
+
+# Site
+title: Weex
+subtitle:
+description: A framework for building Mobile cross-platform UIs. Different from a "web app", "HTML5 app", or "hybrid app", you can use Weex to build a real mobile app. The code that you write is relatively simple, because you can build native applications just using HTML, CSS, Javascript. But underneath, the core of the application is Objective-C or Java. At the same time, Weex will provide a lot of native components or modules for developers to use.
+author: Jinjiang
+language: 
+  - en
+  - cn
+
+timezone:
+
+jsonContent:
+  meta: true
+  keywords: false # language name option
+  dateFormat: undefined # format string
+  root: true
+  lang: 
+    - default
+    - cn
+  ignore:
+    - index.html
+    - faq.html
+    - download.html
+    - playground.html
+    - cn/index.html
+    - cn/faq.html
+    - cn/download.html
+    - cn/playground.html
+    - examples/
+    - doc/
+  pages:
+    title: true
+    path: true
+    link: true
+    permalink: true
+    text: true
+    content: false
+    type: true
+  posts:
+    title: true
+    path: true
+    link: true
+    permalink: true
+    text: true
+    content: false
+    type: true
+
+# Deployment
+## Docs: https://hexo.io/docs/deployment.html
+deploy:
+  type: git
+  repo: git@github.com:weexteam/incubator-weex.git
+  branch: [gh-pages]
+
+# URL
+## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
+url: https://weex-project.io
+root: /
+permalink_defaults:
+  lang: en
+permalink: :lang/:title/
+new_post_name: :lang/:title.md
+
+# Directory
+source_dir: source
+public_dir: public
+tag_dir: tags
+archive_dir: archives
+category_dir: categories
+code_dir: downloads/code
+i18n_dir: :lang
+skip_render:
+
+# Writing
+default_layout: post
+# auto_spacing: false # Add spaces between asian characters and western characters
+titlecase: false # Transform title into titlecase
+external_link: true # Open external links in new tab
+filename_case: 0
+render_drafts: false
+post_asset_folder: false
+relative_link: false
+future: true
+highlight:
+  enable: true
+  line_number: false
+  auto_detect: false
+  tab_replace: 2
+
+# Category & Tag
+default_category: uncategorized
+category_map:
+tag_map:
+
+# Date / Time format
+## Hexo uses Moment.js to parse and display date
+## You can customize the date format as defined in
+## http://momentjs.com/docs/#/displaying/format/
+date_format: YYYY-MM-DD
+time_format: HH:mm:ss
+
+# Pagination
+## Set per_page to 0 to disable pagination
+per_page: 10
+pagination_dir: page
+
+# Extensions
+## Plugins: https://hexo.io/plugins/
+## Themes: https://hexo.io/themes/
+theme: weex
+
+# css autoprefixer
+autoprefixer:
+  exclude:
+  browsers:
+    - 'last 5 versions'
+
+alias:
+  doc/index.html: index.html
+  doc/guide.html: guide/index.html
+  doc/tutorial.html: guide/index.html
+  doc/syntax/main.html: guide/index.html
+  doc/syntax/data-binding.html: guide/index.html
+  doc/syntax/style-n-class.html: guide/index.html
+  doc/syntax/events.html: guide/index.html
+  doc/syntax/display-logic.html: guide/index.html
+  doc/syntax/render-logic.html: guide/index.html
+  doc/syntax/composed-component.html: guide/index.html
+  doc/syntax/id.html: guide/index.html
+  doc/syntax/comm.html: guide/index.html
+  doc/syntax/config-n-data.html: guide/index.html
+  doc/syntax/path.html: guide/index.html
+  doc/how-to/main.html: guide/index.html
+  doc/how-to/preview-in-browser.html: guide/index.html
+  doc/how-to/preview-in-playground-app.html: guide/index.html
+  doc/how-to/customize-a-native-component.html: guide/index.html
+  doc/how-to/cuszomize-native-apis.html: guide/index.html
+  doc/how-to/debug-with-html5.html: guide/index.html
+  doc/how-to/require-3rd-party-libs.html: guide/index.html
+  doc/how-to/transform-code-into-js-bundle.html: guide/index.html
+  doc/advanced/main.html: references/advanced/index.html
+  doc/advanced/how-it-works.html: guide/intro/index.html
+  doc/advanced/how-data-binding-works.html: references/advanced/index.html
+  doc/advanced/integrate-to-android.html: references/advanced/index.html
+  doc/advanced/integrate-to-ios.html: references/advanced/index.html
+  doc/advanced/integrate-to-html5.html: references/advanced/index.html
+  doc/advanced/extend-to-android.html: references/advanced/extend-to-android.html
+  doc/advanced/extend-to-ios.html: references/advanced/extend-to-ios.html
+  doc/advanced/extend-to-html5.html: references/advanced/extend-to-html5.html
+  doc/references/main.html: references/index.html
+  doc/references/bootstrap.html: references/index.html
+  doc/references/component-defs.html: references/index.html
+  doc/references/api.html: references/index.html
+  doc/references/gesture.html: references/gesture.html
+  doc/components/main.html: references/components/index.html
+  doc/references/common-attrs.html: references/index.html
+  doc/references/common-style.html: references/common-style.html
+  doc/references/text-style.html: references/text-style.html
+  doc/references/color-names.html: references/color-names.html
+  doc/references/common-event.html: references/common-event.html
+  doc/components/special-element.html: references/components/index.html
+  doc/components/div.html: references/components/div.html
+  doc/components/scroller.html: references/components/scroller.html
+  doc/components/list.html: references/components/list.html
+  doc/components/cell.html: references/components/cell.html
+  doc/components/refresh-loading.html: references/components/refresh.html
+  doc/components/text.html: references/components/text.html
+  doc/components/image.html: references/components/image.html
+  doc/components/input.html: references/components/input.html
+  doc/components/textarea.html: references/components/textarea.html
+  doc/components/switch.html: references/components/switch.html
+  doc/components/slider.html: references/components/slider.html
+  doc/components/indicator.html: references/components/indicator.html
+  doc/components/video.html: references/components/video.html
+  doc/components/a.html: references/components/index.html
+  doc/components/web.html: references/components/web.html
+  doc/components/wxc-tabbar.html: references/components/index.html
+  doc/components/wxc-navpage.html: references/components/index.html
+  doc/modules/main.html: references/modules/index.html
+  doc/modules/dom.html: references/modules/dom.html
+  doc/modules/stream.html: references/modules/stream.html
+  doc/modules/picker.html: references/modules/picker.html
+  doc/modules/modal.html: references/modules/modal.html
+  doc/modules/animation.html: references/modules/animation.html
+  doc/modules/webview.html: references/modules/webview.html
+  doc/modules/navigator.html: references/modules/navigator.html
+  doc/modules/storage.html: references/modules/storage.html
+  doc/modules/timer.html: references/modules/index.html
+  doc/modules/clipboard.html: references/modules/clipboard.html
+  doc/modules/globalevent.html: references/modules/globalevent.html
+  doc/specs/js-bundle-format.html: references/index.html
+  doc/specs/js-framework-apis.html: references/index.html
+  doc/specs/virtual-dom-apis.html: references/index.html
+  doc/demo/hello-world.html: index.html
+  doc/demo/modal.html: index.html
+  doc/demo/clipboard.html: index.html
+  doc/demo/list.html: index.html
+  doc/demo/slider.html: index.html
+  doc/demo/animation.html: index.html
+  doc/tools/cli.html: index.html
+  doc/tools/devtools.html: index.html
+  doc/tools/devtools-android.html: index.html
+  doc/tools/devtools-ios.html: index.html
+  doc/tools/transformer.html: index.html
+  doc/tools/playground-app.html: playground.html
+  doc/faq.html: faq.html
+  cn/doc/index.html: cn/index.html
+  cn/doc/develop-on-your-local-machine.html: cn/guide/index.html
+  cn/doc/get-started.html: cn/guide/index.html
+  cn/doc/guide.html: cn/guide/index.html
+  cn/doc/tutorial.html: cn/guide/index.html
+  cn/doc/syntax/main.html: cn/guide/index.html
+  cn/doc/syntax/data-binding.html: cn/guide/index.html
+  cn/doc/syntax/style-n-class.html: cn/guide/index.html
+  cn/doc/syntax/events.html: cn/guide/index.html
+  cn/doc/syntax/display-logic.html: cn/guide/index.html
+  cn/doc/syntax/render-logic.html: cn/guide/index.html
+  cn/doc/syntax/composed-component.html: cn/guide/index.html
+  cn/doc/syntax/id.html: cn/guide/index.html
+  cn/doc/syntax/comm.html: cn/guide/index.html
+  cn/doc/syntax/config-n-data.html: cn/guide/index.html
+  cn/doc/syntax/path.html: cn/guide/index.html
+  cn/doc/how-to/main.html: cn/guide/index.html
+  cn/doc/how-to/preview-in-browser.html: cn/guide/index.html
+  cn/doc/how-to/preview-in-playground-app.html: cn/guide/index.html
+  cn/doc/how-to/customize-a-native-component.html: cn/guide/index.html
+  cn/doc/how-to/cuszomize-native-apis.html: cn/guide/index.html
+  cn/doc/how-to/debug-with-html5.html: cn/guide/index.html
+  cn/doc/how-to/debug-with-devtools.html: cn/guide/index.html
+  cn/doc/how-to/require-3rd-party-libs.html: cn/guide/index.html
+  cn/doc/how-to/transform-code-into-js-bundle.html: cn/guide/index.html
+  cn/doc/advanced/main.html: cn/references/advanced/index.html
+  cn/doc/advanced/how-it-works.html: cn/guide/intro/index.html
+  cn/doc/advanced/how-data-binding-works.html: cn/references/advanced/index.html
+  cn/doc/advanced/integrate-to-android.html: cn/references/advanced/index.html
+  cn/doc/advanced/integrate-to-ios.html: cn/references/advanced/index.html
+  cn/doc/advanced/integrate-to-html5.html: cn/references/advanced/index.html
+  cn/doc/advanced/extend-to-android.html: cn/references/advanced/extend-to-android.html
+  cn/doc/advanced/extend-to-ios.html: cn/references/advanced/extend-to-ios.html
+  cn/doc/advanced/extend-to-html5.html: cn/references/advanced/extend-to-html5.html
+  cn/doc/references/main.html: cn/references/index.html
+  cn/doc/references/bootstrap.html: cn/references/index.html
+  cn/doc/references/component-defs.html: cn/references/index.html
+  cn/doc/references/api.html: cn/references/index.html
+  cn/doc/references/gesture.html: cn/references/gesture.html
+  cn/doc/components/main.html: cn/references/components/index.html
+  cn/doc/references/common-attrs.html: cn/references/index.html
+  cn/doc/references/common-style.html: cn/references/common-style.html
+  cn/doc/references/text-style.html: cn/references/text-style.html
+  cn/doc/references/color-names.html: cn/references/color-names.html
+  cn/doc/references/common-event.html: cn/references/common-event.html
+  cn/doc/references/styles/units.html: cn/references/unit.html
+  cn/doc/components/special-element.html: cn/references/components/index.html
+  cn/doc/components/div.html: cn/references/components/div.html
+  cn/doc/components/scroller.html: cn/references/components/scroller.html
+  cn/doc/components/list.html: cn/references/components/list.html
+  cn/doc/components/cell.html: cn/references/components/cell.html
+  cn/doc/components/refresh.html: cn/references/components/refresh.html
+  cn/doc/components/loading.html: cn/references/components/loading.html
+  cn/doc/components/text.html: cn/references/components/text.html
+  cn/doc/components/image.html: cn/references/components/image.html
+  cn/doc/components/input.html: cn/references/components/input.html
+  cn/doc/components/textarea.html: cn/references/components/textarea.html
+  cn/doc/components/switch.html: cn/references/components/switch.html
+  cn/doc/components/slider.html: cn/references/components/slider.html
+  cn/doc/components/indicator.html: cn/references/components/indicator.html
+  cn/doc/components/video.html: cn/references/components/video.html
+  cn/doc/components/a.html: cn/references/components/index.html
+  cn/doc/components/web.html: cn/references/components/web.html
+  cn/doc/components/wxc-tabbar.html: cn/references/components/index.html
+  cn/doc/components/wxc-navpage.html: cn/references/components/index.html
+  cn/doc/modules/main.html: cn/references/modules/index.html
+  cn/doc/modules/dom.html: cn/references/modules/dom.html
+  cn/doc/modules/stream.html: cn/references/modules/stream.html
+  cn/doc/modules/picker.html: cn/references/modules/picker.html
+  cn/doc/modules/modal.html: cn/references/modules/modal.html
+  cn/doc/modules/animation.html: cn/references/modules/animation.html
+  cn/doc/modules/webview.html: cn/references/modules/webview.html
+  cn/doc/modules/navigator.html: cn/references/modules/navigator.html
+  cn/doc/modules/storage.html: cn/references/modules/storage.html
+  cn/doc/modules/timer.html: cn/references/modules/index.html
+  cn/doc/modules/clipboard.html: cn/references/modules/clipboard.html
+  cn/doc/modules/globalevent.html: cn/references/modules/globalevent.html
+  cn/doc/specs/js-bundle-format.html: cn/references/index.html
+  cn/doc/specs/js-framework-apis.html: cn/references/index.html
+  cn/doc/specs/virtual-dom-apis.html: cn/references/index.html
+  cn/doc/demo/hello-world.html: cn/index.html
+  cn/doc/demo/modal.html: cn/index.html
+  cn/doc/demo/clipboard.html: cn/index.html
+  cn/doc/demo/list.html: cn/index.html
+  cn/doc/demo/slider.html: cn/index.html
+  cn/doc/demo/animation.html: cn/index.html
+  cn/doc/tools/cli.html: cn/index.html
+  cn/doc/tools/devtools.html: cn/index.html
+  cn/doc/tools/devtools-android.html: cn/index.html
+  cn/doc/tools/devtools-ios.html: cn/index.html
+  cn/doc/tools/transformer.html: cn/index.html
+  cn/doc/tools/playground-app.html: cn/playground.html
+  cn/doc/faq.html: cn/faq.html
+  cn/doc/references/cheatsheet.html: cn/references/index.html
+  cn/doc/references/styles/background-color.html: cn/references/index.html
+  cn/doc/references/styles/color.html: cn/references/index.html
+  cn/doc/references/styles/font-family.html: cn/references/index.html
+  cn/doc/references/styles/font-size.html: cn/references/index.html
+  cn/doc/references/styles/font-style.html: cn/references/index.html
+  cn/doc/references/styles/font-weight.html: cn/references/index.html
+  cn/doc/references/styles/line-height.html: cn/references/index.html
+  cn/doc/references/styles/lines.html: cn/references/index.html
+  cn/doc/references/styles/opacity.html: cn/references/index.html
+  cn/doc/references/styles/position.html: cn/references/index.html
+  cn/doc/references/styles/text-align.html: cn/references/index.html
+  cn/doc/references/styles/text-decoration.html: cn/references/index.html
+  cn/doc/references/styles/text-overflow.html: cn/references/index.html
+  cn/doc/references/events/appear.html: cn/references/index.html
+  cn/doc/references/events/change.html: cn/references/index.html
+  cn/doc/references/events/blur.html: cn/references/index.html
+  cn/doc/references/events/input.html: cn/references/index.html
+  cn/doc/references/events/focus.html: cn/references/index.html
+  cn/guide/tools/devtools.html: cn/guide/tools/toolkit.html
+  cn/guide/tools/weexpack.html: cn/guide/tools/toolkit.html
+  guide/tools/devtools.html: guide/tools/toolkit.html
+  guide/tools/weexpack.html: guide/tools/toolkit.html


[08/40] incubator-weex git commit: * [test] add blames undefined check

Posted by so...@apache.org.
* [test] add blames undefined check


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/fa91bc8a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/fa91bc8a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/fa91bc8a

Branch: refs/heads/0.15-dev
Commit: fa91bc8a15d3bc29c6863f72587bcb6cad00d971
Parents: 7f392dd
Author: yinfeng <cx...@apache.org>
Authored: Wed Jun 7 04:59:47 2017 +0800
Committer: yinfeng <cx...@apache.org>
Committed: Wed Jun 7 04:59:47 2017 +0800

----------------------------------------------------------------------
 dangerfile.js | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/fa91bc8a/dangerfile.js
----------------------------------------------------------------------
diff --git a/dangerfile.js b/dangerfile.js
index 531777a..881a7f0 100644
--- a/dangerfile.js
+++ b/dangerfile.js
@@ -307,6 +307,10 @@ function findBlameReviewers(fileToDeletedLinesMap, fileToNormalLinesMap, fileToB
   Object.keys(fileToDeletedLinesMap).forEach(function (file) {
     let deletedLines = fileToDeletedLinesMap[file]
     var blames = fileToBlamesMap[file]
+    if (!blames) {
+      console.error(`failed to find blame info for (${file})`)
+      return;
+    }
     deletedLines.forEach(lineNumber => {
       var name = blames[lineNumber]
       reviewers[name] = (reviewers[name] || 0) + 3


[10/40] incubator-weex git commit: Merge branch 'dev'

Posted by so...@apache.org.
Merge branch 'dev'


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/83b7f792
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/83b7f792
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/83b7f792

Branch: refs/heads/0.15-dev
Commit: 83b7f792f489c7d2c04743266279aa0e05090897
Parents: f08565b c689a8a
Author: sospartan <so...@apache.org>
Authored: Fri Jun 9 09:51:53 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Fri Jun 9 09:51:53 2017 +0800

----------------------------------------------------------------------
 .gitignore                                      |   1 +
 .travis.yml                                     |  10 +-
 Dangerfile-ios                                  |   1 +
 WeexSDK.podspec                                 |   4 +-
 android/build.gradle                            |   9 +-
 android/commons/build.gradle                    |   1 +
 .../adapter/DefaultWebSocketAdapter.java        |  54 +-
 .../weex/commons/util/RequestIdGenerator.java   |  15 +
 .../weex/commons/util/WSEventReporter.java      | 192 ++++++
 .../gradle/wrapper/gradle-wrapper.properties    |   4 +-
 android/playground/app/build.gradle             |   4 +-
 .../java/com/alibaba/weex/WXApplication.java    |   4 +
 .../java/com/alibaba/weex/WXPageActivity.java   |   3 +-
 .../extend/adapter/InterceptWXHttpAdapter.java  |  57 +-
 .../weex/extend/component/WXParallax.java       | 345 ++++++++++
 .../weex/extend/module/WXEventModule.java       |  23 +-
 android/run-ci.sh                               |   5 +-
 android/sdk/assets/main.js                      |   8 -
 android/sdk/build.gradle                        |   6 +
 android/sdk/libs/armeabi/libweexjsc.so          | Bin 7558100 -> 7566292 bytes
 .../com/taobao/weex/LayoutFinishListener.java   |   8 +
 .../java/com/taobao/weex/WXEnvironment.java     |   1 +
 .../main/java/com/taobao/weex/WXSDKEngine.java  |   6 +
 .../java/com/taobao/weex/WXSDKInstance.java     |  48 ++
 .../main/java/com/taobao/weex/WXSDKManager.java |  15 +-
 .../taobao/weex/adapter/ICrashInfoReporter.java |   9 +
 .../taobao/weex/adapter/IDrawableLoader.java    |   3 +-
 .../weex/adapter/IWXUserTrackAdapter.java       |   2 +-
 .../com/taobao/weex/bridge/WXBridgeManager.java |  47 +-
 .../com/taobao/weex/bridge/WXModuleManager.java |  44 +-
 .../weex/common/ICheckBindingScroller.java      |   9 +
 .../com/taobao/weex/common/WXPerformance.java   |   9 +-
 .../taobao/weex/dom/DOMActionContextImpl.java   |  15 +-
 .../com/taobao/weex/dom/TextDecorationSpan.java |  55 ++
 .../java/com/taobao/weex/dom/WXDomHandler.java  |   4 +
 .../java/com/taobao/weex/dom/WXDomManager.java  |  19 +
 .../main/java/com/taobao/weex/dom/WXStyle.java  |  32 +-
 .../com/taobao/weex/dom/WXSwitchDomObject.java  |  29 +-
 .../com/taobao/weex/dom/WXTextDomObject.java    |  11 +-
 .../com/taobao/weex/dom/action/Actions.java     |  12 +
 .../taobao/weex/dom/action/AnimationAction.java |   3 +
 .../weex/dom/action/CreateFinishAction.java     |  20 +
 .../weex/dom/action/ExecutableRenderAction.java |  30 +
 .../weex/dom/action/ModuleInvocationAction.java |  50 ++
 .../taobao/weex/ui/IExternalModuleGetter.java   |  30 +
 .../taobao/weex/ui/IExternalMoudleGetter.java   |  29 -
 .../ui/animation/DimensionUpdateListener.java   |  14 +
 .../weex/ui/animation/WXAnimationBean.java      |   1 +
 .../ui/component/AbstractEditComponent.java     |  16 +-
 .../taobao/weex/ui/component/WXComponent.java   |  71 +-
 .../taobao/weex/ui/component/WXScroller.java    |   9 +-
 .../weex/ui/component/WXTextDecoration.java     |   1 +
 .../taobao/weex/ui/component/WXVContainer.java  |  13 +
 .../ui/component/list/BasicListComponent.java   |   9 +-
 .../ui/component/list/StickyHeaderHelper.java   |   2 +-
 .../taobao/weex/ui/module/WXTimerModule.java    |  42 +-
 .../com/taobao/weex/ui/view/WXImageView.java    |  31 +-
 .../weex/ui/view/border/BorderDrawable.java     |   3 +-
 .../taobao/weex/utils/WXSoInstallMgrSdk.java    |   4 +
 .../java/com/taobao/weex/utils/WXViewUtils.java |  34 +-
 .../java/com/taobao/weex/WXSDKEngineTest.java   |   1 -
 .../java/com/taobao/weex/utils/WXUtilsTest.java |  16 +-
 android/weex_debug/build.gradle                 |  10 +-
 build/config.js                                 |   4 +-
 build/webpack.examples.web.config.js            |  29 +-
 build/webpack.test.web.config.js                |  21 +-
 dangerfile.js                                   | 166 ++++-
 doc/source/cn/references/bubble.md              | 146 +++++
 doc/source/cn/references/components/input.md    | 241 +++++--
 doc/source/cn/references/components/list.md     |   2 +-
 doc/source/cn/references/downgrade.md           |  11 +
 doc/source/cn/references/index.md               |   4 +-
 doc/source/cn/references/modules/animation.md   |   4 +-
 doc/source/cn/references/modules/websocket.md   |   2 +-
 doc/source/cn/references/weex-variable.md       |   4 +-
 doc/source/cn/v-0.10/references/bubble.md       | 150 +++++
 .../cn/v-0.10/references/components/input.md    | 216 ++++++-
 doc/source/references/bubble.md                 | 146 +++++
 doc/source/references/components/input.md       | 233 +++++--
 doc/source/references/components/list.md        |   2 +-
 doc/source/references/downgrade.md              |  11 +
 doc/source/references/index.md                  |   2 +
 doc/source/references/modules/animation.md      |  12 +-
 doc/source/references/modules/websocket.md      |   2 +-
 doc/source/references/weex-variable.md          |   4 +-
 doc/source/v-0.10/references/bubble.md          | 150 +++++
 doc/themes/weex/languages/cn.yml                |  12 +
 doc/themes/weex/languages/en.yml                |  13 +-
 doc/themes/weex/layout/index.ejs                |  28 +
 doc/themes/weex/source/css/index.scss           |  19 +-
 doc/themes/weex/source/images/fliggy.png        | Bin 0 -> 19329 bytes
 doc/themes/weex/source/images/juhuasuan.png     | Bin 0 -> 46340 bytes
 doc/themes/weex/source/images/qianniu.png       | Bin 0 -> 19852 bytes
 doc/themes/weex/source/images/taopiaopiao.png   | Bin 0 -> 12460 bytes
 examples/iconfont.we                            |  63 +-
 examples/index.we                               |   1 +
 examples/vue/iconfont.vue                       |  80 ++-
 examples/vue/index.vue                          |   3 +-
 examples/vue/market/gcanvas.vue                 |   2 +-
 html5/render/native/index.js                    |  33 +-
 html5/render/native/setup.js                    |  58 ++
 html5/render/vue/README.md                      |  23 +-
 html5/render/vue/components/a.js                |  19 +
 html5/render/vue/components/div.js              |   1 +
 html5/render/vue/components/image.js            |   1 +
 html5/render/vue/components/index.js            |   2 +-
 html5/render/vue/components/input.js            |   1 +
 .../render/vue/components/scrollable/header.js  |   1 +
 .../vue/components/scrollable/list/cell.js      |   1 +
 .../vue/components/scrollable/list/index.js     |   1 +
 .../components/scrollable/loading-indicator.js  |   1 +
 .../render/vue/components/scrollable/loading.js |   1 +
 .../render/vue/components/scrollable/refresh.js |   1 +
 .../vue/components/scrollable/scroller.js       |   1 +
 html5/render/vue/components/slider/index.js     | 155 +----
 html5/render/vue/components/slider/indicator.js |  37 +-
 .../render/vue/components/slider/slideMixin.js  | 646 +++++++++++++++----
 .../vue/components/slider/slider-neighbor.css   |  21 -
 .../vue/components/slider/slider-neighbor.js    | 138 +---
 html5/render/vue/components/slider/slider.css   |  34 +
 html5/render/vue/components/switch.js           |   1 +
 html5/render/vue/components/text.js             |   1 +
 html5/render/vue/components/textarea.js         |   1 +
 html5/render/vue/components/video.js            |  28 +-
 html5/render/vue/components/web.js              |   1 +
 html5/render/vue/core/node.js                   |  71 +-
 html5/render/vue/core/style.js                  |  33 +-
 html5/render/vue/env/index.js                   |   4 +-
 html5/render/vue/env/viewport.js                |   6 +-
 html5/render/vue/env/weex.js                    |  33 +-
 html5/render/vue/env/wx-env.js                  |   8 +-
 html5/render/vue/index.js                       |  15 +
 html5/render/vue/lib/envd/index.js              | 179 +++++
 html5/render/vue/lib/envd/params.js             |  17 +
 html5/render/vue/lib/envd/version.js            | 152 +++++
 html5/render/vue/lib/gesture.js                 | 512 +++++++++++++++
 html5/render/vue/mixins/base.js                 |  54 +-
 html5/render/vue/mixins/scrollable.js           |  13 +-
 html5/render/vue/mixins/style.js                |  22 +-
 html5/render/vue/modules/animation.js           |   3 +
 html5/render/vue/modules/dom.js                 |  40 +-
 html5/render/vue/modules/modal/style.js         |   2 +-
 html5/render/vue/modules/modal/toast.js         |   3 +-
 html5/render/vue/utils/component.js             |  20 +-
 html5/render/vue/utils/func.js                  |  19 +
 html5/render/vue/utils/lazyload.js              |  17 +-
 html5/render/vue/utils/perf.js                  | 123 +++-
 html5/render/vue/utils/style.js                 | 151 +++--
 html5/runtime/vdom/document.js                  |   4 +-
 html5/runtime/vdom/element.js                   |  25 +-
 .../render/vue/data/dotvue/event-bubble-bar.vue |  13 +-
 .../render/vue/data/dotvue/event-bubble.vue     |  17 +-
 html5/test/render/vue/utils/style.js            |   9 +-
 html5/test/unit/default/vm/vm.js                |   2 +-
 .../WeexDemo.xcodeproj/project.pbxproj          |   6 +
 ios/playground/WeexDemo/AppDelegate.m           |   4 +
 .../WeexDemo/WXConfigCenterDefaultImpl.h        |  25 +
 .../WeexDemo/WXConfigCenterDefaultImpl.m        |  45 ++
 ios/playground/WeexDemo/WXDemoViewController.m  |  16 +-
 .../WeexDemo/extend/module/WXEventModule.m      |  16 +
 ios/sdk/WeexSDK.xcodeproj/project.pbxproj       |  34 +-
 ios/sdk/WeexSDK/Resources/main.js               |   8 -
 .../WeexSDK/Sources/Bridge/WXBridgeContext.m    |   5 +
 ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m |  85 ++-
 ios/sdk/WeexSDK/Sources/Bridge/WXModuleMethod.m |  13 +-
 .../WeexSDK/Sources/Component/WXAComponent.m    |  13 +-
 .../Sources/Component/WXComponent_internal.h    |   2 -
 .../Sources/Component/WXCycleSliderComponent.m  |  22 +-
 .../Sources/Component/WXEmbedComponent.m        |   2 +-
 .../Sources/Component/WXImageComponent.m        |  27 +-
 .../Sources/Component/WXIndicatorComponent.m    |   3 +
 .../WeexSDK/Sources/Component/WXListComponent.m |  64 +-
 .../Sources/Component/WXScrollerComponent.m     |  39 +-
 .../Sources/Component/WXSliderComponent.m       |   1 +
 .../Component/WXSliderNeighborComponent.m       |   9 +-
 .../WeexSDK/Sources/Component/WXTextComponent.m |  67 +-
 .../Sources/Component/WXVideoComponent.m        |  12 +-
 .../WeexSDK/Sources/Component/WXWebComponent.m  |  10 +-
 .../Sources/Controller/WXBaseViewController.m   |  19 +-
 ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m    |  13 +-
 .../WeexSDK/Sources/Events/WXComponent+Events.m |  34 +-
 .../WeexSDK/Sources/Layout/WXComponent+Layout.m |  24 +-
 .../WeexSDK/Sources/Loader/WXResourceLoader.m   |   2 +
 .../WeexSDK/Sources/Manager/WXBridgeManager.h   |   2 +
 .../Sources/Manager/WXComponentManager.h        |   2 +-
 .../Sources/Manager/WXComponentManager.m        |  32 +-
 ios/sdk/WeexSDK/Sources/Manager/WXRuleManager.m |   8 +-
 ios/sdk/WeexSDK/Sources/Model/WXComponent.m     |  33 +-
 ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.h   |  17 +-
 ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m   |  49 +-
 .../WeexSDK/Sources/Module/WXAnimationLayout.h  |  49 ++
 .../WeexSDK/Sources/Module/WXAnimationLayout.m  | 115 ++++
 .../WeexSDK/Sources/Module/WXAnimationModule.m  |  30 +-
 ios/sdk/WeexSDK/Sources/Module/WXDomModule.m    |   1 +
 .../WeexSDK/Sources/Module/WXModalUIModule.m    |   1 +
 .../WeexSDK/Sources/Module/WXPrerenderManager.h |  89 +++
 .../WeexSDK/Sources/Module/WXPrerenderManager.m | 314 +++++++++
 ios/sdk/WeexSDK/Sources/Module/WXStreamModule.m |   6 +-
 ios/sdk/WeexSDK/Sources/Module/WXTimerModule.m  |   4 +-
 .../Sources/Network/WXResourceRequestHandler.h  |   2 +
 .../WXResourceRequestHandlerDefaultImpl.m       |   5 +-
 .../Sources/Protocol/WXConfigCenterProtocol.h   |  20 +
 .../Sources/Protocol/WXScrollerProtocol.h       |   7 +
 .../Sources/Protocol/WXURLRewriteProtocol.h     |   5 +-
 ios/sdk/WeexSDK/Sources/Utility/WXConvert.m     |   6 +-
 ios/sdk/WeexSDK/Sources/Utility/WXDefine.h      |   4 +-
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.h     |   7 +
 ios/sdk/WeexSDK/Sources/Utility/WXUtility.m     |  98 +--
 .../View/WXComponent+PseudoClassManagement.m    |   4 +-
 .../Sources/View/WXComponent+ViewManagement.m   |  96 ++-
 ios/sdk/WeexSDK/Sources/View/WXView.m           |   1 +
 ios/sdk/WeexSDK/Sources/WeexSDK.h               |   4 +
 package.json                                    |  19 +-
 packages/weex-vue-render/README.md              |  23 +-
 packages/weex-vue-render/package.json           |   2 +-
 pre-build/native-bundle-main.js                 |   8 +
 test/.gitignore                                 |   3 +-
 test/mocha.opts                                 |   2 +-
 test/pages/components/hyperlink.vue             |  31 +
 test/pages/components/hyperlink_target.vue      |  22 +
 test/pages/components/scroller-fixed.vue        |  14 +-
 test/pages/components/slider-common.vue         | 229 +++++++
 test/pages/css/border.vue                       | 132 +++-
 test/pages/modules/globalEvent.vue              |  48 ++
 test/pages/modules/vue_timer.vue                |  75 +++
 test/pages/modules/we_timer.we                  |  73 +++
 test/screenshot/border-android.png              | Bin 0 -> 156247 bytes
 test/screenshot/border-ios.png                  | Bin 168396 -> 128206 bytes
 test/screenshot/compositing-ios.png             | Bin 228661 -> 228306 bytes
 test/scripts/components/hyperlink.test.js       |  44 ++
 test/scripts/components/recycler.test.js        |  16 +-
 test/scripts/components/scroller-fixed.test.js  |   5 +-
 test/scripts/components/slider-common.test.js   | 100 +++
 test/scripts/components/text.test.js            |   2 +-
 test/scripts/css/border.test.js                 |   7 +-
 test/scripts/modules/globalEvent.test.js        |  60 ++
 test/scripts/modules/timer.test.js              | 100 +++
 test/scripts/util.js                            |  30 +-
 238 files changed, 7479 insertions(+), 1318 deletions(-)
----------------------------------------------------------------------



[32/40] incubator-weex git commit: Merge branch 'doc-bugfix-choose-version' of https://github.com/parryworld/incubator-weex into dev

Posted by so...@apache.org.
Merge branch 'doc-bugfix-choose-version' of https://github.com/parryworld/incubator-weex into dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/29a705d7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/29a705d7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/29a705d7

Branch: refs/heads/0.15-dev
Commit: 29a705d77604f69e4d7dc2f999d6d3158443c23d
Parents: c4e2d7a dc8841f
Author: tancy <ro...@gmail.com>
Authored: Wed Jun 21 11:57:03 2017 +0800
Committer: tancy <ro...@gmail.com>
Committed: Wed Jun 21 11:57:03 2017 +0800

----------------------------------------------------------------------
 doc/themes/weex/layout/post.ejs | 7 -------
 1 file changed, 7 deletions(-)
----------------------------------------------------------------------



[30/40] incubator-weex git commit: * [doc] remove useless version select in faq and releasenote pages

Posted by so...@apache.org.
* [doc] remove useless version select in faq and releasenote pages


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/dc8841f9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/dc8841f9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/dc8841f9

Branch: refs/heads/0.15-dev
Commit: dc8841f9dc9768551dea9cb69f37eba2d55e31ed
Parents: 4ef5368
Author: parryworld <pa...@gmail.com>
Authored: Wed Jun 21 11:19:59 2017 +0800
Committer: parryworld <pa...@gmail.com>
Committed: Wed Jun 21 11:19:59 2017 +0800

----------------------------------------------------------------------
 doc/themes/weex/layout/post.ejs | 7 -------
 1 file changed, 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dc8841f9/doc/themes/weex/layout/post.ejs
----------------------------------------------------------------------
diff --git a/doc/themes/weex/layout/post.ejs b/doc/themes/weex/layout/post.ejs
index 95e68f6..260fea0 100644
--- a/doc/themes/weex/layout/post.ejs
+++ b/doc/themes/weex/layout/post.ejs
@@ -1,10 +1,3 @@
 <div class="wrapper article-wrapper post-layout">
-  <div>
-  版本 
-    <select name="" id="">
-    <option value="1">1.x</option>
-    <option value="2">2.x</option>
-    </select>
-  </div>
   <%- partial('_partial/article', {post: page, index: false}) %>
 </div>
\ No newline at end of file


[20/40] incubator-weex git commit: * [all] Add 0.12 releate note to website

Posted by so...@apache.org.
* [all] Add 0.12 releate note to website

Beside remove the bugfix commits list, it's useless but make the page
much longer.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5b3a2558
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5b3a2558
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5b3a2558

Branch: refs/heads/0.15-dev
Commit: 5b3a2558ae0f2ff26b1dd25a4f5263bf17bcfa81
Parents: c732adb
Author: sospartan <so...@apache.org>
Authored: Thu Jun 15 11:23:15 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Thu Jun 15 11:23:15 2017 +0800

----------------------------------------------------------------------
 doc/source/cn/releasenote.md | 647 ++------------------------------------
 doc/source/releasenote.md    | 647 ++------------------------------------
 2 files changed, 46 insertions(+), 1248 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5b3a2558/doc/source/cn/releasenote.md
----------------------------------------------------------------------
diff --git a/doc/source/cn/releasenote.md b/doc/source/cn/releasenote.md
index 8e5c617..6e0d081 100644
--- a/doc/source/cn/releasenote.md
+++ b/doc/source/cn/releasenote.md
@@ -6,6 +6,29 @@ layout: post
 
 # Release Note
 
+## v0.12.0 ( First Offical Release)
+
+- C++ timer  by lycool
+Discussed in https://lists.apache.org/thread.html/567c9b19d68ccf3e0d24c1467298ebcd4316ffa524c557a34c6c087f@%3Cdev.weex.apache.org%3E
+relate pull requests:[apache/incubator-weex/pull/228|https://github.com/apache/incubator-weex/pull/228], [apache/incubator-weex/pull/232|https://github.com/apache/incubator-weex/pull/232], [apache/incubator-weex/pull/221|https://github.com/apache/incubator-weex/pull/221]
+
+- Add scroller/list scroll event in html5 render
+android&iOS already have this feature in v0.11
+https://github.com/apache/incubator-weex/commit/f50fba8647c8bb6ac522b1a4569a2a2269da1953
+
+- Enhance accessibility, new `aria-label` & `role` support
+[apache/incubator-weex/pull/149|https://github.com/apache/incubator-weex/pull/149]
+
+- Native input/textarea enhancement by kfeagle &  misakuo
+support `number` data type; support soft keyboard event 
+
+- Picker module enhancement
+More picker options to customize picker dialog style(background color etc.). Related pull requests: [apache/incubator-weex/pull/234|https://github.com/apache/incubator-weex/pull/234], [apache/incubator-weex/pull/233|https://github.com/apache/incubator-weex/pull/233]
+
+- Android DOM module refactor
+Seperate module code by action, increasing the maintainability.
+[apache/incubator-weex/pull/104|https://github.com/apache/incubator-weex/pull/104]
+
 ## v0.10.0
 ------
 - New Feature
@@ -68,95 +91,6 @@ layout: post
       - Developers could easily pack/install his application with simple command.
       - Has full set of commands for developers to manage weex plugins, including create plugin template, add plugin to his project etc.
       - [Plugin market](http://market.weex-project.io) was formally used for developers to publish/download weex plugins.
-- Bugfix
-  - \* [android] add fixed size property 5191241
-  - \* [android] bug fix NPE && cache ScreenWidth and ScreenHeight 950e843
-  - \* [android] bugfix duplicate destroy 25412e0
-  - \* [android] bugfix keyboard force hide (#106) 0ad2f95
-  - \* [android] bugfix scroller offset transform twice cd7ad66
-  - \* [android] change gradle to fix build 1feaadf
-  - \* [android] ClipPath doesn't work when the following conditions met   1. rotation or scale is used   2. API level is 24 As border-radius uses clipPath, this will cause views with border-radius using rotation or scale on API level 24 doesn't. So far, this is a bug of Android N,https://code.google.com/p/android/issues/detail?id=225556&sort=-id&colspec=ID f69e918
-  - \* [android] Fix bug of border width due to viewport. Refer https://github.com/sospartan/weex/commit/7cfe9752e0c95f3b23bedfa3f51ba3bafb4318f4#diff-42908d45812780fec8606537dffab67dL1054 9cd6800
-  - \* [android] fix cast exception 3136fcf
-  - \* [android] fix DCL thread safely (#48) 62e9b71
-  - \* [android] fix duplicate add component child to list 3fd73d7
-  - \* [android] fix find component 45643ab
-  - \* [android] fix getScreenWidth with context parameter (#80) 16377f2
-  - \* [android] fix inefficient use of keySet iterator instead of entrySet iterator (#47) dac80e2
-  - \* [android] fix intrinsicSize when img.resize=contain b6272a2
-  - \* [android] fix npe in onScrollerListener (#138) 8141de7
-  - \* [android] fix npe in stream callback 24aa2c2
-  - \* [android] fix PageActivity duplicate add view to container 06f77b8
-  - \* [android] fix refresh crash after destoryed (#144) 51ea00b
-  - \* [android] fix refresh/loading a726d3c
-  - \* [android] fix slider auto scroll behavior 28926ba
-  - \* [android] fix slider layout, ignore position offset. a0381e4
-  - \* [android] fix some weak code that may cause file leak or useless (#49) 8d0f049
-  - \* [android] fix stackoverflow 6a01059
-  - \* [android] fix stream response status type (#63) 8580c66
-  - \* [android] fix switch case (#127) c301b92
-  - \* [android] fix textarea vertical gravity 9730948
-  - \* [android] fix the IllegalArgumentException on empty arguments f799d67
-  - \* [android] fix the wrong header location (#135) d58fce9
-  - \* [android] fix typo: WebSocket -> webSocket c162d54
-  - \* [android] fix wrong initial direction value on appear event (#107) 593c799
-  - \* [android] modify default real position (+1 squashed commit) Squashed commits: [9470835] \* [android] fix unittest b915584
-  - \* [android] move indicator layout logic to subclass;seperate fixed layout logic fc2a009
-  - \* [android] rename debug activity 95ab73a
-  - \* [android] update fix do not remove loading and fresh ddf74ff
-  - \* [html5] fix border & border-width for less than 1px. (#2059) 3eb34b9
-  - \* [html5] fix bugs of neighbor 34fafb2
-  - \* [html5] fix compatibility problem & support deps arguments. 00e7079
-  - \* [html5] fix content-type error 5b06140
-  - \* [html5] fix h5 build 56e9c03
-  - \* [html5] fix shrink & grow for flex. (#2082) b5b600d
-  - \* [html5] fix slider container's style. (#2157) a79bd9c
-  - \* [html5] fix uncaught dom exception for video.play. (#1877) 7a0bd03
-  - \* [html5] fixbug:change name from WebSocket to webSocket] (#2146) b72bbb9
-  - \* [ios]  bug fix: websocket module name is changed , playground should change 3f35b82
-  - \* [ios] bug fix: onload success value type is not same as android, change it for unify 531633c
-  - \* [ios] bugfix call renderFinish 1fb2e0a
-  - \* [ios] bugfix module default method not called 0be9f87
-  - \* [ios] bugfix moduleEvent compatible dbea448
-  - \* [ios] bugfix multi input or textarea maybe wrongly change root view frame a2e97db
-  - \* [ios] bugfix navigation pop animated value convert cfe98a8
-  - \* [ios] bugfix navigator open and close. beef00b
-  - \* [ios] bugfix rootView information  coordinate 7313703
-  - \* [ios] bugfix slider-neighbor may beyond item count index cbfa9df
-  - \* [ios] bugfix view event 83d3e6a
-  - \* [ios] bugfix: playground cannot open c949463
-  - \* [ios] bugfix:delete configpicker not delete the method in header cc3afc2
-  - \* [ios] fix : Change the lastoffsetXRatio to lastOffsetXRatio de8f246
-  - \* [ios] fix : Change the parameter wording to make it more in line with development habits. 869da54
-  - \* [ios] fix : if _fontFamily is nil set _fontFamily value with the correct system font. In the case of Chinese characters, this logic help system select the right system default font name. 6e202b6
-  - \* [ios] fix : improve slider-neighbor demo code .remove useless <container> label and <scroller> label. 2c236c8
-  - \* [ios] fix bug : you can't slide to the right when the slider has only two pages. d224bfb
-  - \* [ios] fix bug that border-x-radius not work 96ba5b5
-  - \* [ios] fix bug that horizontalpan and verticalpan can not trigger simultaneously eb03cb0
-  - \* [ios] fix bug: text input padding is not right f4accba
-  - \* [ios] fix crash after returning id type, need to copy here. 4f5276b
-  - \* [ios] fix issue that cells pushed down by inserted cells will not trigger disappear event. 9dcc4dd
-  - \* [ios] fix issue that rotate 90->180->270 not work. 5b3c13d
-  - \* [ios] fix issue that rotate(0) not work after rotate(>180degree) 0f6989d
-  - \* [ios] fix issue that there will be 1px space remaining between list's top and navigator when UITableView is pulled down and finger releases. d286e3c
-  - \* [ios] fix typo in [WXSDKEngine initSDKEnvironment] 17a093f
-  - \* [ios] fix variable name spelling error becd631
-  - \* [ios] Fixed :Merge remote-tracking branch 'alibaba/ios-feature-20170118' into ios-feature-20170118-new-slider-neighbor-fix    move "sliderview init" code to loadview method. 141fd9d
-  - \* [ios] fixed component's view should be removed separately since its view is a subview of rootview. f9b2378
-  - \* [ios] fixed issues that horizontal/vertical pan not respond while recyling views. c7b4bec
-  - \* [ios] js service bug fixed c068bd7
-  - \* [ios] removed debug code and fixed bug 548984f
-  - \* [ios] update navigator module, add open and close interface. f65c42f
-  - \* [ios] upgrade JSFM to 0.19.3 to fix callback problem 9ab9b92
-  - \* [jsfm] fix mismatch of weex.require and weex.document ad63f2a
-  - \* [jsfm] fix support native method bug ce26a6f
-  - \* [jsfm] fixed Promies bug in android 17282c2
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.10.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.10.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 
 ## v0.9.4
@@ -226,140 +160,7 @@ layout: post
       - Display log information
       - 3D viewer of the weex page
       - Javascript error prompt
-- Bugfix
-- \* [android] bug fix slider (#56) 29b9d29f5acd9677a64316b94d5c95f8c7f1a837
-- \* [android] bugfix duplicate destroy 0a59a85467671ddb982fbea6def810e6fa415137
-- \* [android] bugfix scroller offset transform twice 1db300d470951f543236e0b605d7b5a974b96430
-- \* [android] fix appear event not trigger at first 85085a394dd2bae5e397b889c01c1e1a3b8e6b46
-- \* [android] fix build 46bcf4298cd74c1d9706255143f95e0299ebdd15
-- \* [android] fix callback parameter 16db52ed031f7182f2159bc18c0c6e20e7c907f7
-- \* [android] fix dialog window leaked (#55) 4c478044355d6d552fb2f72935cd93867e5f0802
-- \* [android] fix different behavior with iOS switch (#43) 7708a6680e51ae6af9351724940778ce953538ed
-- \* [android] fix dynamic inserted header not sticky display 83c06383aa513061d144ec448ce0ccc25bde5484
-- \* [android] fix fireevent change key 9fb7d0f25d6b1bfe54fb63c9b73c53f8c927e4ad
-- \* [android] fix flash when render video tag a53e6b80b8fa67cce85307a2e5e93d9fb6c28784
-- \* [android] fix list not lazy 0be12be1194bea0c624791662e9f38aac4f0c3fd
-- \* [android] fix methods generate external-loader-component ec6d4136a29c1626470d3bbba90db3d9916c374e
-- \* [android] fix move child from index to index b within the same parent 72259e7a5734ed9a595de080d05ea8e1bf1e716e
-- \* [android] fix slider auto scroll a8d74031dbd526201c05433a08c8aac2047b7a66
-- \* [android] fix slider auto scroll after activity resume bba3bdea45bfb4030b10ea9a847a77463d1ab20a
-- \* [android] fix slider auto scroll after activity resume e0d5e79fc29e07b734d892073effc041a39c85c6
-- \* [android] fix stackoverflow in slider c1f1d702110f49ead4005fae50e4e63c5e72cfac
-- \* [android] fix sticky not display when scrolltoelement 22d163cb572e6b1c510c350a692a4265eb27e204
-- \* [android] fix test d756db8b4c26f8610076a13a0980d024a4e734ac
-- \* [android] fix textarea content vertical gravity eecc32c0a72ce82aa4e998cabb31308fc737fe95
-- \* [android] fix the invalid index of slider-neighbor (#62) 59fd5742a23908174de12804b1a0992d89663afd
-- \* [android] fix unittest 0b2a3778dfa39f17ae6346168b55a3418d85aa1b
-- \* [android] fix unittest 0d2bd982507820f5840e99ee12cd351ae6eb18e5
-- \* [android] fix unittest 4f120b6dbcb4433c8c320c310cd4de051163780c
-- \* [android] fix unittest 6129cd2ed06ce7acc0366b4c172bdf199d52e997
-- \* [android] fix wrong behavior with slider.index (cherry picked from commit c59ae39) 3028f32278a47603d1dc9f0f4314b44721069ac4
-- \* [android] fix wrong behavior with slider.index c59ae3977837be238b08b69388aec12eb4817716
-- \* [android] move element  bug fix dfc643df7fb100737c98efa7f5932e75d07ca59f
-- \* [android] move element  bug fix f28fbdd3ac57c157f52d82fa9473e8651b88023b
-- \* [android] NPE fix ee67a26c045cc351d317e805712bd6e50c4213cb
-- \* [android] Parent's "append=tree" will prevent child's transform style, this commit fix it by add the whole dom tree to animation set instead of the root dom. \* 626915b34bfb348947709c23e09a3dac7acd6962
-- \* [android] slider: fix the IllegalStateException (#58) 0e94762e1ebc240a5e8be6c131848b57bb48b1ea
-- \* [android] v8 security bug fix 7a8f14b78753fd02d59b126fffbd52996376ecc3
-- \* [html5] fix the conflict ac845591a65501c4eae70471502d8370f9983130
-- \* [html5] fix wwp config 0a2420a7202887a0222c0294c510267f139858c8
-- \* [html5] fixed lazyLoad filename 4119190c6b093f87bcb8ebd00f23bd939c307ad1
-- \* [html5] fixed rollup build 03f241ce3c7d8ac786b632f80aa22b94fdc00d34
-- \* [ios] 1. fix refresh location 2. cancel playground re-checkupdate 69f43da52ab22c7777d54bc2d9f45e95eb1d437f
-- \* [ios] bug fix 1664, add resetLoadmore on scroller & list. 4efe8662912ec5a8ce5fac8e09c2e061a21056a4
-- \* [ios] bug fix picker 2d979a58c4b37e93dda5b775d79a7a1ea2165c22
-- \* [ios] bug fix picker 983fe0069ff670b92b6fa7e3e6e29c5b2c768762
-- \* [ios] bug fix picker rescue 27fe3f23bb63072b766f75b69351464d163b331a
-- \* [ios] bug fix setNeedsLayout in every elements. not in once. because elements not contain css node only edd47e09ff453a26c7b176279d0ab84454d4914a
-- \* [ios] bug fix update code style 05b2959be0e0c35ad31b5b20b77f86f296786da2
-- \* [ios] bug fix: change resetTextCSSNodes to resetTextCSSNode a782e092b175a0a34db7cfccb74b5f157ddb3fd4
-- \* [ios] bug fix: refresh view layout error. b0c4a403b1e1dc8aa500c60efcef263b6f7fdd6f
-- \* [ios] bug fix:slider does not remove items  synchronously when item view has been remove from superview. f60997fc3fe7bcfd220e159d61dbaae438e59131
-- \* [ios] bugfix add register component type f7e72ea289ce5f909fb9f6b61705e4f4b9930c53
-- \* [ios] bugfix cancel url uft8-encode 6b67a9e8a3f62849709d552bea0d947679164041
-- \* [ios] bugfix cancel url uft8-encode 9a43cfc9ecb9683562560a880d0f026fd28e93ea
-- \* [ios] bugfix component load rewriteurl f92a6d70e0f3db1eb14c4d90c7e30609e5175dff
-- \* [ios] bugfix globalEvent removeObserver don't need specify target a5420939bac4e21ef61b15710e2fa5e205403d96
-- \* [ios] bugfix iconfont load font , support woff 4c5d5812cb145d60270c5e59ae29def9be8fdcf3
-- \* [ios] cancel animation while handle input keyboard and fix bug when there are many input in a page 61f9259bf77c59916d3dbcdf62b12cd0161698b4
-- \* [ios] debug performance ae3d30802681990e79ce06fb4229b74f3c1d99c2
-- \* [ios] fix #1192, #FFF display error in iOS 5df5cd3739e79ec6e2fefbff66ba7ba2a411d637
-- \* [ios] fix #1479, add handler for slider's items count less than or equal to 2 d654ed7d926c2e20b3a34315348a87470171cdd1
-- \* [ios] fix : Compatible non-standard url ("//a.b.example.png") 3da33595d6e1a261b1c761811d1d8f7672ba3db5
-- \* [ios] fix border's "Overlapping Curves" not recomputed when relayout d302adf14568a32d2b635a64d1326172d9590893
-- \* [ios] fix bug datepicker no update and crash eef4483b3176a0f2e18673e26068a6ec53fef5ca
-- \* [ios] fix bug debugTool unload 751b752f72690954c49ffaf8b89702a0f93712f2
-- \* [ios] fix bug default style f8f056e9f067b4ce23731cb3114383705a5926ac
-- \* [ios] fix bug height change to zero when style change 1ed428dda5d1b4e2b360f216b1b96433479dad28
-- \* [ios] fix bug height change to zero when style change a4d7ebea5e288b753ee71571b149130149768c6b
-- \* [ios] fix bug height change to zero when style change aac7c013003c055e840674e5f61dba4d5073dd73
-- \* [ios] fix bug height change to zero when style change bb8cdb1f2f7ff6ad9b8ac4de23323ca9dea7e0d9
-- \* [ios] fix bug that setFrame incorrectly when transform has been set 84dfd4c7395ae728356b660a0b605c7b85353973
-- \* [ios] fix bug that sticky component's absolutePosition will be computed twice if the actual absolute position is {0,0} a780352d0a1a139ce3e276404d03bd3f9e2e6fd6
-- \* [ios] fix bug: text area cursor auto go to end .reason: if attributes[@"value"] is exist. _updateAttributesOnMainThread will change textview text.the cursor go to end. \* solution: save the  textview  selectedRange , when set textview.text ,correct it d22836ef559809f566068bfe47be960a6d2e9faa
-- \* [ios] fix bug:_updateAttributesOnComponentThread reset styles delete 7c993d1952551ccfad2ad22f01ffa40ea9d12245
-- \* [ios] fix bundlejs 616f4653925c801406ca5fc80fd5f890c45c2b19
-- \* [ios] fix code style 31b08adf525559d9ce46f25eab349584d2f621a9
-- \* [ios] fix compiler complain about warning b92e471c1195f40f8167c8253ea0a909930a9880
-- \* [ios] fix componentRect infomation da08628c562dded860fe1558fb9dc187530223c9
-- \* [ios] fix componentSize to get 41af993f1ffd4e041083a0150607040b9e7cdef2
-- \* [ios] fix crash 55f69b502f0ff1f997dbfbe5238e35a4f123bc5b
-- \* [ios] fix crash on events' copy 491df3dca1fd47c1c564823c7f46527bf064c2dc
-- \* [ios] fix datepicker bug when no value can not pop right picker 24441ad6273e6093a9919b2699a4333b9d7147df
-- \* [ios] fix datepicker complie error 3bf2a0753cf47170144939d42173a668b22e27f5
-- \* [ios] fix datepicker complie error a362ef85918551bacac762ee660300e3108c1c5a
-- \* [ios] fix deprecated method of textarea 4d24f3ff7e792a1c97aa7ee31fbc7f0899c21efb
-- \* [ios] fix failed tests. b5210b244f2f2331be01c9afc4a8cde5b32ed0ee
-- \* [ios] fix input bind each other feb1e7c1ce959491fefed808e46e6291203ccbd7
-- \* [ios] fix ios7 crash f02eff33acab4a58a1a8d6e4d84cef44dcf09bf4
-- \* [ios] fix issue about WXConvert 's UIColor method add193b643c980e310866498dc081130ee287373
-- \* [ios] fix issue that iOS 7 will crash while alert still alive but instance has been destroyed 160a2dae54d6e656c980b9d008b15b0dc28aa4e1
-- \* [ios] fix issue that onappear/ondisappreat not work if binding to cell component. 63f6d7507731d2004e996f99bf859c228fc8b651
-- \* [ios] fix multi keyboard notification 684d3955de263cb39f8afc42c6ffa7340674c81a
-- \* [ios] fix navigator parameter b3117a9c482fb5491b5206413fa7607c356cf95a
-- \* [ios] fix override bundleUrl d7729716aea6652d325e4282ad6b42aaaf14f82c
-- \* [ios] fix playground Podfile   remove c header file  include in WXUtility.h e299feaf4076a5bf7140335ac6cc70d9d99a01da
-- \* [ios] fix responderToSelector target b0f550d6b94da6d9764863b328edfba6d730a75b
-- \* [ios] fix rootComponent order 999c59da3a1dc6c91f036b938c9963cc3cfe87c4
-- \* [ios] fix set navigator callback msg a30b7ed4978de3c91448a1c944431f19e942b515
-- \* [ios] fix single picker but 969d4212967c084a3477e3877052af224354f0e4
-- \* [ios] fix stream jsonp bug b018343b71eb7289bde326acf2f2fe1b124cfad8
-- \* [ios] fix testComponentFactory 99574bf0a1072dbfba547d74545783891b15cdff
-- \* [ios] fix tests compile error 461c24401e5fa1c37f9af25db35665f9f6b4a8da
-- \* [ios] fix text line-height and text-align conflict b1a0673020b7a271fb540ae723ca481aa18db7b4
-- \* [ios] fix textinput component inputEvent fired repetitiously 5c8242776f1410771a357735d6ae2a5b261b7d20
-- \* [ios] fix warning b8464248f61ad3ed9570730608e563f9c73e8ae6
-- \* [ios] fix warnning e2533d036daad60345284f276949dec06b5e0db9
-- \* [ios] fix when options is nil and then  bundleUrl will be nil 5f71a1a2eb7442cf63d9732a6a2b3e2cb3765fa1
-- \* [ios] fix WXSDKInstance rootview bug 3b08a516ff788ca116329dc863ffcb9f66979881
-- \* [ios] texture bug fix : when input change . the text content send to change a38f1b2b8e05e149f09ffbb986268339a9042691
-- \* [jsfm] fix #1447, fix binding event bug of components which have repeat attribute 421cc439d1b8b5abbdbba58882f6c39fd8f862c9
-- \* [jsfm] fix build 8162124f72caf9360657ebc5a2750554d36f3659
-- \* [jsfm] fix condition judgment bug in insertBefore & insertAfter 9c182af615e0e597e21a44217a511126333499e9
-- \* [jsfm] fix eslint c0db1807d080a26c7344f4cc57e5834e98b06085
-- \* [jsfm] fix eslint f75cbe955dc0bcdf33a608af82ab18d3290b87c3
-- \* [jsfm] fix format for lint 5faa860804c1d9adb719a450b53da165ec523e83
-- \* [jsfm] fix the npm run build d3e5124add2dd6a42b1209fe11a8dc58cd536487
-- \* [jsfm] fixed #1818 a757deb7235792c2dd11684500651f717f43226a
-- \* [jsfm] fixed all cases for default framework (black-box) c842ef884e45c568f9ae55e67a066a5de2de15ed
-- \* [jsfm] fixed all test scripts 95ba6a1d6c4211d62d7d2a6693c8aa1e5b7d9607
-- \* [jsfm] fixed all unit test for new file structure d4eb5c97daa34dc53dd929eaf736dcf22e8873b6
-- \* [jsfm] fixed browser render file structure ba7a40bca9a5759101e821c4e043e437b848dcde
-- \* [jsfm] fixed deps error 555ded73f6c6ecb5a9c110f34ab34e596c1c36eb
-- \* [jsfm] fixed html5 render for Vue 980d952d71903545a0bfa7115dfeacd8c7c71ae5
-- \* [jsfm] fixed lint and added case test a3e20a8c78feda705b853f2036cc17bd256f7bb8
-- \* [jsfm] fixed rollup config 4a1c208cf33fb3e5649f8116133f97b003e78127
-- \* [jsfm] fixed runtime instance map management b6e94fa1d54bfdc541ae7c48d98f4dc01481660f
-- \* [jsfm] fixed some vue examples ca2a9c57365a67c9215f69c438c86440a28704ce
-- \* [jsfm] fixed some vue examples da21405b7fab3228bda0e0b2a74853a05c5eb69a
-- \* [jsfm] fixed url checker in vue example 679dc1cffbd0413b9b81624ac46f61473cdf756d
-- \* [jsfm] removed timer bug case and replaced to slot bug case b6f2c8390e3a97df948fc8d2699d15eb62582625
 
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.9.4.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.9.4.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.8.0
 ------
@@ -384,138 +185,7 @@ layout: post
     - Add "select element" function which enable the user to find the exact node in "Elements" inspector Tab when he click the mouse on screencast;  
     - Add "vdom inspector", so user can choose to see the details of native dom or vdom in "Elements" Tab at his preference; 
     - Adjust interfaces with weex SDK to support "callAddElement"; 
-- Bugfix
-  - [jsfm] fix the bug of Dep.target 3448104
-  - [jsfm] fix the test of clearCommonModules 4be9291
-  - [jsfm] fix bug for clear common modules (pr #1097) d2f8c4d
-  - [jsfm] fix callAddElement callback -1 e421b41
-  - [jsfm] fix #1237, fix binding event bug of components which have repeat attribute bfed029
-  - [jsfm] fix bug af99cc1
-  - [jsfm] fixed & closed #1148 4209850
-  - [jsfm] fix merge classStyle fail between nested components 91c5cc6
-  - [jsfm] fix watcher dismatched bug between multi instance 900305d
-  - [jsfm] fixed _Set bug 51b219b
-  - [jsfm] fixed memory management bug in dom event handler in document 9024bda
-  - [jsfm] fixed Promise polyfill problem in iOS 7-8 9a61f33
-  - [android] fix #1380, update method getOffsetAmount in WXCircleViewPager.java (#1382) fd74539
-  - [android] bug fix native crash d8671bd
-  - [android] fix editComponent set non-string value 2e2f032
-  - [android] destroyInstance bugfix 6628460
-  - [android] update fix global event Memory leak fc6d403
-  - [android] add callAddElement debug log 95e3680
-  - [android] bug fix classcast exception e399306
-  - [android] fix circle ci 51d3294
-  - [android] fix slider start auto scroll after activity resume. 89bae89
-  - [android] fix log util implementation 10d508f
-  - [android] fix x86 so file size verification 21d5135
-  - [android] fix build b1fc231
-  - [android] fix log utility 530fe51
-  - [android] NPE bugfix 6d4385f
-  - [android] add cuurentRef to avoid reused bug d836725
-  - [android] bug fix update the ref when cell reused 1f7bf86
-  - [android] bug fix update the ref when cell reused cef277f
-  - [android] fix usertrack modify 8732d70
-  - [android] fix code format 936ebd5
-  - [android] bug fix- Loading layoutY ba0d34e
-  - [android] bug fix - Loading layoutY a8f3c95
-  - [android] bug fix - loading margin 7a3f1e0
-  - [android] fix Deprecated 6aa7da9
-  - [android] fix #1102 (#1103) 5aea5c6
-  - [android] fix merge problem 7923b1e
-  - [android] fix typo 1de6800
-  - [android] fix scroller&list appearance event da1ee4d
-  - [android] fix invaild add dom operation 14b5943
-  - [android] fix build 0d43794
-  - [android] fix build 0520743
-  - [android] fix build 9d596c1
-  - [android] fix list appear&disappear 425c3e1
-  - [android] fix list appear&disappear event 40b52f3
-  - [android] update so for fixing instanceId error 03d0973
-  - [android] fix v8 security problem 06dbc38
-  - [android] bugFix:  List component scrollTo inaccurate 45f0476
-  - [android] fixed #1058 f25238c
-  - [android] fixed #1058 33b4aaf
-  - [android] fix v8 security problem e0b881f
-  - [android] bugFix:  List component scrollTo inaccurate 052aeac
-  - [android] fix comment fd3e0ef
-  - [android] fix indicator default style 57b71fb
-  - [android] fix unit test ee74b5c
-  - [android] fix code style 449bad2
-  - [android] fix list  orientation usage, move component's
-  - [android] fix change/focus confliction b672101
-  - [android] fix change/focus/blur  event confliction c3689e8
-  - [android] fix add dom error a993a84
-  - [android] update the mWXBridge to null when debugmode disable 35005ea
-  - [android] fix invaild add dom operation 7b1ad97
-  - [android] fix moveElement on the same parent dom case 2a94ba2
-  - [android] fix typo 42a2099
-  - [android] fix NPE c2da99e
-  - [ios] fix style line-height conflict with text-align e762637
-  - [ios] fix slider example href 8196792
-  - [ios] fix keyboard cover input sometime 0ad56dc
-  - [ios] fix #1188, support for converting string to NSUInteger. c3f6ea2
-  - [ios] fix issue that fixed-position component's view be reallocated while it is in a cell. d8881c3
-  - [ios] indexDict must be accessed on component thread, fix componentForRef crash 8cc3503
-  - [ios] fix issue that transform-origin not works in rotation transform 5dcab9e
-  - [ios] fix warning f913dab
-  - [ios] fix css node children count invalid while change from or change to fixed position. 81a1dc4
-  - [ios] fix compile error 98a8078
-  - [ios] fix css node children count invalid while change from or change to fixed position. 0b3a2e3
-  - [ios] fix podspec syntax error d0386e6
-  - [ios] ios7 bugfix api 6e7cf07
-  - [ios] try to fix NSMapTable crash in iOS8 a03a4bc
-  - [ios] fix slider-neighbor bc03620
-  - [ios] fix remove Observer crash 46fcbc5
-  - [ios] fix issue that rotate transform not work in styles. 8601304
-  - [ios] fix layer setBackgroundColor crash 5778422
-  - [ios] fix sliderNeighbor 39cb4ea
-  - [ios] fix warning ea8c8f8
-  - [ios] fix warning 4d2528e
-  - [ios] fix warning issue d77fd5d
-  - [ios] fix issue transform does not work while initialized. c36f1bf
-  - [ios] canvas component property error fix 448d4f4
-  - [ios] try to fix textStorage thread-safe issue 0d62716
-  - [ios] fix A component onclick event 01f9706
-  - [ios] fix input disabled attribute bug 533df4f
-  - [ios] fix input disabled attribute bug fd2c526
-  - [ios] fix iconfont src update bug f99906b
-  - [ios] customize debug switch 86346ea
-  - [ios] fix typo ae99b92
-  - [ios] change context name for remove JSContext debugging 75c1e42
-  - [ios] fix input max length bug fe9a013
-  - [ios]add LogLevel control and RemoteDebug control 164abf8
-  - [ios] fix memory leak 00009c0
-  - [ios] fix a bug that re-deleting procedure 717bf3f
-  - [ios] fix storage module in swift f13b72f
-  - [ios] fix highlight problem 93eb282
-  - [html5] fix conflicts with jsfm 0.16 ce63e22
-  - [html5] fix lint 9612daa
-  - [html5] fix class name b224685
-  - [html5] fix img lazyload 3984111
-  - [html5] fix registration of tabheader d38a4c0
-  - [html5] fix bug of null rules of stylesheet in spinner c058f95
-  - [html5] fix top 41c603a
-  - [html5] fix toast a3a4730
-  - [html5] fix lazyload typo 493bee7
-  - [html5] fix lint 43b24da
-  - [html5] fix loadmoreoffset 3c7e262
-  - [html5] fix sticky 9bdf079
-  - [html5] fix lazyload 38ee957
-  - [html5] fix lint 0e94380
-  - [html5] fix flexible a06eb80
-  - [html5] fix jsonp callback error 6db0850
-  - [html5] fix typo 5f61a06
-  - [html5] fix lint 363decd
-  - [html5] fix bug of scroll to c007c86
-    orientation field to scroller 3febd83
-  - [html5] fix dist bug 9d102a5
-  - [html5] fix missing viewport meta. 1cf98e5
 
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.8.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.8.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.7.0
 ------
@@ -538,123 +208,6 @@ layout: post
   - Solve the dependency on Debugger, user could start "Inspector" first or "Debugger" at will
   - Add "refresh" function in sdk, user could inspect new file by scanning its QR code in playground;
   - Android/ios inspect module split from weex sdk,  and will deliver in separate repo in future; support inspect in windows system
-- Bugfix
-  - [android] fix 'fixed' position not work when append tree 6ccfa4f
-  - [android] fix slider set index frzee 6524849
-  - [android] bug fix - setLayout LayoutParams b70f6e2
-  - [android] fix get header:compitable with lower case header key 5ebec75
-  - [android] fix storage module: keep open when module is live c311f15
-  - [android] fix build 0389302
-  - [android] fix jsonp response process 28588c6
-  - [android] fix ViewHolder NPE f9005ab
-  - [android] bug fix ViewHolder NPE 86dd101
-  - [android] fix build b14dd26
-  - [android] fix cell memory leak c03fdc1
-  - [html5] fix e2e test ci 77f14af
-  - [ios] fix type of callback params 2aa8f47
-  - [android] fix sdk init time measurement 3d7cd02
-  - [android] fix sdk init time measurement f4cbfd0
-  - [android] fix sdk init time measurement 8cffa5a
-  - [ios] fix stream fetch response type 9a7c296
-  - [android] forbid except cell、header、fixed、refresh and loading 114860f
-  - [android] fix comment cf53fd3
-  - [android] fix build 82a03fd
-  - [android] WXUtils bugfix 3655d9d
-  - [android] bug fix - setProperty class cast d567f89
-  - [android] fix argument format crash 1baac57
-  - [android] function name fix : hasAppearAndDisappearEvent 1f8b501
-  - [android] fix NPE crash in textarea nad modalModule c3a08ff
-  - [ios] fix bug when url has chinese character. b7e2c2f
-  - [android] update so fix not delRef argument b0db514
-  - [jsfm] fixed repeat bug when update values with new object references 371e58c
-  - [android] fix slider initialization crash. 4c52d33
-  - [android] add a debugger switch, decouple the dept between inspector and debugger dfa71c4
-  - [android] fix bug sticky not show dc3ca4d
-  - [android] fix component register type missed 92a92dc
-  - [android] sticky null child bug fix 541b68b
-  - [android] fix list scroller default height fc0aa58
-  - [android] fix indicator default style 610624c
-  - [android] fix embed page appear event 71a5360
-  - [android] update debug manifest 0541126
-  - [android] update JSF to 0.14.6 fix bind data error 4f7e3c8
-  - [android] fix bug mChild NPE a313b81
-  - [android] fix sticky offsetX 1bae906
-  - [jsfm] fixed updateMark error in compileType 9533431
-  - [jsfm] fixed updateMark error in compileType 5ea0132
-  - [android] Sticky fast fling bug fix 7092c6a
-  - [android] fix view appear event 4bf67e4
-  - [android] fix list scroll to 6355fc6
-  - [ios] fix default debug value 79daf2f
-  - [android] fix list scroll to ad0201b
-  - [ios] fix stat 2d3ab94
-  - [android] refresh the instance when reload called by the debug server 99392db
-  - [android] add a stop method to IWXDebugProxy b06d352
-  - [android] sticky bug fix f9d3265
-  - [android] fix list scrollTo a198b2e
-  - [android] fix scroller getView and getInnerView 4fa0453
-  - [android] refresh the instance when reload called by the debug server fd2be06
-  - [android] add a stop method to IWXDebugProxy 5789700
-  - [android] refresh the instance when reload called by the debug server 5ddf782
-  - [android] add a stop method to IWXDebugProxy 79cd97b
-  - [ios] fix modal bug about message is number d0cdaf9
-  - [html5] fix fire event 978c454
-  - [android] bug fix event lost f9c4357
-  - [android] add debug log cae86fa
-  - [html5] fix typo b84a1b3
-  - [html5] fix lint 8e905dc
-  - [android] fix bug - setLayout 0b5082f
-  - [jsfm] fixed native param format of setTimeout in app.differ a9f101e
-  - [ios] cancel AppDelegate.m debug annotation 03abcf8
-  - [android] fix bug - scroller height error 7458441
-  - [ios] support weex-devtool and weex --debugger 714c924
-  - [ios] resume original logger debug feature a144699
-  - [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
-  - [android] fix input restore init value when batch 3a54da2
-  - [android] fix build 8450473
-  - [android] fix switch fireevent with domchange b6c2d31
-  - [android]  fix input change event 58563b5
-  - [jsfm] fixed repeat binding da9f40d
-  - [html5] fix typo 09bcdb3
-  - [ios] bug fix: slider is embed in list cell d56c7ec
-  - [ios] fix typo for wrong quote in Podfile ab8a83b
-  - [html5] fix loadmore offset of list 69ed65a
-  - [android] fix model callback data from string to json 3aed566
-  - [android] use diff vars flag the remote debug 5e976fc
-  - [html5] fix typo b8eec69
-  - [android] fix bug - refresh not compatible MI2 c814cd9
-  - [android] fix problem that session is null and init framework failed b985d59
-  - [ios] fix element cssstyle selected bug 41450a9
-  - [ios] fix crash from cssstyle e079e5c
-  - [android] update the debug init sequence to make sure the handshake well 28741da
-  - [android] fix example file name fc7862c
-  - [android] update debug switch f9369bb
-  - [android] reuse image adapter for avoid Fresco bug 62dc67c
-  - [android] add debug proxy, adapt to the weex-debugger d93f9e5
-  - [android] fix NPE in stream f5f8a4d
-  - [android] fix getScreenWidth npe e264f2a
-  - [android] fix register order 5c8a264
-  - [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
-  - [ios] fix data type d815e2a
-  - [ios] update debug tool 3d82054
-  - [ios] fix input component width calculation ba9a3b7
-  - [ios] fix notes about WXComponent+ViewManagement d31e8b6
-  - [android] fix list component addsubview error 69c3286
-  - [ios] fix inverted-logic 773bea7
-  - [android] fix crash when list append tree 686e450
-  - [ios] fix playground scan qr code bug 28f7de2
-  - [android] fix bug - Scroll getView 647a927
-  - [android] fix bug - delete </merge> 77680f1
-  - [android] fix bug - nested scroll ac50cd2
-  - [android] fix onTouchEvent bug 911e569
-  - [ios] fix thread safe method indexOfObject in array 1623165
-  - [ios] remove the timing of network debug 5b00fe5
-  - [ios] fix warning e1d496c
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.7.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.7.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.6.1
 ------
@@ -681,136 +234,6 @@ layout: post
      
      <img src="https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png" width="600">
 
-Bugfix
-- [android] fix view appear event 4bf67e4
-- [android] fix list scroll to 6355fc6
-- [ios] fix default debug value 79daf2f
-- [android] fix list scroll to ad0201b
-- [android] fix build 5d1286c
-- [android] bug fix 6a1788e
-- [ios] fix stat 2d3ab94
-- [android] bug fix 60073af
-- [android] refresh the instance when reload called by the debug server 99392db
-- [android] add a stop method to IWXDebugProxy b06d352
-- [android] sticky bug fix f9d3265
-- [android] fix build 62ee68a
-- [android] fix list scrollTo a198b2e
-- [android] fix scroller getView and getInnerView 4fa0453
-- [android] refresh the instance when reload called by the debug server fd2be06
-- [android] add a stop method to IWXDebugProxy 5789700
-- [android] bug fix 7a83ddc
-- [android] refresh the instance when reload called by the debug server 5ddf782
-- [android] add a stop method to IWXDebugProxy 79cd97b
-- [html5] fix fire event 978c454
-- [android] bug fix event lost f9c4357
-- [android] add debug log cae86fa
-- [html5] fix typo b84a1b3
-- [html5] fix lint 8e905dc
-- [android] fix bug - setLayout 0b5082f
-- [jsfm] fixed native param format of setTimeout in app.differ a9f101e
-- [ios] cancel AppDelegate.m debug annotation 03abcf8
-- [android] fix bug - scroller height error 7458441
-- [ios] support weex-devtool and weex --debugger 714c924
-- [ios] resume original logger debug feature a144699
-- [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
-- [android] fix input restore init value when batch 3a54da2
-- [android] fix build 8450473
-- [android] fix switch fireevent with domchange b6c2d31
-- [android]  fix input change event 58563b5
-- [jsfm] fixed repeat binding da9f40d
-- [html5] fix typo 09bcdb3
-- [ios] bug fix: slider is embed in list cell d56c7ec
-- [ios] fix typo for wrong quote in Podfile ab8a83b
-- [html5] fix loadmore offset of list 69ed65a
-- [android] fix build 0f39533
-- [android] fix model callback data from string to json 3aed566
-- [android] use diff vars flag the remote debug 5e976fc
-- [html5] fix typo b8eec69
-- [html5] fix ignore de5837a
-- [android] fix bug - refresh not compatible MI2 c814cd9
-- [android] fix problem that session is null and init framework failed b985d59
-- [ios] fix element cssstyle selected bug 41450a9
-- [ios] fix crash from cssstyle e079e5c
-- [android] update the debug init sequence to make sure the handshake well 28741da
-- [android] fix example file name fc7862c
-- [ios] fix #567 3be6561
-- [android] update debug switch f9369bb
-- [android] reuse image adapter for avoid Fresco bug 62dc67c
-- [android] add debug proxy, adapt to the weex-debugger d93f9e5
-- [android] fix ut bug 85c5cae
-- [android] fix NPE in stream f5f8a4d
-- [android] fix getScreenWidth npe e264f2a
-- [android] fix register order 5c8a264
-- [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
-- [ios] fix data type d815e2a
-- [ios] update debug tool 3d82054
-- [ios] fix input component width calculation ba9a3b7
-- [ios] fix notes about WXComponent+ViewManagement d31e8b6
-- [android] fix list component addsubview error 69c3286
-- [ios] fix inverted-logic 773bea7
-- [android] fix crash when list append tree 686e450
-- [ios] fix playground scan qr code bug 28f7de2
-- [android] fix bug - Scroll getView 647a927
-- [android] fix bug - delete </merge> 77680f1
-- [android] fix bug - nested scroll ac50cd2
-- [android] fix onTouchEvent bug 911e569
-- [ios]fix thread safe method indexOfObject in array 1623165
-- [ios] remove the timing of network debug 5b00fe5
-- [ios] fix warning e1d496c
-- [ios] remove unnecessary removeFromSuperView from unload method and fix async unload view issue in list. b6c3a62
-- [android] fix unit test 4dda4ac
-- [android] update power info and debug protocol, mark stable 3323776
-- [ios] fix indicator style  abnormal when update 7dcb54b
-- [ios] fix list delete issue 579b720
-- [ios] fix indicator item size abnormal e3cd91b
-- [android] bufix NPE 904146e
-- [android] fix  multithreading exception b1c2af1
-- [android] update debug info 7a82747
-- [android] fit bug - indicator error 673b7b6
-- [android] fix bug loading-indicator 981728a
-- [android] fix unit test aafec20
-- [android] bugfix  getInstance singleton 397dc39
-- [android] fix WXSwipeRefreshLayout 745705d
-- [ios] fix scan qrcode after back from scan result failed 0b308aa
-- [android] fix unit test 02d8489
-- [android] fix create body NPE 89690f7
-- [android] fix getView()==null crash b0ca974
-- [android] bugfix NPE 93ef1e1
-- [android] bug fix NPE when instance destroy e7aad12
-- [android] NPE bugfix 9f15552
-- [android] NPE bug fix when recycleImage 4edecef
-- [android] bugfix layout can not be reset for list b19c0a1
-- [android] add DebugAdapter f10cf9c
-- [android] fix text layout unexpect quit when text is zero-length content 9320623
-- [android] fix spell error 23c5440
-- [android] update debug 567e9e0
-- [android] fix list remove cell crash bug 84844f9
-- [android] fix unit test be636fb
-- [android] update debug tool 8d9cad9
-- [android] bug fix remove fixed node f867bd1
-- [android] update debug tool 5b75507
-- [android] fix unit test 40b10de
-- [android] update debug.move some code from WXPrettyFish to WXDebugTool c70927b
-- [android] update debug 6047c43
-- [android] update debug add class ScalpelFrameLayout d956819
-- [android] fix status badge url 35a491b
-- [android] fix border style 329f128
-- [android] update weex_debug grade wrapper 793c67b
-- [android] fix fetch response data 1503431
-- [android] fix progress callback 1f72495
-- [android] bugfix init sdk b6946ad
-- [android] NPE fix fc9b595
-- [android] update how-to-debug.md playgroup-app.md c61d7b4
-- [android] update debug function 1bcfdd3
-- [android] fix v8 compile potential crash & closed v8  snapshot 6d159a6
-- [android] update debug d7c6d61
-- [android] fix v8 compile potential crash & closed v8  snapshot 67b01a1
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.6.1.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.6.1.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.5.0
 ------
@@ -830,29 +253,5 @@ Bugfix
    3. [Computed Property](https://github.com/alibaba/weex/blob/dev/doc/syntax/data-binding.md#computed-properties) supports complicated logic in data bindings.
    4. [New Repeat Syntax](https://github.com/alibaba/weex/blob/dev/doc/syntax/display-logic.md#a-extension-of-repeat-syntax) is easy to access the key or value of repeated object.
 
-### Bugfixes
-- [android] fix crash https://github.com/alibaba/weex/commit/4fa27716d82d90c5e16d023c6e55cf65eeb9136b
-- [android] fix #20, android slider indicator edge is not smooth https://github.com/alibaba/weex/commit/5b8f3a7e6d4d547d892223d8abc02ac2084b5a6e
-- [android] fix List https://github.com/alibaba/weex/commit/4acc90a1c8c0a9181d91e2ef984266c39d255cac
-- [android] fix NavBar https://github.com/alibaba/weex/commit/8b4ea4f0c18d4e732749c025ea496c59d19004a5
-- [android] fix position=fixed did not setLayout https://github.com/alibaba/weex/commit/3b9128c2a421243d7c28f64abaebcbffd6a2ec73
-- [jsfm] fix change data when ready https://github.com/alibaba/weex/commit/0a1aa5db40713abb2923a2effb06c28349ac0213
-- [jsfm] fix when the key of trackby is zero https://github.com/alibaba/weex/commit/efa50707efd24cfb775c7e0f467279bbaade1fd6
-- [jsfm] fix append tree https://github.com/alibaba/weex/commit/d3871b308e642fd71c2b7ba630aed0f573079daa
-- [jsfm] fix transformer version https://github.com/alibaba/weex/commit/9f21bccb07869883edc261516272aa5e41933c78
-- [jsfm] fix inline event test https://github.com/alibaba/weex/commit/1ce3212a83c58187a2be0df43eecafababce8ecb
-- [jsfm] fixed transformer 0.3 https://github.com/alibaba/weex/commit/66b647afa08671812a7c5e11b440c23ae18750d9
-- [jsfm] fixed jscs error https://github.com/alibaba/weex/commit/a5067d52e2a1708852ab704a9004f5c35f3451b6
-- [jsfm] hotfixed transformer version bug and fixed a small sample code bug https://github.com/alibaba/weex/commit/48862dc40375bbc8caa30384d45b031440694f3b
-- [jsfm] fix callback https://github.com/alibaba/weex/commit/2f85737c51ebd037a72db1c18daf4a9690c45837
-- [jsfm] fix #1 #12 https://github.com/alibaba/weex/commit/56e6a79c50f1b2fd3c0ecebec000e9a693cb4b92
-- [jsfm] fix undefined for element's depth https://github.com/alibaba/weex/commit/2b7eb9ea82e6552b6e57fddb332dfbbfa3401473
-- [jsfm] fix calling functional data-binding multiply https://github.com/alibaba/weex/commit/dcd9b660912bea69b17622e13fddb80ecb42bc35
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.5.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.5.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ------
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5b3a2558/doc/source/releasenote.md
----------------------------------------------------------------------
diff --git a/doc/source/releasenote.md b/doc/source/releasenote.md
index 8e5c617..6e0d081 100644
--- a/doc/source/releasenote.md
+++ b/doc/source/releasenote.md
@@ -6,6 +6,29 @@ layout: post
 
 # Release Note
 
+## v0.12.0 ( First Offical Release)
+
+- C++ timer  by lycool
+Discussed in https://lists.apache.org/thread.html/567c9b19d68ccf3e0d24c1467298ebcd4316ffa524c557a34c6c087f@%3Cdev.weex.apache.org%3E
+relate pull requests:[apache/incubator-weex/pull/228|https://github.com/apache/incubator-weex/pull/228], [apache/incubator-weex/pull/232|https://github.com/apache/incubator-weex/pull/232], [apache/incubator-weex/pull/221|https://github.com/apache/incubator-weex/pull/221]
+
+- Add scroller/list scroll event in html5 render
+android&iOS already have this feature in v0.11
+https://github.com/apache/incubator-weex/commit/f50fba8647c8bb6ac522b1a4569a2a2269da1953
+
+- Enhance accessibility, new `aria-label` & `role` support
+[apache/incubator-weex/pull/149|https://github.com/apache/incubator-weex/pull/149]
+
+- Native input/textarea enhancement by kfeagle &  misakuo
+support `number` data type; support soft keyboard event 
+
+- Picker module enhancement
+More picker options to customize picker dialog style(background color etc.). Related pull requests: [apache/incubator-weex/pull/234|https://github.com/apache/incubator-weex/pull/234], [apache/incubator-weex/pull/233|https://github.com/apache/incubator-weex/pull/233]
+
+- Android DOM module refactor
+Seperate module code by action, increasing the maintainability.
+[apache/incubator-weex/pull/104|https://github.com/apache/incubator-weex/pull/104]
+
 ## v0.10.0
 ------
 - New Feature
@@ -68,95 +91,6 @@ layout: post
       - Developers could easily pack/install his application with simple command.
       - Has full set of commands for developers to manage weex plugins, including create plugin template, add plugin to his project etc.
       - [Plugin market](http://market.weex-project.io) was formally used for developers to publish/download weex plugins.
-- Bugfix
-  - \* [android] add fixed size property 5191241
-  - \* [android] bug fix NPE && cache ScreenWidth and ScreenHeight 950e843
-  - \* [android] bugfix duplicate destroy 25412e0
-  - \* [android] bugfix keyboard force hide (#106) 0ad2f95
-  - \* [android] bugfix scroller offset transform twice cd7ad66
-  - \* [android] change gradle to fix build 1feaadf
-  - \* [android] ClipPath doesn't work when the following conditions met   1. rotation or scale is used   2. API level is 24 As border-radius uses clipPath, this will cause views with border-radius using rotation or scale on API level 24 doesn't. So far, this is a bug of Android N,https://code.google.com/p/android/issues/detail?id=225556&sort=-id&colspec=ID f69e918
-  - \* [android] Fix bug of border width due to viewport. Refer https://github.com/sospartan/weex/commit/7cfe9752e0c95f3b23bedfa3f51ba3bafb4318f4#diff-42908d45812780fec8606537dffab67dL1054 9cd6800
-  - \* [android] fix cast exception 3136fcf
-  - \* [android] fix DCL thread safely (#48) 62e9b71
-  - \* [android] fix duplicate add component child to list 3fd73d7
-  - \* [android] fix find component 45643ab
-  - \* [android] fix getScreenWidth with context parameter (#80) 16377f2
-  - \* [android] fix inefficient use of keySet iterator instead of entrySet iterator (#47) dac80e2
-  - \* [android] fix intrinsicSize when img.resize=contain b6272a2
-  - \* [android] fix npe in onScrollerListener (#138) 8141de7
-  - \* [android] fix npe in stream callback 24aa2c2
-  - \* [android] fix PageActivity duplicate add view to container 06f77b8
-  - \* [android] fix refresh crash after destoryed (#144) 51ea00b
-  - \* [android] fix refresh/loading a726d3c
-  - \* [android] fix slider auto scroll behavior 28926ba
-  - \* [android] fix slider layout, ignore position offset. a0381e4
-  - \* [android] fix some weak code that may cause file leak or useless (#49) 8d0f049
-  - \* [android] fix stackoverflow 6a01059
-  - \* [android] fix stream response status type (#63) 8580c66
-  - \* [android] fix switch case (#127) c301b92
-  - \* [android] fix textarea vertical gravity 9730948
-  - \* [android] fix the IllegalArgumentException on empty arguments f799d67
-  - \* [android] fix the wrong header location (#135) d58fce9
-  - \* [android] fix typo: WebSocket -> webSocket c162d54
-  - \* [android] fix wrong initial direction value on appear event (#107) 593c799
-  - \* [android] modify default real position (+1 squashed commit) Squashed commits: [9470835] \* [android] fix unittest b915584
-  - \* [android] move indicator layout logic to subclass;seperate fixed layout logic fc2a009
-  - \* [android] rename debug activity 95ab73a
-  - \* [android] update fix do not remove loading and fresh ddf74ff
-  - \* [html5] fix border & border-width for less than 1px. (#2059) 3eb34b9
-  - \* [html5] fix bugs of neighbor 34fafb2
-  - \* [html5] fix compatibility problem & support deps arguments. 00e7079
-  - \* [html5] fix content-type error 5b06140
-  - \* [html5] fix h5 build 56e9c03
-  - \* [html5] fix shrink & grow for flex. (#2082) b5b600d
-  - \* [html5] fix slider container's style. (#2157) a79bd9c
-  - \* [html5] fix uncaught dom exception for video.play. (#1877) 7a0bd03
-  - \* [html5] fixbug:change name from WebSocket to webSocket] (#2146) b72bbb9
-  - \* [ios]  bug fix: websocket module name is changed , playground should change 3f35b82
-  - \* [ios] bug fix: onload success value type is not same as android, change it for unify 531633c
-  - \* [ios] bugfix call renderFinish 1fb2e0a
-  - \* [ios] bugfix module default method not called 0be9f87
-  - \* [ios] bugfix moduleEvent compatible dbea448
-  - \* [ios] bugfix multi input or textarea maybe wrongly change root view frame a2e97db
-  - \* [ios] bugfix navigation pop animated value convert cfe98a8
-  - \* [ios] bugfix navigator open and close. beef00b
-  - \* [ios] bugfix rootView information  coordinate 7313703
-  - \* [ios] bugfix slider-neighbor may beyond item count index cbfa9df
-  - \* [ios] bugfix view event 83d3e6a
-  - \* [ios] bugfix: playground cannot open c949463
-  - \* [ios] bugfix:delete configpicker not delete the method in header cc3afc2
-  - \* [ios] fix : Change the lastoffsetXRatio to lastOffsetXRatio de8f246
-  - \* [ios] fix : Change the parameter wording to make it more in line with development habits. 869da54
-  - \* [ios] fix : if _fontFamily is nil set _fontFamily value with the correct system font. In the case of Chinese characters, this logic help system select the right system default font name. 6e202b6
-  - \* [ios] fix : improve slider-neighbor demo code .remove useless <container> label and <scroller> label. 2c236c8
-  - \* [ios] fix bug : you can't slide to the right when the slider has only two pages. d224bfb
-  - \* [ios] fix bug that border-x-radius not work 96ba5b5
-  - \* [ios] fix bug that horizontalpan and verticalpan can not trigger simultaneously eb03cb0
-  - \* [ios] fix bug: text input padding is not right f4accba
-  - \* [ios] fix crash after returning id type, need to copy here. 4f5276b
-  - \* [ios] fix issue that cells pushed down by inserted cells will not trigger disappear event. 9dcc4dd
-  - \* [ios] fix issue that rotate 90->180->270 not work. 5b3c13d
-  - \* [ios] fix issue that rotate(0) not work after rotate(>180degree) 0f6989d
-  - \* [ios] fix issue that there will be 1px space remaining between list's top and navigator when UITableView is pulled down and finger releases. d286e3c
-  - \* [ios] fix typo in [WXSDKEngine initSDKEnvironment] 17a093f
-  - \* [ios] fix variable name spelling error becd631
-  - \* [ios] Fixed :Merge remote-tracking branch 'alibaba/ios-feature-20170118' into ios-feature-20170118-new-slider-neighbor-fix    move "sliderview init" code to loadview method. 141fd9d
-  - \* [ios] fixed component's view should be removed separately since its view is a subview of rootview. f9b2378
-  - \* [ios] fixed issues that horizontal/vertical pan not respond while recyling views. c7b4bec
-  - \* [ios] js service bug fixed c068bd7
-  - \* [ios] removed debug code and fixed bug 548984f
-  - \* [ios] update navigator module, add open and close interface. f65c42f
-  - \* [ios] upgrade JSFM to 0.19.3 to fix callback problem 9ab9b92
-  - \* [jsfm] fix mismatch of weex.require and weex.document ad63f2a
-  - \* [jsfm] fix support native method bug ce26a6f
-  - \* [jsfm] fixed Promies bug in android 17282c2
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.10.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.10.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 
 ## v0.9.4
@@ -226,140 +160,7 @@ layout: post
       - Display log information
       - 3D viewer of the weex page
       - Javascript error prompt
-- Bugfix
-- \* [android] bug fix slider (#56) 29b9d29f5acd9677a64316b94d5c95f8c7f1a837
-- \* [android] bugfix duplicate destroy 0a59a85467671ddb982fbea6def810e6fa415137
-- \* [android] bugfix scroller offset transform twice 1db300d470951f543236e0b605d7b5a974b96430
-- \* [android] fix appear event not trigger at first 85085a394dd2bae5e397b889c01c1e1a3b8e6b46
-- \* [android] fix build 46bcf4298cd74c1d9706255143f95e0299ebdd15
-- \* [android] fix callback parameter 16db52ed031f7182f2159bc18c0c6e20e7c907f7
-- \* [android] fix dialog window leaked (#55) 4c478044355d6d552fb2f72935cd93867e5f0802
-- \* [android] fix different behavior with iOS switch (#43) 7708a6680e51ae6af9351724940778ce953538ed
-- \* [android] fix dynamic inserted header not sticky display 83c06383aa513061d144ec448ce0ccc25bde5484
-- \* [android] fix fireevent change key 9fb7d0f25d6b1bfe54fb63c9b73c53f8c927e4ad
-- \* [android] fix flash when render video tag a53e6b80b8fa67cce85307a2e5e93d9fb6c28784
-- \* [android] fix list not lazy 0be12be1194bea0c624791662e9f38aac4f0c3fd
-- \* [android] fix methods generate external-loader-component ec6d4136a29c1626470d3bbba90db3d9916c374e
-- \* [android] fix move child from index to index b within the same parent 72259e7a5734ed9a595de080d05ea8e1bf1e716e
-- \* [android] fix slider auto scroll a8d74031dbd526201c05433a08c8aac2047b7a66
-- \* [android] fix slider auto scroll after activity resume bba3bdea45bfb4030b10ea9a847a77463d1ab20a
-- \* [android] fix slider auto scroll after activity resume e0d5e79fc29e07b734d892073effc041a39c85c6
-- \* [android] fix stackoverflow in slider c1f1d702110f49ead4005fae50e4e63c5e72cfac
-- \* [android] fix sticky not display when scrolltoelement 22d163cb572e6b1c510c350a692a4265eb27e204
-- \* [android] fix test d756db8b4c26f8610076a13a0980d024a4e734ac
-- \* [android] fix textarea content vertical gravity eecc32c0a72ce82aa4e998cabb31308fc737fe95
-- \* [android] fix the invalid index of slider-neighbor (#62) 59fd5742a23908174de12804b1a0992d89663afd
-- \* [android] fix unittest 0b2a3778dfa39f17ae6346168b55a3418d85aa1b
-- \* [android] fix unittest 0d2bd982507820f5840e99ee12cd351ae6eb18e5
-- \* [android] fix unittest 4f120b6dbcb4433c8c320c310cd4de051163780c
-- \* [android] fix unittest 6129cd2ed06ce7acc0366b4c172bdf199d52e997
-- \* [android] fix wrong behavior with slider.index (cherry picked from commit c59ae39) 3028f32278a47603d1dc9f0f4314b44721069ac4
-- \* [android] fix wrong behavior with slider.index c59ae3977837be238b08b69388aec12eb4817716
-- \* [android] move element  bug fix dfc643df7fb100737c98efa7f5932e75d07ca59f
-- \* [android] move element  bug fix f28fbdd3ac57c157f52d82fa9473e8651b88023b
-- \* [android] NPE fix ee67a26c045cc351d317e805712bd6e50c4213cb
-- \* [android] Parent's "append=tree" will prevent child's transform style, this commit fix it by add the whole dom tree to animation set instead of the root dom. \* 626915b34bfb348947709c23e09a3dac7acd6962
-- \* [android] slider: fix the IllegalStateException (#58) 0e94762e1ebc240a5e8be6c131848b57bb48b1ea
-- \* [android] v8 security bug fix 7a8f14b78753fd02d59b126fffbd52996376ecc3
-- \* [html5] fix the conflict ac845591a65501c4eae70471502d8370f9983130
-- \* [html5] fix wwp config 0a2420a7202887a0222c0294c510267f139858c8
-- \* [html5] fixed lazyLoad filename 4119190c6b093f87bcb8ebd00f23bd939c307ad1
-- \* [html5] fixed rollup build 03f241ce3c7d8ac786b632f80aa22b94fdc00d34
-- \* [ios] 1. fix refresh location 2. cancel playground re-checkupdate 69f43da52ab22c7777d54bc2d9f45e95eb1d437f
-- \* [ios] bug fix 1664, add resetLoadmore on scroller & list. 4efe8662912ec5a8ce5fac8e09c2e061a21056a4
-- \* [ios] bug fix picker 2d979a58c4b37e93dda5b775d79a7a1ea2165c22
-- \* [ios] bug fix picker 983fe0069ff670b92b6fa7e3e6e29c5b2c768762
-- \* [ios] bug fix picker rescue 27fe3f23bb63072b766f75b69351464d163b331a
-- \* [ios] bug fix setNeedsLayout in every elements. not in once. because elements not contain css node only edd47e09ff453a26c7b176279d0ab84454d4914a
-- \* [ios] bug fix update code style 05b2959be0e0c35ad31b5b20b77f86f296786da2
-- \* [ios] bug fix: change resetTextCSSNodes to resetTextCSSNode a782e092b175a0a34db7cfccb74b5f157ddb3fd4
-- \* [ios] bug fix: refresh view layout error. b0c4a403b1e1dc8aa500c60efcef263b6f7fdd6f
-- \* [ios] bug fix:slider does not remove items  synchronously when item view has been remove from superview. f60997fc3fe7bcfd220e159d61dbaae438e59131
-- \* [ios] bugfix add register component type f7e72ea289ce5f909fb9f6b61705e4f4b9930c53
-- \* [ios] bugfix cancel url uft8-encode 6b67a9e8a3f62849709d552bea0d947679164041
-- \* [ios] bugfix cancel url uft8-encode 9a43cfc9ecb9683562560a880d0f026fd28e93ea
-- \* [ios] bugfix component load rewriteurl f92a6d70e0f3db1eb14c4d90c7e30609e5175dff
-- \* [ios] bugfix globalEvent removeObserver don't need specify target a5420939bac4e21ef61b15710e2fa5e205403d96
-- \* [ios] bugfix iconfont load font , support woff 4c5d5812cb145d60270c5e59ae29def9be8fdcf3
-- \* [ios] cancel animation while handle input keyboard and fix bug when there are many input in a page 61f9259bf77c59916d3dbcdf62b12cd0161698b4
-- \* [ios] debug performance ae3d30802681990e79ce06fb4229b74f3c1d99c2
-- \* [ios] fix #1192, #FFF display error in iOS 5df5cd3739e79ec6e2fefbff66ba7ba2a411d637
-- \* [ios] fix #1479, add handler for slider's items count less than or equal to 2 d654ed7d926c2e20b3a34315348a87470171cdd1
-- \* [ios] fix : Compatible non-standard url ("//a.b.example.png") 3da33595d6e1a261b1c761811d1d8f7672ba3db5
-- \* [ios] fix border's "Overlapping Curves" not recomputed when relayout d302adf14568a32d2b635a64d1326172d9590893
-- \* [ios] fix bug datepicker no update and crash eef4483b3176a0f2e18673e26068a6ec53fef5ca
-- \* [ios] fix bug debugTool unload 751b752f72690954c49ffaf8b89702a0f93712f2
-- \* [ios] fix bug default style f8f056e9f067b4ce23731cb3114383705a5926ac
-- \* [ios] fix bug height change to zero when style change 1ed428dda5d1b4e2b360f216b1b96433479dad28
-- \* [ios] fix bug height change to zero when style change a4d7ebea5e288b753ee71571b149130149768c6b
-- \* [ios] fix bug height change to zero when style change aac7c013003c055e840674e5f61dba4d5073dd73
-- \* [ios] fix bug height change to zero when style change bb8cdb1f2f7ff6ad9b8ac4de23323ca9dea7e0d9
-- \* [ios] fix bug that setFrame incorrectly when transform has been set 84dfd4c7395ae728356b660a0b605c7b85353973
-- \* [ios] fix bug that sticky component's absolutePosition will be computed twice if the actual absolute position is {0,0} a780352d0a1a139ce3e276404d03bd3f9e2e6fd6
-- \* [ios] fix bug: text area cursor auto go to end .reason: if attributes[@"value"] is exist. _updateAttributesOnMainThread will change textview text.the cursor go to end. \* solution: save the  textview  selectedRange , when set textview.text ,correct it d22836ef559809f566068bfe47be960a6d2e9faa
-- \* [ios] fix bug:_updateAttributesOnComponentThread reset styles delete 7c993d1952551ccfad2ad22f01ffa40ea9d12245
-- \* [ios] fix bundlejs 616f4653925c801406ca5fc80fd5f890c45c2b19
-- \* [ios] fix code style 31b08adf525559d9ce46f25eab349584d2f621a9
-- \* [ios] fix compiler complain about warning b92e471c1195f40f8167c8253ea0a909930a9880
-- \* [ios] fix componentRect infomation da08628c562dded860fe1558fb9dc187530223c9
-- \* [ios] fix componentSize to get 41af993f1ffd4e041083a0150607040b9e7cdef2
-- \* [ios] fix crash 55f69b502f0ff1f997dbfbe5238e35a4f123bc5b
-- \* [ios] fix crash on events' copy 491df3dca1fd47c1c564823c7f46527bf064c2dc
-- \* [ios] fix datepicker bug when no value can not pop right picker 24441ad6273e6093a9919b2699a4333b9d7147df
-- \* [ios] fix datepicker complie error 3bf2a0753cf47170144939d42173a668b22e27f5
-- \* [ios] fix datepicker complie error a362ef85918551bacac762ee660300e3108c1c5a
-- \* [ios] fix deprecated method of textarea 4d24f3ff7e792a1c97aa7ee31fbc7f0899c21efb
-- \* [ios] fix failed tests. b5210b244f2f2331be01c9afc4a8cde5b32ed0ee
-- \* [ios] fix input bind each other feb1e7c1ce959491fefed808e46e6291203ccbd7
-- \* [ios] fix ios7 crash f02eff33acab4a58a1a8d6e4d84cef44dcf09bf4
-- \* [ios] fix issue about WXConvert 's UIColor method add193b643c980e310866498dc081130ee287373
-- \* [ios] fix issue that iOS 7 will crash while alert still alive but instance has been destroyed 160a2dae54d6e656c980b9d008b15b0dc28aa4e1
-- \* [ios] fix issue that onappear/ondisappreat not work if binding to cell component. 63f6d7507731d2004e996f99bf859c228fc8b651
-- \* [ios] fix multi keyboard notification 684d3955de263cb39f8afc42c6ffa7340674c81a
-- \* [ios] fix navigator parameter b3117a9c482fb5491b5206413fa7607c356cf95a
-- \* [ios] fix override bundleUrl d7729716aea6652d325e4282ad6b42aaaf14f82c
-- \* [ios] fix playground Podfile   remove c header file  include in WXUtility.h e299feaf4076a5bf7140335ac6cc70d9d99a01da
-- \* [ios] fix responderToSelector target b0f550d6b94da6d9764863b328edfba6d730a75b
-- \* [ios] fix rootComponent order 999c59da3a1dc6c91f036b938c9963cc3cfe87c4
-- \* [ios] fix set navigator callback msg a30b7ed4978de3c91448a1c944431f19e942b515
-- \* [ios] fix single picker but 969d4212967c084a3477e3877052af224354f0e4
-- \* [ios] fix stream jsonp bug b018343b71eb7289bde326acf2f2fe1b124cfad8
-- \* [ios] fix testComponentFactory 99574bf0a1072dbfba547d74545783891b15cdff
-- \* [ios] fix tests compile error 461c24401e5fa1c37f9af25db35665f9f6b4a8da
-- \* [ios] fix text line-height and text-align conflict b1a0673020b7a271fb540ae723ca481aa18db7b4
-- \* [ios] fix textinput component inputEvent fired repetitiously 5c8242776f1410771a357735d6ae2a5b261b7d20
-- \* [ios] fix warning b8464248f61ad3ed9570730608e563f9c73e8ae6
-- \* [ios] fix warnning e2533d036daad60345284f276949dec06b5e0db9
-- \* [ios] fix when options is nil and then  bundleUrl will be nil 5f71a1a2eb7442cf63d9732a6a2b3e2cb3765fa1
-- \* [ios] fix WXSDKInstance rootview bug 3b08a516ff788ca116329dc863ffcb9f66979881
-- \* [ios] texture bug fix : when input change . the text content send to change a38f1b2b8e05e149f09ffbb986268339a9042691
-- \* [jsfm] fix #1447, fix binding event bug of components which have repeat attribute 421cc439d1b8b5abbdbba58882f6c39fd8f862c9
-- \* [jsfm] fix build 8162124f72caf9360657ebc5a2750554d36f3659
-- \* [jsfm] fix condition judgment bug in insertBefore & insertAfter 9c182af615e0e597e21a44217a511126333499e9
-- \* [jsfm] fix eslint c0db1807d080a26c7344f4cc57e5834e98b06085
-- \* [jsfm] fix eslint f75cbe955dc0bcdf33a608af82ab18d3290b87c3
-- \* [jsfm] fix format for lint 5faa860804c1d9adb719a450b53da165ec523e83
-- \* [jsfm] fix the npm run build d3e5124add2dd6a42b1209fe11a8dc58cd536487
-- \* [jsfm] fixed #1818 a757deb7235792c2dd11684500651f717f43226a
-- \* [jsfm] fixed all cases for default framework (black-box) c842ef884e45c568f9ae55e67a066a5de2de15ed
-- \* [jsfm] fixed all test scripts 95ba6a1d6c4211d62d7d2a6693c8aa1e5b7d9607
-- \* [jsfm] fixed all unit test for new file structure d4eb5c97daa34dc53dd929eaf736dcf22e8873b6
-- \* [jsfm] fixed browser render file structure ba7a40bca9a5759101e821c4e043e437b848dcde
-- \* [jsfm] fixed deps error 555ded73f6c6ecb5a9c110f34ab34e596c1c36eb
-- \* [jsfm] fixed html5 render for Vue 980d952d71903545a0bfa7115dfeacd8c7c71ae5
-- \* [jsfm] fixed lint and added case test a3e20a8c78feda705b853f2036cc17bd256f7bb8
-- \* [jsfm] fixed rollup config 4a1c208cf33fb3e5649f8116133f97b003e78127
-- \* [jsfm] fixed runtime instance map management b6e94fa1d54bfdc541ae7c48d98f4dc01481660f
-- \* [jsfm] fixed some vue examples ca2a9c57365a67c9215f69c438c86440a28704ce
-- \* [jsfm] fixed some vue examples da21405b7fab3228bda0e0b2a74853a05c5eb69a
-- \* [jsfm] fixed url checker in vue example 679dc1cffbd0413b9b81624ac46f61473cdf756d
-- \* [jsfm] removed timer bug case and replaced to slot bug case b6f2c8390e3a97df948fc8d2699d15eb62582625
 
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.9.4.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.9.4.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.8.0
 ------
@@ -384,138 +185,7 @@ layout: post
     - Add "select element" function which enable the user to find the exact node in "Elements" inspector Tab when he click the mouse on screencast;  
     - Add "vdom inspector", so user can choose to see the details of native dom or vdom in "Elements" Tab at his preference; 
     - Adjust interfaces with weex SDK to support "callAddElement"; 
-- Bugfix
-  - [jsfm] fix the bug of Dep.target 3448104
-  - [jsfm] fix the test of clearCommonModules 4be9291
-  - [jsfm] fix bug for clear common modules (pr #1097) d2f8c4d
-  - [jsfm] fix callAddElement callback -1 e421b41
-  - [jsfm] fix #1237, fix binding event bug of components which have repeat attribute bfed029
-  - [jsfm] fix bug af99cc1
-  - [jsfm] fixed & closed #1148 4209850
-  - [jsfm] fix merge classStyle fail between nested components 91c5cc6
-  - [jsfm] fix watcher dismatched bug between multi instance 900305d
-  - [jsfm] fixed _Set bug 51b219b
-  - [jsfm] fixed memory management bug in dom event handler in document 9024bda
-  - [jsfm] fixed Promise polyfill problem in iOS 7-8 9a61f33
-  - [android] fix #1380, update method getOffsetAmount in WXCircleViewPager.java (#1382) fd74539
-  - [android] bug fix native crash d8671bd
-  - [android] fix editComponent set non-string value 2e2f032
-  - [android] destroyInstance bugfix 6628460
-  - [android] update fix global event Memory leak fc6d403
-  - [android] add callAddElement debug log 95e3680
-  - [android] bug fix classcast exception e399306
-  - [android] fix circle ci 51d3294
-  - [android] fix slider start auto scroll after activity resume. 89bae89
-  - [android] fix log util implementation 10d508f
-  - [android] fix x86 so file size verification 21d5135
-  - [android] fix build b1fc231
-  - [android] fix log utility 530fe51
-  - [android] NPE bugfix 6d4385f
-  - [android] add cuurentRef to avoid reused bug d836725
-  - [android] bug fix update the ref when cell reused 1f7bf86
-  - [android] bug fix update the ref when cell reused cef277f
-  - [android] fix usertrack modify 8732d70
-  - [android] fix code format 936ebd5
-  - [android] bug fix- Loading layoutY ba0d34e
-  - [android] bug fix - Loading layoutY a8f3c95
-  - [android] bug fix - loading margin 7a3f1e0
-  - [android] fix Deprecated 6aa7da9
-  - [android] fix #1102 (#1103) 5aea5c6
-  - [android] fix merge problem 7923b1e
-  - [android] fix typo 1de6800
-  - [android] fix scroller&list appearance event da1ee4d
-  - [android] fix invaild add dom operation 14b5943
-  - [android] fix build 0d43794
-  - [android] fix build 0520743
-  - [android] fix build 9d596c1
-  - [android] fix list appear&disappear 425c3e1
-  - [android] fix list appear&disappear event 40b52f3
-  - [android] update so for fixing instanceId error 03d0973
-  - [android] fix v8 security problem 06dbc38
-  - [android] bugFix:  List component scrollTo inaccurate 45f0476
-  - [android] fixed #1058 f25238c
-  - [android] fixed #1058 33b4aaf
-  - [android] fix v8 security problem e0b881f
-  - [android] bugFix:  List component scrollTo inaccurate 052aeac
-  - [android] fix comment fd3e0ef
-  - [android] fix indicator default style 57b71fb
-  - [android] fix unit test ee74b5c
-  - [android] fix code style 449bad2
-  - [android] fix list  orientation usage, move component's
-  - [android] fix change/focus confliction b672101
-  - [android] fix change/focus/blur  event confliction c3689e8
-  - [android] fix add dom error a993a84
-  - [android] update the mWXBridge to null when debugmode disable 35005ea
-  - [android] fix invaild add dom operation 7b1ad97
-  - [android] fix moveElement on the same parent dom case 2a94ba2
-  - [android] fix typo 42a2099
-  - [android] fix NPE c2da99e
-  - [ios] fix style line-height conflict with text-align e762637
-  - [ios] fix slider example href 8196792
-  - [ios] fix keyboard cover input sometime 0ad56dc
-  - [ios] fix #1188, support for converting string to NSUInteger. c3f6ea2
-  - [ios] fix issue that fixed-position component's view be reallocated while it is in a cell. d8881c3
-  - [ios] indexDict must be accessed on component thread, fix componentForRef crash 8cc3503
-  - [ios] fix issue that transform-origin not works in rotation transform 5dcab9e
-  - [ios] fix warning f913dab
-  - [ios] fix css node children count invalid while change from or change to fixed position. 81a1dc4
-  - [ios] fix compile error 98a8078
-  - [ios] fix css node children count invalid while change from or change to fixed position. 0b3a2e3
-  - [ios] fix podspec syntax error d0386e6
-  - [ios] ios7 bugfix api 6e7cf07
-  - [ios] try to fix NSMapTable crash in iOS8 a03a4bc
-  - [ios] fix slider-neighbor bc03620
-  - [ios] fix remove Observer crash 46fcbc5
-  - [ios] fix issue that rotate transform not work in styles. 8601304
-  - [ios] fix layer setBackgroundColor crash 5778422
-  - [ios] fix sliderNeighbor 39cb4ea
-  - [ios] fix warning ea8c8f8
-  - [ios] fix warning 4d2528e
-  - [ios] fix warning issue d77fd5d
-  - [ios] fix issue transform does not work while initialized. c36f1bf
-  - [ios] canvas component property error fix 448d4f4
-  - [ios] try to fix textStorage thread-safe issue 0d62716
-  - [ios] fix A component onclick event 01f9706
-  - [ios] fix input disabled attribute bug 533df4f
-  - [ios] fix input disabled attribute bug fd2c526
-  - [ios] fix iconfont src update bug f99906b
-  - [ios] customize debug switch 86346ea
-  - [ios] fix typo ae99b92
-  - [ios] change context name for remove JSContext debugging 75c1e42
-  - [ios] fix input max length bug fe9a013
-  - [ios]add LogLevel control and RemoteDebug control 164abf8
-  - [ios] fix memory leak 00009c0
-  - [ios] fix a bug that re-deleting procedure 717bf3f
-  - [ios] fix storage module in swift f13b72f
-  - [ios] fix highlight problem 93eb282
-  - [html5] fix conflicts with jsfm 0.16 ce63e22
-  - [html5] fix lint 9612daa
-  - [html5] fix class name b224685
-  - [html5] fix img lazyload 3984111
-  - [html5] fix registration of tabheader d38a4c0
-  - [html5] fix bug of null rules of stylesheet in spinner c058f95
-  - [html5] fix top 41c603a
-  - [html5] fix toast a3a4730
-  - [html5] fix lazyload typo 493bee7
-  - [html5] fix lint 43b24da
-  - [html5] fix loadmoreoffset 3c7e262
-  - [html5] fix sticky 9bdf079
-  - [html5] fix lazyload 38ee957
-  - [html5] fix lint 0e94380
-  - [html5] fix flexible a06eb80
-  - [html5] fix jsonp callback error 6db0850
-  - [html5] fix typo 5f61a06
-  - [html5] fix lint 363decd
-  - [html5] fix bug of scroll to c007c86
-    orientation field to scroller 3febd83
-  - [html5] fix dist bug 9d102a5
-  - [html5] fix missing viewport meta. 1cf98e5
 
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.8.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.8.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.7.0
 ------
@@ -538,123 +208,6 @@ layout: post
   - Solve the dependency on Debugger, user could start "Inspector" first or "Debugger" at will
   - Add "refresh" function in sdk, user could inspect new file by scanning its QR code in playground;
   - Android/ios inspect module split from weex sdk,  and will deliver in separate repo in future; support inspect in windows system
-- Bugfix
-  - [android] fix 'fixed' position not work when append tree 6ccfa4f
-  - [android] fix slider set index frzee 6524849
-  - [android] bug fix - setLayout LayoutParams b70f6e2
-  - [android] fix get header:compitable with lower case header key 5ebec75
-  - [android] fix storage module: keep open when module is live c311f15
-  - [android] fix build 0389302
-  - [android] fix jsonp response process 28588c6
-  - [android] fix ViewHolder NPE f9005ab
-  - [android] bug fix ViewHolder NPE 86dd101
-  - [android] fix build b14dd26
-  - [android] fix cell memory leak c03fdc1
-  - [html5] fix e2e test ci 77f14af
-  - [ios] fix type of callback params 2aa8f47
-  - [android] fix sdk init time measurement 3d7cd02
-  - [android] fix sdk init time measurement f4cbfd0
-  - [android] fix sdk init time measurement 8cffa5a
-  - [ios] fix stream fetch response type 9a7c296
-  - [android] forbid except cell、header、fixed、refresh and loading 114860f
-  - [android] fix comment cf53fd3
-  - [android] fix build 82a03fd
-  - [android] WXUtils bugfix 3655d9d
-  - [android] bug fix - setProperty class cast d567f89
-  - [android] fix argument format crash 1baac57
-  - [android] function name fix : hasAppearAndDisappearEvent 1f8b501
-  - [android] fix NPE crash in textarea nad modalModule c3a08ff
-  - [ios] fix bug when url has chinese character. b7e2c2f
-  - [android] update so fix not delRef argument b0db514
-  - [jsfm] fixed repeat bug when update values with new object references 371e58c
-  - [android] fix slider initialization crash. 4c52d33
-  - [android] add a debugger switch, decouple the dept between inspector and debugger dfa71c4
-  - [android] fix bug sticky not show dc3ca4d
-  - [android] fix component register type missed 92a92dc
-  - [android] sticky null child bug fix 541b68b
-  - [android] fix list scroller default height fc0aa58
-  - [android] fix indicator default style 610624c
-  - [android] fix embed page appear event 71a5360
-  - [android] update debug manifest 0541126
-  - [android] update JSF to 0.14.6 fix bind data error 4f7e3c8
-  - [android] fix bug mChild NPE a313b81
-  - [android] fix sticky offsetX 1bae906
-  - [jsfm] fixed updateMark error in compileType 9533431
-  - [jsfm] fixed updateMark error in compileType 5ea0132
-  - [android] Sticky fast fling bug fix 7092c6a
-  - [android] fix view appear event 4bf67e4
-  - [android] fix list scroll to 6355fc6
-  - [ios] fix default debug value 79daf2f
-  - [android] fix list scroll to ad0201b
-  - [ios] fix stat 2d3ab94
-  - [android] refresh the instance when reload called by the debug server 99392db
-  - [android] add a stop method to IWXDebugProxy b06d352
-  - [android] sticky bug fix f9d3265
-  - [android] fix list scrollTo a198b2e
-  - [android] fix scroller getView and getInnerView 4fa0453
-  - [android] refresh the instance when reload called by the debug server fd2be06
-  - [android] add a stop method to IWXDebugProxy 5789700
-  - [android] refresh the instance when reload called by the debug server 5ddf782
-  - [android] add a stop method to IWXDebugProxy 79cd97b
-  - [ios] fix modal bug about message is number d0cdaf9
-  - [html5] fix fire event 978c454
-  - [android] bug fix event lost f9c4357
-  - [android] add debug log cae86fa
-  - [html5] fix typo b84a1b3
-  - [html5] fix lint 8e905dc
-  - [android] fix bug - setLayout 0b5082f
-  - [jsfm] fixed native param format of setTimeout in app.differ a9f101e
-  - [ios] cancel AppDelegate.m debug annotation 03abcf8
-  - [android] fix bug - scroller height error 7458441
-  - [ios] support weex-devtool and weex --debugger 714c924
-  - [ios] resume original logger debug feature a144699
-  - [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
-  - [android] fix input restore init value when batch 3a54da2
-  - [android] fix build 8450473
-  - [android] fix switch fireevent with domchange b6c2d31
-  - [android]  fix input change event 58563b5
-  - [jsfm] fixed repeat binding da9f40d
-  - [html5] fix typo 09bcdb3
-  - [ios] bug fix: slider is embed in list cell d56c7ec
-  - [ios] fix typo for wrong quote in Podfile ab8a83b
-  - [html5] fix loadmore offset of list 69ed65a
-  - [android] fix model callback data from string to json 3aed566
-  - [android] use diff vars flag the remote debug 5e976fc
-  - [html5] fix typo b8eec69
-  - [android] fix bug - refresh not compatible MI2 c814cd9
-  - [android] fix problem that session is null and init framework failed b985d59
-  - [ios] fix element cssstyle selected bug 41450a9
-  - [ios] fix crash from cssstyle e079e5c
-  - [android] update the debug init sequence to make sure the handshake well 28741da
-  - [android] fix example file name fc7862c
-  - [android] update debug switch f9369bb
-  - [android] reuse image adapter for avoid Fresco bug 62dc67c
-  - [android] add debug proxy, adapt to the weex-debugger d93f9e5
-  - [android] fix NPE in stream f5f8a4d
-  - [android] fix getScreenWidth npe e264f2a
-  - [android] fix register order 5c8a264
-  - [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
-  - [ios] fix data type d815e2a
-  - [ios] update debug tool 3d82054
-  - [ios] fix input component width calculation ba9a3b7
-  - [ios] fix notes about WXComponent+ViewManagement d31e8b6
-  - [android] fix list component addsubview error 69c3286
-  - [ios] fix inverted-logic 773bea7
-  - [android] fix crash when list append tree 686e450
-  - [ios] fix playground scan qr code bug 28f7de2
-  - [android] fix bug - Scroll getView 647a927
-  - [android] fix bug - delete </merge> 77680f1
-  - [android] fix bug - nested scroll ac50cd2
-  - [android] fix onTouchEvent bug 911e569
-  - [ios] fix thread safe method indexOfObject in array 1623165
-  - [ios] remove the timing of network debug 5b00fe5
-  - [ios] fix warning e1d496c
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.7.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.7.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.6.1
 ------
@@ -681,136 +234,6 @@ layout: post
      
      <img src="https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png" width="600">
 
-Bugfix
-- [android] fix view appear event 4bf67e4
-- [android] fix list scroll to 6355fc6
-- [ios] fix default debug value 79daf2f
-- [android] fix list scroll to ad0201b
-- [android] fix build 5d1286c
-- [android] bug fix 6a1788e
-- [ios] fix stat 2d3ab94
-- [android] bug fix 60073af
-- [android] refresh the instance when reload called by the debug server 99392db
-- [android] add a stop method to IWXDebugProxy b06d352
-- [android] sticky bug fix f9d3265
-- [android] fix build 62ee68a
-- [android] fix list scrollTo a198b2e
-- [android] fix scroller getView and getInnerView 4fa0453
-- [android] refresh the instance when reload called by the debug server fd2be06
-- [android] add a stop method to IWXDebugProxy 5789700
-- [android] bug fix 7a83ddc
-- [android] refresh the instance when reload called by the debug server 5ddf782
-- [android] add a stop method to IWXDebugProxy 79cd97b
-- [html5] fix fire event 978c454
-- [android] bug fix event lost f9c4357
-- [android] add debug log cae86fa
-- [html5] fix typo b84a1b3
-- [html5] fix lint 8e905dc
-- [android] fix bug - setLayout 0b5082f
-- [jsfm] fixed native param format of setTimeout in app.differ a9f101e
-- [ios] cancel AppDelegate.m debug annotation 03abcf8
-- [android] fix bug - scroller height error 7458441
-- [ios] support weex-devtool and weex --debugger 714c924
-- [ios] resume original logger debug feature a144699
-- [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
-- [android] fix input restore init value when batch 3a54da2
-- [android] fix build 8450473
-- [android] fix switch fireevent with domchange b6c2d31
-- [android]  fix input change event 58563b5
-- [jsfm] fixed repeat binding da9f40d
-- [html5] fix typo 09bcdb3
-- [ios] bug fix: slider is embed in list cell d56c7ec
-- [ios] fix typo for wrong quote in Podfile ab8a83b
-- [html5] fix loadmore offset of list 69ed65a
-- [android] fix build 0f39533
-- [android] fix model callback data from string to json 3aed566
-- [android] use diff vars flag the remote debug 5e976fc
-- [html5] fix typo b8eec69
-- [html5] fix ignore de5837a
-- [android] fix bug - refresh not compatible MI2 c814cd9
-- [android] fix problem that session is null and init framework failed b985d59
-- [ios] fix element cssstyle selected bug 41450a9
-- [ios] fix crash from cssstyle e079e5c
-- [android] update the debug init sequence to make sure the handshake well 28741da
-- [android] fix example file name fc7862c
-- [ios] fix #567 3be6561
-- [android] update debug switch f9369bb
-- [android] reuse image adapter for avoid Fresco bug 62dc67c
-- [android] add debug proxy, adapt to the weex-debugger d93f9e5
-- [android] fix ut bug 85c5cae
-- [android] fix NPE in stream f5f8a4d
-- [android] fix getScreenWidth npe e264f2a
-- [android] fix register order 5c8a264
-- [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
-- [ios] fix data type d815e2a
-- [ios] update debug tool 3d82054
-- [ios] fix input component width calculation ba9a3b7
-- [ios] fix notes about WXComponent+ViewManagement d31e8b6
-- [android] fix list component addsubview error 69c3286
-- [ios] fix inverted-logic 773bea7
-- [android] fix crash when list append tree 686e450
-- [ios] fix playground scan qr code bug 28f7de2
-- [android] fix bug - Scroll getView 647a927
-- [android] fix bug - delete </merge> 77680f1
-- [android] fix bug - nested scroll ac50cd2
-- [android] fix onTouchEvent bug 911e569
-- [ios]fix thread safe method indexOfObject in array 1623165
-- [ios] remove the timing of network debug 5b00fe5
-- [ios] fix warning e1d496c
-- [ios] remove unnecessary removeFromSuperView from unload method and fix async unload view issue in list. b6c3a62
-- [android] fix unit test 4dda4ac
-- [android] update power info and debug protocol, mark stable 3323776
-- [ios] fix indicator style  abnormal when update 7dcb54b
-- [ios] fix list delete issue 579b720
-- [ios] fix indicator item size abnormal e3cd91b
-- [android] bufix NPE 904146e
-- [android] fix  multithreading exception b1c2af1
-- [android] update debug info 7a82747
-- [android] fit bug - indicator error 673b7b6
-- [android] fix bug loading-indicator 981728a
-- [android] fix unit test aafec20
-- [android] bugfix  getInstance singleton 397dc39
-- [android] fix WXSwipeRefreshLayout 745705d
-- [ios] fix scan qrcode after back from scan result failed 0b308aa
-- [android] fix unit test 02d8489
-- [android] fix create body NPE 89690f7
-- [android] fix getView()==null crash b0ca974
-- [android] bugfix NPE 93ef1e1
-- [android] bug fix NPE when instance destroy e7aad12
-- [android] NPE bugfix 9f15552
-- [android] NPE bug fix when recycleImage 4edecef
-- [android] bugfix layout can not be reset for list b19c0a1
-- [android] add DebugAdapter f10cf9c
-- [android] fix text layout unexpect quit when text is zero-length content 9320623
-- [android] fix spell error 23c5440
-- [android] update debug 567e9e0
-- [android] fix list remove cell crash bug 84844f9
-- [android] fix unit test be636fb
-- [android] update debug tool 8d9cad9
-- [android] bug fix remove fixed node f867bd1
-- [android] update debug tool 5b75507
-- [android] fix unit test 40b10de
-- [android] update debug.move some code from WXPrettyFish to WXDebugTool c70927b
-- [android] update debug 6047c43
-- [android] update debug add class ScalpelFrameLayout d956819
-- [android] fix status badge url 35a491b
-- [android] fix border style 329f128
-- [android] update weex_debug grade wrapper 793c67b
-- [android] fix fetch response data 1503431
-- [android] fix progress callback 1f72495
-- [android] bugfix init sdk b6946ad
-- [android] NPE fix fc9b595
-- [android] update how-to-debug.md playgroup-app.md c61d7b4
-- [android] update debug function 1bcfdd3
-- [android] fix v8 compile potential crash & closed v8  snapshot 6d159a6
-- [android] update debug d7c6d61
-- [android] fix v8 compile potential crash & closed v8  snapshot 67b01a1
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.6.1.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.6.1.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ## v0.5.0
 ------
@@ -830,29 +253,5 @@ Bugfix
    3. [Computed Property](https://github.com/alibaba/weex/blob/dev/doc/syntax/data-binding.md#computed-properties) supports complicated logic in data bindings.
    4. [New Repeat Syntax](https://github.com/alibaba/weex/blob/dev/doc/syntax/display-logic.md#a-extension-of-repeat-syntax) is easy to access the key or value of repeated object.
 
-### Bugfixes
-- [android] fix crash https://github.com/alibaba/weex/commit/4fa27716d82d90c5e16d023c6e55cf65eeb9136b
-- [android] fix #20, android slider indicator edge is not smooth https://github.com/alibaba/weex/commit/5b8f3a7e6d4d547d892223d8abc02ac2084b5a6e
-- [android] fix List https://github.com/alibaba/weex/commit/4acc90a1c8c0a9181d91e2ef984266c39d255cac
-- [android] fix NavBar https://github.com/alibaba/weex/commit/8b4ea4f0c18d4e732749c025ea496c59d19004a5
-- [android] fix position=fixed did not setLayout https://github.com/alibaba/weex/commit/3b9128c2a421243d7c28f64abaebcbffd6a2ec73
-- [jsfm] fix change data when ready https://github.com/alibaba/weex/commit/0a1aa5db40713abb2923a2effb06c28349ac0213
-- [jsfm] fix when the key of trackby is zero https://github.com/alibaba/weex/commit/efa50707efd24cfb775c7e0f467279bbaade1fd6
-- [jsfm] fix append tree https://github.com/alibaba/weex/commit/d3871b308e642fd71c2b7ba630aed0f573079daa
-- [jsfm] fix transformer version https://github.com/alibaba/weex/commit/9f21bccb07869883edc261516272aa5e41933c78
-- [jsfm] fix inline event test https://github.com/alibaba/weex/commit/1ce3212a83c58187a2be0df43eecafababce8ecb
-- [jsfm] fixed transformer 0.3 https://github.com/alibaba/weex/commit/66b647afa08671812a7c5e11b440c23ae18750d9
-- [jsfm] fixed jscs error https://github.com/alibaba/weex/commit/a5067d52e2a1708852ab704a9004f5c35f3451b6
-- [jsfm] hotfixed transformer version bug and fixed a small sample code bug https://github.com/alibaba/weex/commit/48862dc40375bbc8caa30384d45b031440694f3b
-- [jsfm] fix callback https://github.com/alibaba/weex/commit/2f85737c51ebd037a72db1c18daf4a9690c45837
-- [jsfm] fix #1 #12 https://github.com/alibaba/weex/commit/56e6a79c50f1b2fd3c0ecebec000e9a693cb4b92
-- [jsfm] fix undefined for element's depth https://github.com/alibaba/weex/commit/2b7eb9ea82e6552b6e57fddb332dfbbfa3401473
-- [jsfm] fix calling functional data-binding multiply https://github.com/alibaba/weex/commit/dcd9b660912bea69b17622e13fddb80ecb42bc35
-
-### Downloads
-- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.5.0.zip)
-- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.5.0.tar.gz)
-- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
-- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
 
 ------
\ No newline at end of file



[34/40] incubator-weex git commit: * [html5] support updating loading-indicator's color @notdanger.

Posted by so...@apache.org.
* [html5] support updating loading-indicator's color @notdanger.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/40a6f13a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/40a6f13a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/40a6f13a

Branch: refs/heads/0.15-dev
Commit: 40a6f13a7261e8dbb5606e5f92e999abbebcd4df
Parents: 5fdd99f
Author: MrRaindrop <te...@gmail.com>
Authored: Wed Jun 21 16:52:55 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Wed Jun 21 17:26:44 2017 +0800

----------------------------------------------------------------------
 .../components/scrollable/loading-indicator.js  | 138 ++++++++++++++++++-
 html5/render/vue/styles/base.css                |  56 --------
 html5/render/vue/utils/func.js                  |  30 ++++
 html5/render/vue/utils/style.js                 |  33 +++++
 4 files changed, 200 insertions(+), 57 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/40a6f13a/html5/render/vue/components/scrollable/loading-indicator.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/components/scrollable/loading-indicator.js b/html5/render/vue/components/scrollable/loading-indicator.js
index 897d568..d2746a5 100644
--- a/html5/render/vue/components/scrollable/loading-indicator.js
+++ b/html5/render/vue/components/scrollable/loading-indicator.js
@@ -17,6 +17,7 @@
  * under the License.
  */
 import { extractComponentStyle } from '../../core'
+import { getRgb, loopArray } from '../../utils'
 
 const _css = `
 .weex-refresh-indicator,
@@ -49,8 +50,143 @@ const _css = `
   -webkit-animation: weex-spinner 1.1s infinite ease;
           animation: weex-spinner 1.1s infinite ease;
 }
+
+@-webkit-keyframes weex-spinner {
+  0%,
+  100% {
+    box-shadow: 0em -1.3em 0em 0em #ffffff, 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.5), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7);
+  }
+  11.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.7), 0.9em -0.9em 0 0em #ffffff, 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5);
+  }
+  25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.5), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7), 1.25em 0em 0 0em #ffffff, 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  37.5% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5), 1.25em 0em 0 0em rgba(255, 255, 255, 0.7), 0.875em 0.875em 0 0em #ffffff, 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  50% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.5), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.7), 0em 1.25em 0 0em #ffffff, -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  61.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.5), 0em 1.25em 0 0em rgba(255, 255, 255, 0.7), -0.9em 0.9em 0 0em #ffffff, -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  75% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.5), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.7), -1.3em 0em 0 0em #ffffff, -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  87.5% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.5), -1.3em 0em 0 0em rgba(255, 255, 255, 0.7), -0.9em -0.9em 0 0em #ffffff;
+  }
+}
+
+@keyframes weex-spinner {
+  0%,
+  100% {
+    box-shadow: 0em -1.3em 0em 0em #ffffff, 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.5), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7);
+  }
+  11.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.7), 0.9em -0.9em 0 0em #ffffff, 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5);
+  }
+  25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.5), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7), 1.25em 0em 0 0em #ffffff, 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  37.5% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5), 1.25em 0em 0 0em rgba(255, 255, 255, 0.7), 0.875em 0.875em 0 0em #ffffff, 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  50% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.5), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.7), 0em 1.25em 0 0em #ffffff, -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  61.25% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.5), 0em 1.25em 0 0em rgba(255, 255, 255, 0.7), -0.9em 0.9em 0 0em #ffffff, -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  75% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.5), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.7), -1.3em 0em 0 0em #ffffff, -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
+  }
+  87.5% {
+    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.5), -1.3em 0em 0 0em rgba(255, 255, 255, 0.7), -0.9em -0.9em 0 0em #ffffff;
+  }
+}
 `
 
+function getStyleSheet (spinnerVm) {
+  if (spinnerVm._styleSheet) {
+    return
+  }
+  const styleSheets = document.styleSheets
+  const len = styleSheets.length
+  for (let i = 0; i < len; i++) {
+    if (styleSheets[i].ownerNode.id === 'weex-cmp-loading-indicator') {
+      spinnerVm._styleSheet = styleSheets[i]
+      break
+    }
+  }
+}
+
+function setKeyframeColor (spinnerVm, val) {
+  getStyleSheet(spinnerVm)
+  const keyframeRules = computeKeyFrameRules(val)
+  const rules = spinnerVm._styleSheet.rules || spinnerVm._styleSheet.cssRules
+  for (let i = 0, l = rules.length; i < l; i++) {
+    const item = rules.item(i)
+    if ((item.type === CSSRule.KEYFRAMES_RULE
+          || item.type === CSSRule.WEBKIT_KEYFRAMES_RULE)
+        && item.name === 'weex-spinner') {
+      const cssRules = item.cssRules
+      for (let j = 0, m = cssRules.length; j < m; j++) {
+        const keyframe = cssRules[j]
+        if (keyframe.type === CSSRule.KEYFRAME_RULE
+          || keyframe.type === CSSRule.WEBKIT_KEYFRAME_RULE) {
+          keyframe.style.boxShadow = keyframeRules[j]
+        }
+      }
+    }
+  }
+}
+
+function computeKeyFrameRules (rgb) {
+  if (!rgb) {
+    return
+  }
+  const scaleArr = [
+    '0em -1.3em 0em 0em',
+    '0.9em -0.9em 0 0em',
+    '1.25em 0em 0 0em',
+    '0.875em 0.875em 0 0em',
+    '0em 1.25em 0 0em',
+    '-0.9em 0.9em 0 0em',
+    '-1.3em 0em 0 0em',
+    '-0.9em -0.9em 0 0em']
+  const colorArr = [
+    '1',
+    '0.2',
+    '0.2',
+    '0.2',
+    '0.2',
+    '0.2',
+    '0.5',
+    '0.7'].map(function (e) {
+      return 'rgba(' + rgb.r + ',' + rgb.g + ',' + rgb.b + ',' + e + ')'
+    })
+  const rules = []
+  for (let i = 0; i < scaleArr.length; i++) {
+    const tmpColorArr = loopArray(colorArr, i, 'r')
+    rules.push(scaleArr.map(function (scaleStr, i) {
+      return scaleStr + ' ' + tmpColorArr[i]
+    }).join(', '))
+  }
+  return rules
+}
+
+function processStyle (vm) {
+  const style = extractComponentStyle(vm)
+  const color = style.color
+  const rgb = color && getRgb(color)
+  if (!rgb) {
+    return
+  }
+  setKeyframeColor(vm, rgb)
+}
+
 export default {
   render (createElement) {
     this.weexType = 'loading-indicator'
@@ -58,7 +194,7 @@ export default {
     return createElement('mark', {
       attrs: { 'weex-type': 'loading-indicator' },
       staticClass: 'weex-loading-indicator weex-ct',
-      staticStyle: extractComponentStyle(this)
+      staticStyle: processStyle(this)
     })
   },
   _css

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/40a6f13a/html5/render/vue/styles/base.css
----------------------------------------------------------------------
diff --git a/html5/render/vue/styles/base.css b/html5/render/vue/styles/base.css
index 7f59e42..a9a41ff 100644
--- a/html5/render/vue/styles/base.css
+++ b/html5/render/vue/styles/base.css
@@ -148,59 +148,3 @@ body > .weex-waterfall {
   width: 100%;
   overflow: hidden;
 }
-
-@-webkit-keyframes weex-spinner {
-  0%,
-  100% {
-    box-shadow: 0em -1.3em 0em 0em #ffffff, 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.5), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7);
-  }
-  11.25% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.7), 0.9em -0.9em 0 0em #ffffff, 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5);
-  }
-  25% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.5), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7), 1.25em 0em 0 0em #ffffff, 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  37.5% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5), 1.25em 0em 0 0em rgba(255, 255, 255, 0.7), 0.875em 0.875em 0 0em #ffffff, 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  50% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.5), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.7), 0em 1.25em 0 0em #ffffff, -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  61.25% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.5), 0em 1.25em 0 0em rgba(255, 255, 255, 0.7), -0.9em 0.9em 0 0em #ffffff, -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  75% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.5), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.7), -1.3em 0em 0 0em #ffffff, -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  87.5% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.5), -1.3em 0em 0 0em rgba(255, 255, 255, 0.7), -0.9em -0.9em 0 0em #ffffff;
-  }
-}
-
-@keyframes weex-spinner {
-  0%,
-  100% {
-    box-shadow: 0em -1.3em 0em 0em #ffffff, 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.5), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7);
-  }
-  11.25% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.7), 0.9em -0.9em 0 0em #ffffff, 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5);
-  }
-  25% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.5), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.7), 1.25em 0em 0 0em #ffffff, 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  37.5% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.5), 1.25em 0em 0 0em rgba(255, 255, 255, 0.7), 0.875em 0.875em 0 0em #ffffff, 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  50% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.5), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.7), 0em 1.25em 0 0em #ffffff, -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.2), -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  61.25% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.5), 0em 1.25em 0 0em rgba(255, 255, 255, 0.7), -0.9em 0.9em 0 0em #ffffff, -1.3em 0em 0 0em rgba(255, 255, 255, 0.2), -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  75% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.5), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.7), -1.3em 0em 0 0em #ffffff, -0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2);
-  }
-  87.5% {
-    box-shadow: 0em -1.3em 0em 0em rgba(255, 255, 255, 0.2), 0.9em -0.9em 0 0em rgba(255, 255, 255, 0.2), 1.25em 0em 0 0em rgba(255, 255, 255, 0.2), 0.875em 0.875em 0 0em rgba(255, 255, 255, 0.2), 0em 1.25em 0 0em rgba(255, 255, 255, 0.2), -0.9em 0.9em 0 0em rgba(255, 255, 255, 0.5), -1.3em 0em 0 0em rgba(255, 255, 255, 0.7), -0.9em -0.9em 0 0em #ffffff;
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/40a6f13a/html5/render/vue/utils/func.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/utils/func.js b/html5/render/vue/utils/func.js
index 1af34ea..38a0435 100644
--- a/html5/render/vue/utils/func.js
+++ b/html5/render/vue/utils/func.js
@@ -19,6 +19,8 @@
 
 // @flow
 
+import { isArray } from './type'
+
 /**
  * Mix properties into target object.
  * the rightest object's value has the highest priority.
@@ -148,3 +150,31 @@ export function throttle (func: Function, wait: number, callLastTime: boolean) {
     }
   }
 }
+
+// direction: 'l' | 'r', default is 'r'
+// num: how many times to loop, should be a positive integer
+export function loopArray (arr: any, num: number, direction: string) {
+  if (!isArray(arr)) {
+    return
+  }
+  let isLeft = (direction + '').toLowerCase() === 'l'
+  const len = arr.length
+  num = num % len
+  if (num < 0) {
+    num = -num
+    isLeft = !isLeft
+  }
+  if (num === 0) {
+    return arr
+  }
+  let lp, rp
+  if (isLeft) {
+    lp = arr.slice(0, num)
+    rp = arr.slice(num)
+  }
+  else {
+    lp = arr.slice(0, len - num)
+    rp = arr.slice(len - num)
+  }
+  return rp.concat(lp)
+}

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/40a6f13a/html5/render/vue/utils/style.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/utils/style.js b/html5/render/vue/utils/style.js
index bb12934..5df3750 100644
--- a/html5/render/vue/utils/style.js
+++ b/html5/render/vue/utils/style.js
@@ -254,3 +254,36 @@ export function copyTransform (from: HTMLElement, to: HTMLElement, key: string |
   to.style.webkitTransform = str
   to.style.transform = str
 }
+
+/**
+ * get color's r, g, b value.
+ * @param {string} color support all kinds of value of color.
+ */
+export function getRgb (color: string) {
+  const haxReg = /#([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})/
+  const rgbReg = /rgb\((\d+),\s*(\d+),\s*(\d+)\)/
+  const span = document.createElement('span')
+  const body = document.body
+  span.style.cssText = `color: ${color}; width: 0px; height: 0px;`
+  body && body.appendChild(span)
+  color = window.getComputedStyle(span).color + ''
+  body && body.removeChild(span)
+
+  let match
+  match = color.match(haxReg)
+  if (match) {
+    return {
+      r: parseInt(match[1], 16),
+      g: parseInt(match[2], 16),
+      b: parseInt(match[3], 16)
+    }
+  }
+  match = color.match(rgbReg)
+  if (match) {
+    return {
+      r: parseInt(match[1]),
+      g: parseInt(match[2]),
+      b: parseInt(match[3])
+    }
+  }
+}


[25/40] incubator-weex git commit: Merge branch 'dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into dev

Posted by so...@apache.org.
Merge branch 'dev' of https://git-wip-us.apache.org/repos/asf/incubator-weex into dev


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/52ad0d7f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/52ad0d7f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/52ad0d7f

Branch: refs/heads/0.15-dev
Commit: 52ad0d7f8116432d404d798ed2feed32fb2d3eef
Parents: 25d52bd 4ef5368
Author: tancy <ro...@gmail.com>
Authored: Tue Jun 20 10:35:09 2017 +0800
Committer: tancy <ro...@gmail.com>
Committed: Tue Jun 20 10:35:09 2017 +0800

----------------------------------------------------------------------
 .travis.yml                                     |  91 ++-
 android/sdk/build.gradle                        |   9 +-
 android/sdk/libs/armeabi/libweexjsc.so          | Bin 7566292 -> 7570392 bytes
 android/sdk/libs/x86/libweexjsc.so              | Bin 4545544 -> 12121924 bytes
 .../ui/component/AbstractEditComponent.java     |  33 +-
 doc/_config_cn.yml                              | 326 +++++++++
 doc/source/cn/releasenote.md                    | 663 ++-----------------
 doc/source/faq.md                               |   4 +-
 doc/source/releasenote.md                       | 663 ++-----------------
 .../Sources/Component/WXCycleSliderComponent.m  |   7 +-
 test/ci-funcs.sh                                |  18 -
 test/screenshot/border-ios.png                  | Bin 128206 -> 126185 bytes
 12 files changed, 500 insertions(+), 1314 deletions(-)
----------------------------------------------------------------------



[33/40] incubator-weex git commit: * [html5] update fetching style map in every instance initiation.

Posted by so...@apache.org.
* [html5] update fetching style map in every instance initiation.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5fdd99ff
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5fdd99ff
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5fdd99ff

Branch: refs/heads/0.15-dev
Commit: 5fdd99ff830b0b65f4b5abe9a7460d4467f82914
Parents: b6c9d0e
Author: MrRaindrop <te...@gmail.com>
Authored: Wed Jun 21 12:13:50 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Wed Jun 21 12:13:50 2017 +0800

----------------------------------------------------------------------
 html5/render/vue/components/index.js |  4 ++--
 html5/render/vue/mixins/style.js     | 11 ++++++++---
 2 files changed, 10 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5fdd99ff/html5/render/vue/components/index.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/components/index.js b/html5/render/vue/components/index.js
index 68c5739..87ddeb0 100644
--- a/html5/render/vue/components/index.js
+++ b/html5/render/vue/components/index.js
@@ -35,7 +35,7 @@ import indicator from './slider/indicator'
 // import loading from './warning'
 import refresh from './scrollable/refresh'
 import loading from './scrollable/loading'
-import LoadingIndicator from './scrollable/loading-indicator'
+import loadingIndicator from './scrollable/loading-indicator'
 import text from './text'
 import textarea from './textarea'
 import video from './video'
@@ -60,7 +60,7 @@ export default {
   indicator,
   refresh,
   loading,
-  LoadingIndicator,
+  'loading-indicator': loadingIndicator,
   text,
   textarea,
   video,

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5fdd99ff/html5/render/vue/mixins/style.js
----------------------------------------------------------------------
diff --git a/html5/render/vue/mixins/style.js b/html5/render/vue/mixins/style.js
index 6fe9bb2..394c1ab 100644
--- a/html5/render/vue/mixins/style.js
+++ b/html5/render/vue/mixins/style.js
@@ -24,7 +24,8 @@ import {
 
 import {
   normalizeStyle,
-  camelizeKeys
+  camelizeKeys,
+  extend
 } from '../utils'
 
 export default {
@@ -34,8 +35,12 @@ export default {
      * Weex.on will create a Vue instance. In this case we'll ignore it, since
      * it's not sure whether the scoped style has already attached to head or not.
      */
-    if (!weex.styleMap && this.$options && this.$options._scopeId) {
-      weex.styleMap = getHeadStyleMap()
+    if (this === this.$root && this.$options && !this._styleMapGot) {
+      if (!weex.styleMap) {
+        weex.styleMap = {}
+      }
+      this._styleMapGot = true
+      extend(weex.styleMap, getHeadStyleMap())
     }
   },
 


[28/40] incubator-weex git commit: * [doc] update config ignore releasenote.html

Posted by so...@apache.org.
* [doc] update config ignore releasenote.html


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/1493f33c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1493f33c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1493f33c

Branch: refs/heads/0.15-dev
Commit: 1493f33cfc3d9d874defa0a9bc306e1c3bf5c707
Parents: 52ad0d7
Author: tancy <ro...@gmail.com>
Authored: Tue Jun 20 18:47:14 2017 +0800
Committer: tancy <ro...@gmail.com>
Committed: Tue Jun 20 18:47:14 2017 +0800

----------------------------------------------------------------------
 doc/_config.yml    | 1 +
 doc/_config_cn.yml | 1 +
 2 files changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1493f33c/doc/_config.yml
----------------------------------------------------------------------
diff --git a/doc/_config.yml b/doc/_config.yml
index 22a35f7..efbfd22 100644
--- a/doc/_config.yml
+++ b/doc/_config.yml
@@ -24,6 +24,7 @@ jsonContent:
   ignore:
     - index.html
     - faq.html
+    - releasenote.html
     - download.html
     - playground.html
     - cn/index.html

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1493f33c/doc/_config_cn.yml
----------------------------------------------------------------------
diff --git a/doc/_config_cn.yml b/doc/_config_cn.yml
index 910d08d..f171f97 100644
--- a/doc/_config_cn.yml
+++ b/doc/_config_cn.yml
@@ -24,6 +24,7 @@ jsonContent:
   ignore:
     - index.html
     - faq.html
+    - releasenote.html
     - download.html
     - playground.html
     - cn/index.html


[05/40] incubator-weex git commit: * [doc] update webkit version.

Posted by so...@apache.org.
* [doc] update webkit version.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/160dba80
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/160dba80
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/160dba80

Branch: refs/heads/0.15-dev
Commit: 160dba80c8ebd1dcd34e87dcdd5109371e70f524
Parents: dd98aa8
Author: MrRaindrop <te...@gmail.com>
Authored: Tue Jun 6 12:49:37 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Tue Jun 6 12:49:37 2017 +0800

----------------------------------------------------------------------
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/160dba80/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 839206c..af1ed27 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@ HTML5[![npm version](https://badge.fury.io/js/weex-html5.svg)](https://www.npmjs
 
 [![CircleCI](https://circleci.com/gh/alibaba/weex/tree/dev.svg?style=svg&circle-token=b83b047a3a01f6ec26458a455530a5ddc261925f)](https://circleci.com/gh/alibaba/weex/tree/dev)
 
-Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+.
+Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+ (android 4.0.1+, ios 6.0+).
 
 ## For Windows
 


[23/40] incubator-weex git commit: reword pieces of 'Getting Started' in using-vue.md

Posted by so...@apache.org.
reword pieces of 'Getting Started' in using-vue.md

This is optional. I noticed some awkward wording, and tried to reword some of it to make more sense. Feel free to reject, if anyone disagrees.

Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/25d52bdf
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/25d52bdf
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/25d52bdf

Branch: refs/heads/0.15-dev
Commit: 25d52bdf2934751cc8298de2ff398eb3b559210a
Parents: db8842e
Author: Jake Swanson <ja...@gmail.com>
Authored: Sun Jun 18 13:47:48 2017 -0400
Committer: GitHub <no...@github.com>
Committed: Sun Jun 18 13:47:48 2017 -0400

----------------------------------------------------------------------
 doc/source/guide/intro/using-vue.md | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/25d52bdf/doc/source/guide/intro/using-vue.md
----------------------------------------------------------------------
diff --git a/doc/source/guide/intro/using-vue.md b/doc/source/guide/intro/using-vue.md
index 9d981ee..56c1ca4 100644
--- a/doc/source/guide/intro/using-vue.md
+++ b/doc/source/guide/intro/using-vue.md
@@ -9,13 +9,13 @@ version: 2.1
 
 ## Vue in Weex
 
-[Vue.js](https://vuejs.org/) is an excellent progressive JavaScript framework written by [Evan You](https://twitter.com/youyuxi) which is very ease and flexible to use. Developers can write `*.vue` files with friendly `<template>`, `<style>`, `<script>` tags to build componentized web app.
+[Vue.js](https://vuejs.org/) is an excellent progressive JavaScript framework written by [Evan You](https://twitter.com/youyuxi) which is very easy and flexible to use. Developers can write `*.vue` files with friendly `<template>`, `<style>`, `<script>` tags to build componentized web apps.
 
 ![a vue file](//cn.vuejs.org/images/vue-component.png)
 
-In Oct 2016 Vue.js has launched 2.0. It brings virtual-DOM and pre-compiler for HTML template. So it makes Vue.js possible to run in JS-only environment without HTML / CSS parser. And also the virtual-DOM layer makes Vue 2.x possible to render native UI through JavaScript.
+In Oct 2016 Vue.js launched 2.0, which includes the virtual-DOM and pre-compiler for HTML templates. This means Vue.js can run in a JS-only environment without HTML / CSS parsers. The virtual-DOM layer also makes Vue 2.x able to render native UIs through JavaScript.
 
-Now Weex and Vue has supported each other officially. Weex put Vue 2.x as its built-in JS Framework, and Vue has already been able to develop native mobile app.
+Weex and Vue now support each other officially. Now that Weex includes Vue 2.x as its built-in JS Framework, Vue can be used to develop native mobile apps.
 
 **Links**
 


[06/40] incubator-weex git commit: * [doc] fix capital.

Posted by so...@apache.org.
* [doc] fix capital.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/7e73a085
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/7e73a085
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/7e73a085

Branch: refs/heads/0.15-dev
Commit: 7e73a085532731fb283abcff300e76c81c2e5cf4
Parents: 160dba8
Author: MrRaindrop <te...@gmail.com>
Authored: Tue Jun 6 12:51:29 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Tue Jun 6 12:51:29 2017 +0800

----------------------------------------------------------------------
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7e73a085/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index af1ed27..5c9681f 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@ HTML5[![npm version](https://badge.fury.io/js/weex-html5.svg)](https://www.npmjs
 
 [![CircleCI](https://circleci.com/gh/alibaba/weex/tree/dev.svg?style=svg&circle-token=b83b047a3a01f6ec26458a455530a5ddc261925f)](https://circleci.com/gh/alibaba/weex/tree/dev)
 
-Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+ (android 4.0.1+, ios 6.0+).
+Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+ (Android 4.0.1+, iOS 6.0+).
 
 ## For Windows