Merge remote-tracking branch 'apache/master' into release-0.19-quick-startup
# Conflicts: # android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java # android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/440585ad Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/440585ad Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/440585ad Branch: refs/heads/master Commit: 440585adcfd96fbf7d69206cebd46346545f2950 Parents: ffbf07c 67d3f1d Author: jianbai.gbj <jianbai....@alibaba-inc.com> Authored: Sat Apr 28 15:47:51 2018 +0800 Committer: jianbai.gbj <jianbai....@alibaba-inc.com> Committed: Sat Apr 28 15:47:51 2018 +0800 ---------------------------------------------------------------------- LICENSE | 105 +- POSSIBLE-NOTICES-FOR-BIN-DIST | 20 +- WeexSDK.podspec | 2 +- android/commons/build.gradle | 12 +- .../weex/commons/AbstractWeexActivity.java | 4 - .../commons/adapter/FrescoImageComponent.java | 6 +- .../weex/commons/adapter/ImageAdapter.java | 4 - android/playground/app/build.gradle | 24 +- .../benchmark/BenchmarkActivityTestRule.java | 53 - .../alibaba/weex/benchmark/BenchmarkTest.java | 106 +- .../weex/benchmark/WeexNativeCompareTest.java | 22 +- .../weex/uitest/WeexUiTestCaseTcElementOpt.java | 6 +- .../com/alibaba/weex/BenchmarkActivity.java | 29 +- .../java/com/alibaba/weex/WXApplication.java | 3 - .../java/com/alibaba/weex/WXPageActivity.java | 11 +- .../alibaba/weex/extend/component/RichText.java | 6 +- .../extend/component/WXComponentSyncTest.java | 8 +- .../alibaba/weex/extend/component/WXMask.java | 33 +- .../weex/extend/component/WXParallax.java | 17 +- .../extend/component/dom/WXMaskDomObject.java | 254 - .../weex/extend/module/WXWsonTestModule.java | 1 - .../zxing/client/android/CaptureActivity.java | 289 +- .../android/result/WifiResultHandler.java | 2 +- android/sdk/.gitignore | 3 +- android/sdk/assets/main.js | 2 +- android/sdk/assets/weex-main-jsfm.js | 2 +- android/sdk/assets/weex-rax-api.js | 2 +- android/sdk/build.gradle | 58 +- android/sdk/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 52266 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + android/sdk/libs/armeabi/libweexjsc.so | Bin 276000 -> 0 bytes android/sdk/libs/armeabi/libweexjss.so | Bin 2965608 -> 3758132 bytes android/sdk/libs/x86/libweexjsb.so | Bin android/sdk/libs/x86/libweexjsc.so | Bin 655556 -> 0 bytes android/sdk/libs/x86/libweexjss.so | Bin 8373712 -> 10928784 bytes android/sdk/proguard-rules.pro | 5 +- android/sdk/src/main/AndroidManifest.xml | 5 +- .../main/java/com/taobao/weex/InitConfig.java | 2 +- .../com/taobao/weex/LayoutFinishListener.java | 26 - .../java/com/taobao/weex/RenderContainer.java | 46 +- .../java/com/taobao/weex/WXEnvironment.java | 14 +- .../main/java/com/taobao/weex/WXSDKEngine.java | 206 +- .../java/com/taobao/weex/WXSDKInstance.java | 485 +- .../main/java/com/taobao/weex/WXSDKManager.java | 13 +- .../com/taobao/weex/WeexFrameRateControl.java | 88 + .../taobao/weex/adapter/ClassLoaderAdapter.java | 1 - .../appfram/websocket/WebSocketCloseCodes.java | 2 +- .../com/taobao/weex/base/CalledByNative.java | 22 + .../java/com/taobao/weex/base/FloatUtil.java | 31 + .../taobao/weex/base/SystemMessageHandler.java | 106 + .../java/com/taobao/weex/bridge/JSCallback.java | 2 - .../taobao/weex/bridge/ModuleFactoryImpl.java | 21 +- .../taobao/weex/bridge/NativeInvokeHelper.java | 16 +- .../java/com/taobao/weex/bridge/WXBridge.java | 689 +- .../com/taobao/weex/bridge/WXBridgeManager.java | 1628 ++--- .../java/com/taobao/weex/bridge/WXJSObject.java | 1 - .../com/taobao/weex/bridge/WXJsFunctions.java | 110 + .../com/taobao/weex/bridge/WXModuleManager.java | 35 +- .../taobao/weex/bridge/WXValidateProcessor.java | 4 +- .../java/com/taobao/weex/common/Constants.java | 23 +- .../java/com/taobao/weex/common/IWXBridge.java | 110 +- .../com/taobao/weex/common/IWXDebugProxy.java | 2 +- .../com/taobao/weex/common/IWXJsFunctions.java | 72 + .../java/com/taobao/weex/common/IWXTask.java | 23 - .../com/taobao/weex/common/WXErrorCode.java | 16 +- .../com/taobao/weex/common/WXImageStrategy.java | 8 + .../taobao/weex/common/WXJSExceptionInfo.java | 18 +- .../com/taobao/weex/common/WXPerformance.java | 125 +- .../java/com/taobao/weex/common/WXRequest.java | 8 + .../com/taobao/weex/dom/ApplyStyleConsumer.java | 59 - .../taobao/weex/dom/BasicEditTextDomObject.java | 107 - .../com/taobao/weex/dom/CSSAlignConvert.java | 60 - .../java/com/taobao/weex/dom/CSSConstants.java | 28 + .../weex/dom/CSSFlexDirectionConvert.java | 42 - .../com/taobao/weex/dom/CSSJustifyConvert.java | 42 - .../taobao/weex/dom/CSSPositionTypeConvert.java | 36 - .../java/com/taobao/weex/dom/CSSShorthand.java | 112 + .../com/taobao/weex/dom/CSSWrapConvert.java | 36 - .../java/com/taobao/weex/dom/DOMAction.java | 30 - .../com/taobao/weex/dom/DOMActionContext.java | 71 - .../taobao/weex/dom/DOMActionContextImpl.java | 461 -- .../java/com/taobao/weex/dom/DomContext.java | 30 - .../com/taobao/weex/dom/ImmutableDomObject.java | 63 - .../java/com/taobao/weex/dom/RenderAction.java | 29 - .../taobao/weex/dom/RenderActionContext.java | 32 - .../com/taobao/weex/dom/RenderActionTask.java | 65 - .../java/com/taobao/weex/dom/RenderContext.java | 32 + .../weex/dom/SafePutConcurrentHashMap.java | 51 - .../weex/dom/TextAreaEditTextDomObject.java | 58 - .../main/java/com/taobao/weex/dom/WXAttr.java | 109 +- .../com/taobao/weex/dom/WXCellDomObject.java | 124 - .../java/com/taobao/weex/dom/WXDomHandler.java | 146 - .../java/com/taobao/weex/dom/WXDomManager.java | 237 - .../java/com/taobao/weex/dom/WXDomModule.java | 175 - .../java/com/taobao/weex/dom/WXDomObject.java | 936 --- .../com/taobao/weex/dom/WXDomObjectFactory.java | 58 - .../java/com/taobao/weex/dom/WXDomRegistry.java | 59 - .../java/com/taobao/weex/dom/WXDomTask.java | 34 - .../main/java/com/taobao/weex/dom/WXEvent.java | 6 +- .../com/taobao/weex/dom/WXListDomObject.java | 51 - .../taobao/weex/dom/WXRecyclerDomObject.java | 281 - .../taobao/weex/dom/WXScrollerDomObject.java | 49 - .../main/java/com/taobao/weex/dom/WXStyle.java | 463 +- .../com/taobao/weex/dom/WXSwitchDomObject.java | 58 - .../com/taobao/weex/dom/WXTextDomObject.java | 601 -- .../dom/action/AbstractAddElementAction.java | 182 - .../dom/action/AbstractLayoutFinishAction.java | 52 - .../java/com/taobao/weex/dom/action/Action.java | 26 - .../com/taobao/weex/dom/action/Actions.java | 237 - .../weex/dom/action/AddElementAction.java | 155 - .../taobao/weex/dom/action/AddEventAction.java | 109 - .../taobao/weex/dom/action/AddRuleAction.java | 68 - .../taobao/weex/dom/action/AnimationAction.java | 299 - .../weex/dom/action/CreateBodyAction.java | 144 - .../weex/dom/action/CreateFinishAction.java | 64 - .../weex/dom/action/ExecutableRenderAction.java | 48 - .../weex/dom/action/GetComponentRectAction.java | 116 - .../weex/dom/action/InvokeMethodAction.java | 50 - .../weex/dom/action/ModuleInvocationAction.java | 76 - .../weex/dom/action/MoveElementAction.java | 103 - .../weex/dom/action/RefreshFinishAction.java | 39 - .../weex/dom/action/ReloadPageAction.java | 66 - .../weex/dom/action/RemoveElementAction.java | 109 - .../weex/dom/action/RemoveEventAction.java | 80 - .../weex/dom/action/ScrollToElementAction.java | 67 - .../taobao/weex/dom/action/TraceableAction.java | 83 - .../weex/dom/action/UpdateAttributeAction.java | 83 - .../dom/action/UpdateComponentDataAction.java | 69 - .../weex/dom/action/UpdateFinishAction.java | 46 - .../weex/dom/action/UpdateStyleAction.java | 118 - .../java/com/taobao/weex/dom/flex/CSSAlign.java | 14 - .../com/taobao/weex/dom/flex/CSSConstants.java | 15 - .../com/taobao/weex/dom/flex/CSSDirection.java | 12 - .../taobao/weex/dom/flex/CSSFlexDirection.java | 13 - .../com/taobao/weex/dom/flex/CSSJustify.java | 14 - .../com/taobao/weex/dom/flex/CSSLayout.java | 76 - .../taobao/weex/dom/flex/CSSLayoutContext.java | 18 - .../java/com/taobao/weex/dom/flex/CSSNode.java | 642 -- .../taobao/weex/dom/flex/CSSPositionType.java | 11 - .../java/com/taobao/weex/dom/flex/CSSStyle.java | 123 - .../java/com/taobao/weex/dom/flex/CSSWrap.java | 11 - .../taobao/weex/dom/flex/CachedCSSLayout.java | 18 - .../com/taobao/weex/dom/flex/FloatUtil.java | 18 - .../com/taobao/weex/dom/flex/LayoutEngine.java | 934 --- .../com/taobao/weex/dom/flex/MeasureOutput.java | 15 - .../java/com/taobao/weex/dom/flex/Spacing.java | 237 - .../weex/dom/text/FontBroadcastReceiver.java | 79 - .../weex/dom/transition/WXTransition.java | 317 +- .../com/taobao/weex/el/parse/Operators.java | 17 +- .../java/com/taobao/weex/el/parse/Parser.java | 3 +- .../java/com/taobao/weex/http/WXHttpUtil.java | 8 +- .../com/taobao/weex/http/WXStreamModule.java | 21 +- .../weex/layout/ContentBoxMeasurement.java | 78 + .../com/taobao/weex/layout/MeasureMode.java | 40 + .../com/taobao/weex/layout/MeasureSize.java | 42 + .../measurefunc/TextContentBoxMeasurement.java | 472 ++ .../performance/WXAnalyzerDataTransfer.java | 22 +- .../java/com/taobao/weex/tracing/WXTracing.java | 2 +- .../com/taobao/weex/ui/ComponentCreator.java | 4 +- .../weex/ui/ExternalLoaderComponentHolder.java | 14 +- .../java/com/taobao/weex/ui/IWXRenderTask.java | 26 - .../taobao/weex/ui/RenderActionContextImpl.java | 113 - .../com/taobao/weex/ui/RenderContextImpl.java | 75 + .../taobao/weex/ui/SimpleComponentHolder.java | 26 +- .../com/taobao/weex/ui/WXComponentRegistry.java | 1 + .../com/taobao/weex/ui/WXRenderHandler.java | 24 +- .../com/taobao/weex/ui/WXRenderManager.java | 138 +- .../taobao/weex/ui/action/ActionAddRule.java | 78 + .../weex/ui/action/ActionGetComponentRect.java | 120 + .../weex/ui/action/ActionInvokeMethod.java | 54 + .../taobao/weex/ui/action/ActionReloadPage.java | 49 + .../weex/ui/action/BasicComponentData.java | 265 + .../weex/ui/action/BasicGraphicAction.java | 69 + .../action/GraphicActionAbstractAddElement.java | 94 + .../weex/ui/action/GraphicActionAddElement.java | 115 + .../weex/ui/action/GraphicActionAddEvent.java | 53 + .../weex/ui/action/GraphicActionAnimation.java | 266 + .../weex/ui/action/GraphicActionCreateBody.java | 99 + .../ui/action/GraphicActionCreateFinish.java | 70 + .../weex/ui/action/GraphicActionLayout.java | 51 + .../ui/action/GraphicActionMoveElement.java | 52 + .../ui/action/GraphicActionRefreshFinish.java | 55 + .../ui/action/GraphicActionRemoveElement.java | 56 + .../ui/action/GraphicActionRemoveEvent.java | 49 + .../ui/action/GraphicActionScrollToElement.java | 51 + .../weex/ui/action/GraphicActionUpdateAttr.java | 52 + .../ui/action/GraphicActionUpdateStyle.java | 134 + .../taobao/weex/ui/action/GraphicPosition.java | 66 + .../com/taobao/weex/ui/action/GraphicSize.java | 46 + .../com/taobao/weex/ui/action/IExecutable.java | 25 + .../weex/ui/animation/TransformParser.java | 25 +- .../weex/ui/animation/WXAnimationBean.java | 12 +- .../weex/ui/animation/WXAnimationModule.java | 27 +- .../ui/component/AbstractEditComponent.java | 149 +- .../weex/ui/component/ComponentUtils.java | 125 +- .../com/taobao/weex/ui/component/Textarea.java | 41 +- .../java/com/taobao/weex/ui/component/WXA.java | 25 +- .../taobao/weex/ui/component/WXBaseRefresh.java | 6 +- .../taobao/weex/ui/component/WXComponent.java | 1559 ++--- .../weex/ui/component/WXComponentFactory.java | 37 +- .../weex/ui/component/WXComponentProp.java | 5 +- .../com/taobao/weex/ui/component/WXDiv.java | 25 +- .../com/taobao/weex/ui/component/WXEmbed.java | 64 +- .../com/taobao/weex/ui/component/WXHeader.java | 12 +- .../com/taobao/weex/ui/component/WXImage.java | 237 +- .../taobao/weex/ui/component/WXIndicator.java | 47 +- .../com/taobao/weex/ui/component/WXInput.java | 15 +- .../com/taobao/weex/ui/component/WXLoading.java | 18 +- .../weex/ui/component/WXLoadingIndicator.java | 7 +- .../com/taobao/weex/ui/component/WXRefresh.java | 23 +- .../taobao/weex/ui/component/WXScroller.java | 95 +- .../com/taobao/weex/ui/component/WXSlider.java | 28 +- .../weex/ui/component/WXSliderNeighbor.java | 10 +- .../com/taobao/weex/ui/component/WXSwitch.java | 76 +- .../com/taobao/weex/ui/component/WXText.java | 127 +- .../taobao/weex/ui/component/WXVContainer.java | 199 +- .../com/taobao/weex/ui/component/WXVideo.java | 18 +- .../com/taobao/weex/ui/component/WXWeb.java | 18 +- .../ui/component/basic/WXBasicComponent.java | 215 + .../weex/ui/component/binding/Layouts.java | 135 +- .../weex/ui/component/binding/Statements.java | 74 +- .../component/helper/ScrollStartEndHelper.java | 15 +- .../ui/component/helper/WXTimeInputHelper.java | 70 +- .../ui/component/list/BasicListComponent.java | 305 +- .../ui/component/list/GapItemDecoration.java | 52 +- .../component/list/HorizontalListComponent.java | 6 +- .../ui/component/list/SimpleListComponent.java | 6 +- .../ui/component/list/StickyHeaderHelper.java | 46 +- .../taobao/weex/ui/component/list/WXCell.java | 71 +- .../weex/ui/component/list/WXListComponent.java | 250 +- .../list/template/AsyncCellLoadTask.java | 2 +- .../list/template/CellDataManager.java | 3 +- .../component/list/template/TemplateCache.java | 2 + .../list/template/TemplateStickyHelper.java | 14 +- .../list/template/TemplateViewHolder.java | 32 +- .../list/template/WXRecyclerTemplateList.java | 217 +- .../pesudo/OnActivePseudoListener.java | 26 - .../component/pesudo/OnActivePseudoListner.java | 26 + .../pesudo/TouchActivePseudoListener.java | 12 +- .../weex/ui/config/ConfigComponentHolder.java | 6 +- .../weex/ui/config/ConfigModuleFactory.java | 1 - .../com/taobao/weex/ui/flat/FlatComponent.java | 4 +- .../com/taobao/weex/ui/flat/FlatGUIContext.java | 62 +- .../taobao/weex/ui/flat/WidgetContainer.java | 15 +- .../weex/ui/flat/widget/AndroidViewWidget.java | 14 +- .../taobao/weex/ui/flat/widget/BaseWidget.java | 4 +- .../taobao/weex/ui/flat/widget/TextWidget.java | 1 + .../com/taobao/weex/ui/flat/widget/Widget.java | 10 +- .../taobao/weex/ui/flat/widget/WidgetGroup.java | 4 +- .../com/taobao/weex/ui/module/WXDomModule.java | 161 + .../com/taobao/weex/ui/module/WXMetaModule.java | 10 +- .../taobao/weex/ui/module/WXTimerModule.java | 55 +- .../java/com/taobao/weex/ui/view/IWebView.java | 4 +- .../taobao/weex/ui/view/WXCircleViewPager.java | 4 +- .../com/taobao/weex/ui/view/WXImageView.java | 34 +- .../com/taobao/weex/ui/view/WXScrollView.java | 8 +- .../com/taobao/weex/ui/view/WXSwitchView.java | 35 - .../com/taobao/weex/ui/view/WXTextView.java | 4 +- .../com/taobao/weex/ui/view/WXVideoView.java | 8 +- .../weex/ui/view/border/BorderCorner.java | 207 +- .../weex/ui/view/border/BorderDrawable.java | 332 +- .../taobao/weex/ui/view/border/BorderEdge.java | 82 +- .../taobao/weex/ui/view/border/BorderStyle.java | 23 +- .../taobao/weex/ui/view/border/BorderUtil.java | 53 +- .../view/border/BorderWidthStyleColorType.java | 38 - .../weex/ui/view/border/BottomLeftCorner.java | 77 +- .../weex/ui/view/border/BottomRightCorner.java | 81 +- .../weex/ui/view/border/TopLeftCorner.java | 74 +- .../weex/ui/view/border/TopRightCorner.java | 77 +- .../taobao/weex/ui/view/gesture/WXGesture.java | 39 +- .../ui/view/gesture/WXGestureObservable.java | 4 +- .../ui/view/refresh/core/WXRefreshView.java | 4 +- .../ui/view/refresh/core/WXSwipeLayout.java | 40 +- .../ui/view/refresh/wrapper/BaseBounceView.java | 51 +- .../com/taobao/weex/utils/BoxShadowUtil.java | 22 +- .../com/taobao/weex/utils/FunctionParser.java | 20 +- .../com/taobao/weex/utils/ImageDrawable.java | 10 +- .../taobao/weex/utils/SingleFunctionParser.java | 2 +- .../taobao/weex/utils/StaticLayoutProxy.java | 8 +- .../com/taobao/weex/utils/TypefaceUtil.java | 4 +- .../java/com/taobao/weex/utils/WXDomUtils.java | 64 +- .../com/taobao/weex/utils/WXExceptionUtils.java | 124 +- .../java/com/taobao/weex/utils/WXJsonUtils.java | 37 - .../java/com/taobao/weex/utils/WXLogUtils.java | 66 +- .../taobao/weex/utils/WXReflectionUtils.java | 18 +- .../com/taobao/weex/utils/WXResourceUtils.java | 106 +- .../taobao/weex/utils/WXSoInstallMgrSdk.java | 63 +- .../java/com/taobao/weex/utils/WXUtils.java | 135 +- .../java/com/taobao/weex/utils/WXViewUtils.java | 37 +- .../main/java/com/taobao/weex/wson/Wson.java | 820 --- .../java/com/taobao/weex/WXSDKEngineTest.java | 7 - .../java/com/taobao/weex/WXSDKInstanceTest.java | 1 - .../weex/adapter/DefaultUriAdapterTest.java | 2 +- .../taobao/weex/bridge/WXBridgeManagerTest.java | 10 +- .../com/taobao/weex/bridge/WXBridgeTest.java | 5 +- .../java/com/taobao/weex/dom/TestDomObject.java | 55 - .../com/taobao/weex/dom/WXDomModuleTest.java | 131 - .../com/taobao/weex/dom/WXDomObjectTest.java | 108 - .../com/taobao/weex/dom/WXDomStatementTest.java | 9 +- .../taobao/weex/dom/WXTextDomObjectTest.java | 5 +- .../com/taobao/weex/dom/action/TestActions.java | 77 - .../weex/dom/transition/WXTransitionTest.java | 96 - .../java/com/taobao/weex/el/FailedCaseTest.java | 50 - .../com/taobao/weex/el/IfStatementTest.java | 155 - .../java/com/taobao/weex/el/ParserTest.java | 244 - .../taobao/weex/http/WXStreamModuleTest.java | 15 +- .../com/taobao/weex/ui/ComponentHolderTest.java | 3 - .../taobao/weex/ui/WXRenderStatementTest.java | 4 +- .../weex/ui/animation/TransformParserTest.java | 38 - .../ui/animation/WXAnimationModuleTest.java | 5 +- .../taobao/weex/ui/component/ComponentTest.java | 9 +- .../weex/ui/component/EditComponentTest.java | 1 - .../weex/ui/component/PriorityQueueTest.java | 56 - .../taobao/weex/ui/component/TestComponent.java | 4 - .../weex/ui/component/WXComponentTest.java | 2 +- .../com/taobao/weex/ui/component/WXDivTest.java | 11 +- .../taobao/weex/ui/component/WXEmbedTest.java | 6 +- .../taobao/weex/ui/component/WXHeaderTest.java | 4 - .../taobao/weex/ui/component/WXImageTest.java | 2 - .../taobao/weex/ui/component/WXLoadingTest.java | 3 - .../taobao/weex/ui/component/WXRefreshTest.java | 1 - .../weex/ui/component/WXScrollerTest.java | 5 - .../weex/ui/component/WXSliderNeighborTest.java | 1 - .../taobao/weex/ui/component/WXSliderTest.java | 1 - .../taobao/weex/ui/component/WXSwitchTest.java | 3 - .../taobao/weex/ui/component/WXTextTest.java | 22 +- .../taobao/weex/ui/component/WXVideoTest.java | 4 - .../com/taobao/weex/ui/component/WXWebTest.java | 3 - .../ui/component/binding/BindingValueTest.java | 65 - .../ui/component/binding/StatementTest.java | 186 - .../component/list/DefaultDragHelperTest.java | 3 - .../ui/component/list/WXListComponentTest.java | 5 +- .../weex/ui/module/WXModalUIModuleTest.java | 9 +- .../weex/ui/module/WXTimerModuleTest.java | 45 +- .../weex/ui/view/border/BorderDrawableTest.java | 1 - .../weex/ui/view/gesture/WXGestureTest.java | 5 - .../taobao/weex/utils/WXExceptionUtilsTest.java | 74 - .../com/taobao/weex/utils/WXFileUtilsTest.java | 9 - .../com/taobao/weex/utils/WXLogUtilsTest.java | 17 +- .../weex/utils/WXReflectionUtilsTest.java | 9 - .../java/com/taobao/weex/utils/WXUtilsTest.java | 3 +- .../java/com/taobao/weex/wson/AnnoTest.java | 41 - .../test/java/com/taobao/weex/wson/Person.java | 30 - ios/.gitignore | 2 + .../WeexDemo.xcodeproj/project.pbxproj | 12 +- ios/playground/WeexDemo/AppDelegate.m | 9 + ios/playground/WeexDemo/WXExtModule.m | 7 + ios/playground/WeexDemo/debug/DebugAnalyzer.h | 24 + ios/playground/WeexDemo/debug/DebugAnzlyzer.m | 30 + ios/sdk/WeexSDK.xcodeproj/project.pbxproj | 391 +- ios/sdk/WeexSDK/Sources/Bridge/JSContext+Weex.h | 26 + ios/sdk/WeexSDK/Sources/Bridge/JSContext+Weex.m | 35 + .../WeexSDK/Sources/Bridge/WXBridgeContext.m | 125 +- ios/sdk/WeexSDK/Sources/Bridge/WXJSCoreBridge.m | 2 + .../Component/RecycleList/WXCellSlotComponent.m | 94 - .../RecycleList/WXCellSlotComponent.mm | 117 + .../RecycleList/WXRecycleListComponent.m | 618 -- .../RecycleList/WXRecycleListComponent.mm | 619 ++ .../Component/Recycler/WXRecyclerComponent.m | 738 --- .../Component/Recycler/WXRecyclerComponent.mm | 768 +++ .../WeexSDK/Sources/Component/WXCellComponent.h | 1 + .../WeexSDK/Sources/Component/WXCellComponent.m | 142 - .../Sources/Component/WXCellComponent.mm | 174 + .../Sources/Component/WXComponent_internal.h | 11 +- .../Sources/Component/WXCycleSliderComponent.m | 681 -- .../Sources/Component/WXCycleSliderComponent.mm | 692 ++ .../WeexSDK/Sources/Component/WXEditComponent.m | 918 --- .../Sources/Component/WXEditComponent.mm | 971 +++ .../Sources/Component/WXHeaderComponent.m | 87 - .../Sources/Component/WXHeaderComponent.mm | 110 + .../Sources/Component/WXImageComponent.m | 29 +- .../Sources/Component/WXIndicatorComponent.m | 21 +- .../WeexSDK/Sources/Component/WXListComponent.m | 971 --- .../Sources/Component/WXListComponent.mm | 997 +++ .../Sources/Component/WXLoadingComponent.m | 152 - .../Sources/Component/WXLoadingComponent.mm | 164 + .../Sources/Component/WXRefreshComponent.m | 207 - .../Sources/Component/WXRefreshComponent.mm | 224 + .../Sources/Component/WXScrollerComponent.h | 2 - .../Sources/Component/WXScrollerComponent.m | 873 --- .../Sources/Component/WXScrollerComponent.mm | 951 +++ .../Component/WXSliderNeighborComponent.m | 1803 ------ .../Component/WXSliderNeighborComponent.mm | 1812 ++++++ .../Sources/Component/WXSwitchComponent.m | 151 - .../Sources/Component/WXSwitchComponent.mm | 162 + .../Sources/Component/WXTextAreaComponent.m | 233 - .../Sources/Component/WXTextAreaComponent.mm | 261 + .../WeexSDK/Sources/Component/WXTextComponent.h | 1 + .../WeexSDK/Sources/Component/WXTextComponent.m | 1076 ---- .../Sources/Component/WXTextComponent.mm | 1170 ++++ .../WeexSDK/Sources/Display/UIBezierPath+Weex.m | 6 +- ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m | 2 + ios/sdk/WeexSDK/Sources/Engine/WXSDKError.h | 20 + ios/sdk/WeexSDK/Sources/Engine/WXSDKError.m | 106 + ios/sdk/WeexSDK/Sources/Layout/Layout.c | 2 + .../WeexSDK/Sources/Layout/WXComponent+Layout.h | 60 +- .../WeexSDK/Sources/Layout/WXComponent+Layout.m | 38 +- .../Sources/Layout/WXComponent+Layout.mm | 963 +++ ios/sdk/WeexSDK/Sources/Layout/WXCoreFlexEnum.h | 107 + ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.cpp | 1038 +++ ios/sdk/WeexSDK/Sources/Layout/WXCoreLayout.h | 1073 +++ ios/sdk/WeexSDK/Sources/Layout/WXCoreStyle.cpp | 247 + ios/sdk/WeexSDK/Sources/Layout/WXCoreStyle.h | 285 + ios/sdk/WeexSDK/Sources/Layout/WXLayoutDefine.h | 6 + .../Sources/Layout/WXScrollerComponent+Layout.h | 42 + .../Layout/WXScrollerComponent+Layout.mm | 53 + .../WeexSDK/Sources/Manager/WXBridgeManager.m | 6 + .../Sources/Manager/WXComponentManager.m | 906 --- .../Sources/Manager/WXComponentManager.mm | 1158 ++++ .../WeexSDK/Sources/Manager/WXTracingManager.m | 2 +- ios/sdk/WeexSDK/Sources/Model/WXComponent.h | 13 +- ios/sdk/WeexSDK/Sources/Model/WXComponent.m | 841 --- ios/sdk/WeexSDK/Sources/Model/WXComponent.mm | 953 +++ ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m | 27 +- .../Sources/Model/WXSDKInstance_performance.h | 67 + .../Sources/Model/WXSDKInstance_performance.m | 35 + .../Sources/Model/WXSDKInstance_private.h | 5 + .../WeexSDK/Sources/Module/WXAnimationModule.m | 45 +- ios/sdk/WeexSDK/Sources/Module/WXStreamModule.m | 6 + ios/sdk/WeexSDK/Sources/Module/WXTimerModule.m | 6 + ios/sdk/WeexSDK/Sources/Module/WXTransition.h | 4 +- ios/sdk/WeexSDK/Sources/Module/WXTransition.m | 500 -- ios/sdk/WeexSDK/Sources/Module/WXTransition.mm | 519 ++ .../Sources/Monitor/WXAnalyzerCenter+Transfer.h | 15 + .../WeexSDK/Sources/Monitor/WXAnalyzerCenter.h | 16 + .../WeexSDK/Sources/Monitor/WXAnalyzerCenter.m | 234 + .../WeexSDK/Sources/Monitor/WXExceptionUtils.m | 5 + ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.h | 27 + ios/sdk/WeexSDK/Sources/Monitor/WXMonitor.m | 75 +- .../Sources/Protocol/WXAnalyzerProtocol.h | 25 + .../Sources/Protocol/WXAppMonitorProtocol.h | 19 + ios/sdk/WeexSDK/Sources/Utility/WXConvert.m | 23 + ios/sdk/WeexSDK/Sources/Utility/WXDefine.h | 2 + ios/sdk/WeexSDK/Sources/Utility/WXLog.h | 4 +- ios/sdk/WeexSDK/Sources/Utility/WXUtility.h | 17 +- .../Sources/View/WXComponent+ViewManagement.m | 346 - .../Sources/View/WXComponent+ViewManagement.mm | 347 + ios/sdk/WeexSDK/Sources/View/WXRootView.h | 2 + ios/sdk/WeexSDK/Sources/View/WXRootView.m | 17 + ios/sdk/WeexSDK/Sources/WeexSDK.h | 7 + test/pages/css/border.vue | 9 + weex_core/.clang-format | 2 + weex_core/.gitignore | 5 + weex_core/CMakeLists.txt | 5 + weex_core/Source/CMakeLists.txt | 91 + weex_core/Source/IPC/Buffering/IPCBuffer.h | 13 + weex_core/Source/IPC/CMakeLists.txt | 22 + weex_core/Source/IPC/IPCArguments.h | 30 + weex_core/Source/IPC/IPCByteArray.h | 8 + weex_core/Source/IPC/IPCCheck.cpp | 17 + weex_core/Source/IPC/IPCCheck.h | 16 + weex_core/Source/IPC/IPCCommunicator.cpp | 363 ++ weex_core/Source/IPC/IPCCommunicator.h | 30 + weex_core/Source/IPC/IPCException.cpp | 32 + weex_core/Source/IPC/IPCException.h | 16 + weex_core/Source/IPC/IPCFutexPageQueue.cpp | 191 + weex_core/Source/IPC/IPCFutexPageQueue.h | 48 + weex_core/Source/IPC/IPCHandler.cpp | 36 + weex_core/Source/IPC/IPCHandler.h | 18 + weex_core/Source/IPC/IPCListener.cpp | 60 + weex_core/Source/IPC/IPCListener.h | 14 + weex_core/Source/IPC/IPCLog.h | 12 + weex_core/Source/IPC/IPCMessageJS.h | 41 + weex_core/Source/IPC/IPCResult.cpp | 347 + weex_core/Source/IPC/IPCResult.h | 34 + weex_core/Source/IPC/IPCSender.cpp | 76 + weex_core/Source/IPC/IPCSender.h | 15 + weex_core/Source/IPC/IPCString.h | 7 + weex_core/Source/IPC/IPCType.h | 29 + .../Source/IPC/Serializing/IPCSerializer.cpp | 206 + .../Source/IPC/Serializing/IPCSerializer.h | 26 + weex_core/Source/IPC/ashmem.c | 100 + weex_core/Source/IPC/ashmem.h | 46 + weex_core/Source/IPC/futex.h | 109 + weex_core/Source/__init__.py | 0 weex_core/Source/android/__init__.py | 0 weex_core/Source/android/base/base64/base64.cpp | 33 + weex_core/Source/android/base/base64/base64.h | 9 + .../android/base/base64/modp_base64/modp_b64.cc | 265 + .../android/base/base64/modp_base64/modp_b64.h | 165 + .../base/base64/modp_base64/modp_b64_data.h | 285 + .../Source/android/base/jni/android_jni.cpp | 108 + weex_core/Source/android/base/jni/android_jni.h | 63 + .../Source/android/base/jni/scoped_java_ref.cpp | 75 + .../Source/android/base/jni/scoped_java_ref.h | 122 + weex_core/Source/android/base/log_utils.h | 55 + .../android/base/string/scoped_jstring.cpp | 47 + .../Source/android/base/string/scoped_jstring.h | 45 + .../android/base/string/scoped_jstring_utf8.cpp | 38 + .../android/base/string/scoped_jstring_utf8.h | 49 + .../Source/android/base/string/string_utils.h | 150 + .../android/bridge/impl/bridge_impl_android.cpp | 893 +++ .../android/bridge/impl/bridge_impl_android.h | 124 + .../content_box_measurement_impl_android.cpp | 54 + .../impl/content_box_measurement_impl_android.h | 41 + .../bridge/impl/measure_mode_impl_android.cpp | 36 + .../bridge/impl/measure_mode_impl_android.h | 33 + .../bridge/impl/weexcore_impl_android.cpp | 461 ++ .../android/bridge/impl/weexcore_impl_android.h | 55 + .../Source/android/jniprebuild/__init__.py | 0 .../android/jniprebuild/android_jar.classes | 98 + weex_core/Source/android/jniprebuild/jni_files | 5 + .../Source/android/jniprebuild/jni_generator.py | 1469 +++++ .../Source/android/jniprebuild/jni_load.cc | 24 + .../jniheader/ContentBoxMeasurement_jni.h | 165 + .../jniprebuild/jniheader/MeasureMode_jni.h | 85 + .../jniheader/SystemMessageHandler_jni.h | 132 + .../jniprebuild/jniheader/WXBridge_jni.h | 345 + .../Source/android/jniprebuild/prebuild.sh | 13 + .../jsengine/multiprocess/ExtendJSApi.cpp | 680 ++ .../android/jsengine/multiprocess/ExtendJSApi.h | 105 + .../jsengine/multiprocess/WeexJSConnection.cpp | 429 ++ .../jsengine/multiprocess/WeexJSConnection.h | 43 + .../android/jsengine/multiprocess/WeexProxy.cpp | 708 ++ .../android/jsengine/multiprocess/WeexProxy.h | 94 + weex_core/Source/base/Compatible.cpp | 122 + weex_core/Source/base/CoreConstants.h | 28 + weex_core/Source/base/TimeUtils.h | 30 + weex_core/Source/base/ViewUtils.h | 120 + weex_core/Source/base/fpconv.cpp | 332 + weex_core/Source/base/fpconv.h | 33 + weex_core/Source/base/powers.h | 129 + weex_core/Source/core/bridge/bridge.h | 99 + .../Source/core/config/core_environment.cpp | 81 + weex_core/Source/core/config/core_environment.h | 86 + weex_core/Source/core/css/constants_name.h | 81 + weex_core/Source/core/css/constants_value.h | 63 + weex_core/Source/core/css/css_value_getter.cpp | 106 + weex_core/Source/core/css/css_value_getter.h | 41 + weex_core/Source/core/layout/flex_enum.h | 125 + weex_core/Source/core/layout/layout.cpp | 1052 +++ weex_core/Source/core/layout/layout.h | 1091 ++++ weex_core/Source/core/layout/style.cpp | 265 + weex_core/Source/core/layout/style.h | 303 + .../Source/core/moniter/render_performance.cpp | 50 + .../Source/core/moniter/render_performance.h | 69 + weex_core/Source/core/parser/dom_parser.cpp | 582 ++ weex_core/Source/core/parser/dom_parser.h | 147 + .../Source/core/render/action/render_action.h | 38 + .../render/action/render_action_add_element.cpp | 51 + .../render/action/render_action_add_element.h | 49 + .../render/action/render_action_add_event.cpp | 42 + .../render/action/render_action_add_event.h | 40 + .../render/action/render_action_createbody.cpp | 47 + .../render/action/render_action_createbody.h | 45 + .../action/render_action_createfinish.cpp | 37 + .../render/action/render_action_createfinish.h | 38 + .../core/render/action/render_action_layout.cpp | 51 + .../core/render/action/render_action_layout.h | 49 + .../action/render_action_move_element.cpp | 40 + .../render/action/render_action_move_element.h | 42 + .../action/render_action_remove_element.cpp | 37 + .../action/render_action_remove_element.h | 38 + .../action/render_action_remove_event.cpp | 42 + .../render/action/render_action_remove_event.h | 40 + .../render/action/render_action_update_attr.cpp | 40 + .../render/action/render_action_update_attr.h | 41 + .../action/render_action_update_style.cpp | 47 + .../render/action/render_action_update_style.h | 48 + .../core/render/manager/render_manager.cpp | 214 + .../Source/core/render/manager/render_manager.h | 91 + .../core/render/node/factory/i_render_factory.h | 31 + .../core/render/node/factory/i_render_object.h | 60 + .../render/node/factory/render_appbar_factory.h | 36 + .../render/node/factory/render_cell_factory.h | 35 + .../core/render/node/factory/render_creator.cpp | 71 + .../core/render/node/factory/render_creator.h | 63 + .../node/factory/render_indicator_factory.h | 36 + .../render/node/factory/render_input_factory.h | 36 + .../render/node/factory/render_list_factory.h | 36 + .../render/node/factory/render_mask_factory.h | 36 + .../node/factory/render_scroller_factory.h | 36 + .../render/node/factory/render_switch_factory.h | 36 + .../render/node/factory/render_text_factory.h | 36 + .../node/factory/render_textarea_factory.h | 36 + .../core/render/node/factory/render_type.h | 41 + .../render/node/factory/simple_render_factory.h | 37 + .../Source/core/render/node/render_appbar.h | 86 + weex_core/Source/core/render/node/render_cell.h | 30 + .../Source/core/render/node/render_indicator.h | 30 + .../Source/core/render/node/render_input.h | 30 + weex_core/Source/core/render/node/render_list.h | 235 + weex_core/Source/core/render/node/render_mask.h | 55 + .../Source/core/render/node/render_object.cpp | 157 + .../Source/core/render/node/render_object.h | 412 ++ .../Source/core/render/node/render_scroller.h | 65 + .../Source/core/render/node/render_switch.h | 30 + weex_core/Source/core/render/node/render_text.h | 44 + .../Source/core/render/node/render_textarea.h | 30 + .../Source/core/render/page/render_page.cpp | 649 ++ weex_core/Source/core/render/page/render_page.h | 198 + weex_core/Source/rapidjson/allocators.h | 271 + weex_core/Source/rapidjson/document.h | 2618 ++++++++ weex_core/Source/rapidjson/encodedstream.h | 299 + weex_core/Source/rapidjson/encodings.h | 716 +++ weex_core/Source/rapidjson/error/en.h | 74 + weex_core/Source/rapidjson/error/error.h | 161 + weex_core/Source/rapidjson/filereadstream.h | 99 + weex_core/Source/rapidjson/filewritestream.h | 104 + weex_core/Source/rapidjson/fwd.h | 151 + .../Source/rapidjson/internal/biginteger.h | 290 + weex_core/Source/rapidjson/internal/diyfp.h | 258 + weex_core/Source/rapidjson/internal/dtoa.h | 245 + weex_core/Source/rapidjson/internal/ieee754.h | 78 + weex_core/Source/rapidjson/internal/itoa.h | 304 + weex_core/Source/rapidjson/internal/meta.h | 181 + weex_core/Source/rapidjson/internal/pow10.h | 55 + weex_core/Source/rapidjson/internal/regex.h | 734 +++ weex_core/Source/rapidjson/internal/stack.h | 231 + weex_core/Source/rapidjson/internal/strfunc.h | 69 + weex_core/Source/rapidjson/internal/strtod.h | 269 + weex_core/Source/rapidjson/internal/swap.h | 46 + weex_core/Source/rapidjson/istreamwrapper.h | 115 + weex_core/Source/rapidjson/memorybuffer.h | 70 + weex_core/Source/rapidjson/memorystream.h | 71 + .../Source/rapidjson/msinttypes/inttypes.h | 316 + weex_core/Source/rapidjson/msinttypes/stdint.h | 300 + weex_core/Source/rapidjson/ostreamwrapper.h | 81 + weex_core/Source/rapidjson/pointer.h | 1358 ++++ weex_core/Source/rapidjson/prettywriter.h | 277 + weex_core/Source/rapidjson/rapidjson.h | 628 ++ weex_core/Source/rapidjson/reader.h | 2221 +++++++ weex_core/Source/rapidjson/schema.h | 2026 ++++++ weex_core/Source/rapidjson/stream.h | 179 + weex_core/Source/rapidjson/stringbuffer.h | 121 + weex_core/Source/rapidjson/writer.h | 711 ++ weex_core/Source/weexjsc_version_script.txt | 4 + weex_core/__init__.py | 0 weex_core/tools/cpplint.py | 6086 ++++++++++++++++++ 629 files changed, 67617 insertions(+), 29282 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/440585ad/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/440585ad/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java ---------------------------------------------------------------------- diff --cc android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java index c3a0826,1a288ee..a297113 --- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java +++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java @@@ -2302,10 -1841,10 +1853,10 @@@ public class WXBridgeManager implement */ public void registerComponents(final List<Map<String, Object>> components) { if (mJSHandler == null || components == null - || components.size() == 0) { + || components.size() == 0) { return; } - post(new Runnable() { + Runnable runnable = new Runnable() { @Override public void run() { invokeRegisterComponents(components, mRegisterComponentFailList); @@@ -2377,16 -1910,16 +1928,16 @@@ WXModuleManager.resetModuleState(module, true); WXLogUtils.e("[WXBridgeManager]invokeRegisterModules METHOD_REGISTER_MODULES success module:" + module); } - } } catch (Throwable e) { + WXLogUtils.e("Weex [invokeRegisterModules]", e); } } catch (Throwable e) { - WXExceptionUtils.commitCriticalExceptionRT(null, - WXErrorCode.WX_KEY_EXCEPTION_INVOKE_REGISTER_MODULES, - "invokeRegisterModules", WXErrorCode.WX_KEY_EXCEPTION_INVOKE_REGISTER_MODULES.getErrorMsg() + - " \n " + e.getMessage() + modules.entrySet().toString(), - null ); + WXExceptionUtils.commitCriticalExceptionRT(null, + WXErrorCode.WX_KEY_EXCEPTION_INVOKE_REGISTER_MODULES, + "invokeRegisterModules", WXErrorCode.WX_KEY_EXCEPTION_INVOKE_REGISTER_MODULES.getErrorMsg() + + " \n " + e.getMessage() + modules.entrySet().toString(), + null ); WXLogUtils.e("[WXBridgeManager] invokeRegisterModules:", e); } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/440585ad/android/sdk/src/main/java/com/taobao/weex/ui/ExternalLoaderComponentHolder.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/440585ad/android/sdk/src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/440585ad/android/sdk/src/main/java/com/taobao/weex/ui/WXComponentRegistry.java ----------------------------------------------------------------------