[GitHub] incubator-weex pull request #1057: *[android] support direction attr on styl...
Github user misakuo closed the pull request at: https://github.com/apache/incubator-weex/pull/1057 ---
[3/3] incubator-weex git commit: Merge remote-tracking branch 'apache/master' into release-0.19-quick-startup
Merge remote-tracking branch 'apache/master' into release-0.19-quick-startup Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/cf531a16 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/cf531a16 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/cf531a16 Branch: refs/heads/master Commit: cf531a16735ce14055243cbe01c17c81a0835400 Parents: 440585a 3366d33 Author: jianbai.gbjAuthored: Thu May 3 12:21:55 2018 +0800 Committer: jianbai.gbj Committed: Thu May 3 12:21:55 2018 +0800 -- .../com/taobao/weex/ui/component/WXImage.java | 2 +- .../taobao/weex/ui/component/WXVContainer.java | 17 -- .../weex/ui/component/binding/Statements.java | 1 + .../Sources/Component/WXScrollerComponent.mm| 35 4 files changed, 44 insertions(+), 11 deletions(-) --
[2/3] incubator-weex git commit: Merge remote-tracking branch 'apache/master' into release-0.19-quick-startup
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.gbjAuthored: Sat Apr 28 15:47:51 2018 +0800 Committer: jianbai.gbj 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 66 -> 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 +-
[1/3] incubator-weex git commit: [WEEX-281][android] Auto Startup Time Quick
Repository: incubator-weex Updated Branches: refs/heads/master 3366d33bc -> cf531a167 [WEEX-281][android] Auto Startup Time Quick Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/ffbf07c6 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/ffbf07c6 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/ffbf07c6 Branch: refs/heads/master Commit: ffbf07c6e1e08fdfb9c5b81c2a520883077650b1 Parents: ea2e12f Author: jianbai.gbjAuthored: Tue Apr 17 11:58:10 2018 +0800 Committer: jianbai.gbj Committed: Sat Apr 28 15:37:45 2018 +0800 -- .../java/com/taobao/weex/WXEnvironment.java | 5 .../com/taobao/weex/bridge/WXBridgeManager.java | 24 +++--- .../com/taobao/weex/bridge/WXModuleManager.java | 3 ++- .../weex/ui/ExternalLoaderComponentHolder.java | 2 +- .../taobao/weex/ui/SimpleComponentHolder.java | 2 +- .../com/taobao/weex/ui/WXComponentRegistry.java | 4 +++ .../taobao/weex/ui/component/WXComponent.java | 8 -- .../weex/ui/config/AutoScanConfigRegister.java | 26 8 files changed, 66 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ffbf07c6/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java b/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java index 96ca990..8903a15 100644 --- a/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java +++ b/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java @@ -84,6 +84,11 @@ public class WXEnvironment { /** from init to sdk-ready **/ public static long sSDKInitTime =0; + /** + * component and modules ready + * */ + public static long sComponentsAndModulesReadyTime = 0; + public static LogLevel sLogLevel = LogLevel.DEBUG; private static boolean isApkDebug = true; public static boolean isPerf = false; http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ffbf07c6/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java index f931ccf..c3a0826 100644 --- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java +++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java @@ -2115,6 +2115,7 @@ public void invokeDestoryInstance(String instanceId, String namespace, String fu execRegisterFailTask(); WXEnvironment.JsFrameworkInit = true; registerDomModule(); + trackComponentAndModulesTime(); String reinitInfo = ""; if (reInitCount > 1) { reinitInfo = "reinit Framework:"; @@ -2155,6 +2156,17 @@ public void invokeDestoryInstance(String instanceId, String namespace, String fu } } + private void trackComponentAndModulesTime() { +post(new Runnable() { + @Override + public void run() { +WXEnvironment.sComponentsAndModulesReadyTime = System.currentTimeMillis() - WXEnvironment.sSDKInitStart; +WXLogUtils.renderPerformanceLog("ComponentModulesReadyTime", WXEnvironment.sComponentsAndModulesReadyTime); +WXLogUtils.d("ComponentModulesReadyTime " + WXEnvironment.sComponentsAndModulesReadyTime); + } +}); + } + @SuppressWarnings("unchecked") private void invokeCallJSBatch(Message message) { if (mNextTickTasks.isEmpty() || !isJSFrameworkInit()) { @@ -2293,12 +2305,18 @@ public void invokeDestoryInstance(String instanceId, String namespace, String fu || components.size() == 0) { return; } -post(new Runnable() { +Runnable runnable = new Runnable() { @Override public void run() { invokeRegisterComponents(components, mRegisterComponentFailList); } -}, null); +}; + +if(isJSThread() && isJSFrameworkInit()){ + runnable.run(); +}else{ + post(runnable, null); +} } public void execJSService(final String service) { @@ -2359,9 +2377,9 @@ public void invokeDestoryInstance(String instanceId, String namespace, String fu 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) {
incubator-weex git commit: [WEEX-279][android]Weex TemplateList Component Fix For Loop ++
Repository: incubator-weex Updated Branches: refs/heads/master f677f632c -> 3366d33bc [WEEX-279][android]Weex TemplateList Component Fix For Loop ++ Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/3366d33b Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/3366d33b Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/3366d33b Branch: refs/heads/master Commit: 3366d33bccf37184a310344028fdee6708be3791 Parents: f677f63 Author: jianbai.gbj <jianbai@alibaba-inc.com> Authored: Fri Apr 6 21:50:18 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu May 3 12:11:34 2018 +0800 -- .../main/java/com/taobao/weex/ui/component/binding/Statements.java | 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3366d33b/android/sdk/src/main/java/com/taobao/weex/ui/component/binding/Statements.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/binding/Statements.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/binding/Statements.java index 39a2531..0448029 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/binding/Statements.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/binding/Statements.java @@ -185,6 +185,7 @@ public class Statements { if(map == null){ key = index; value = item; +index++; }else{ key = item; value = map.get(item);
incubator-weex git commit: * [android] Fix compile error.
Repository: incubator-weex Updated Branches: refs/heads/master e315e8ab3 -> f677f632c * [android] Fix compile error. Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f677f632 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f677f632 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f677f632 Branch: refs/heads/master Commit: f677f632cadd722bb938abbba46cb058c74c8578 Parents: e315e8a Author: miomin <691292...@qq.com> Authored: Thu May 3 12:02:00 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu May 3 12:09:19 2018 +0800 -- .../java/com/taobao/weex/ui/component/WXImage.java | 2 +- .../com/taobao/weex/ui/component/WXVContainer.java | 17 +++-- 2 files changed, 8 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f677f632/android/sdk/src/main/java/com/taobao/weex/ui/component/WXImage.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXImage.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXImage.java index 6d37506..c366336 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXImage.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXImage.java @@ -337,7 +337,7 @@ public class WXImage extends WXComponent { IWXImgLoaderAdapter imgLoaderAdapter = getInstance().getImgLoaderAdapter(); if (imgLoaderAdapter != null) { imgLoaderAdapter.setImage(rewrited.toString(), getHostView(), - getDomObject().getAttrs().getImageQuality(), imageStrategy); + getAttrs().getImageQuality(), imageStrategy); } } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f677f632/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java index 86ea719..3fb3915 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java @@ -26,14 +26,11 @@ import android.util.Pair; import android.view.Menu; import android.view.View; import android.view.ViewGroup; -import android.widget.FrameLayout; - import com.taobao.weex.WXSDKInstance; import com.taobao.weex.annotation.JSMethod; import com.taobao.weex.common.Constants; +import com.taobao.weex.dom.CSSShorthand; import com.taobao.weex.ui.action.BasicComponentData; -import com.taobao.weex.dom.WXDomObject; -import com.taobao.weex.dom.flex.Spacing; import com.taobao.weex.ui.view.WXImageView; import com.taobao.weex.utils.WXLogUtils; import com.taobao.weex.utils.WXUtils; @@ -577,13 +574,13 @@ public abstract class WXVContainer extends WXComponent { mBoxShadowHost = new BoxShadowHost(getContext()); WXViewUtils.setBackGround(mBoxShadowHost, null); - Spacing padding = this.getDomObject().getPadding(); - Spacing border = this.getDomObject().getBorder(); + CSSShorthand padding = this.getPadding(); + CSSShorthand border = this.getBorder(); - int left = (int) (padding.get(Spacing.LEFT) + border.get(Spacing.LEFT)); - int top = (int) (padding.get(Spacing.TOP) + border.get(Spacing.TOP)); - int right = (int) (padding.get(Spacing.RIGHT) + border.get(Spacing.RIGHT)); - int bottom = (int) (padding.get(Spacing.BOTTOM) + border.get(Spacing.BOTTOM)); + int left = (int) (padding.get(CSSShorthand.EDGE.LEFT) + border.get(CSSShorthand.EDGE.LEFT)); + int top = (int) (padding.get(CSSShorthand.EDGE.TOP) + border.get(CSSShorthand.EDGE.TOP)); + int right = (int) (padding.get(CSSShorthand.EDGE.RIGHT) + border.get(CSSShorthand.EDGE.RIGHT)); + int bottom = (int) (padding.get(CSSShorthand.EDGE.BOTTOM) + border.get(CSSShorthand.EDGE.BOTTOM)); ViewGroup.MarginLayoutParams layoutParams = new ViewGroup.MarginLayoutParams(hostView.getLayoutParams()) ; layoutParams.setMargins(-left, -top, -right, -bottom);
[2/5] incubator-weex git commit: * [android] fix box-shadow size should cover padding and border
* [android] fix box-shadow size should cover padding and border Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/46cdd0e0 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/46cdd0e0 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/46cdd0e0 Branch: refs/heads/master Commit: 46cdd0e0265368cd6b4eb13e6954c5e03c207736 Parents: ea2e12f Author: YanjiieAuthored: Tue Apr 17 09:37:58 2018 +0800 Committer: Yanjiie Committed: Tue Apr 17 09:37:58 2018 +0800 -- .../com/taobao/weex/ui/component/WXVContainer.java | 17 - .../java/com/taobao/weex/utils/BoxShadowUtil.java | 6 -- 2 files changed, 20 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/46cdd0e0/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java index 635b8e4..2bb4703 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXVContainer.java @@ -29,11 +29,13 @@ import android.util.Pair; import android.view.Menu; import android.view.View; import android.view.ViewGroup; +import android.widget.FrameLayout; import com.taobao.weex.WXSDKInstance; import com.taobao.weex.annotation.JSMethod; import com.taobao.weex.common.Constants; import com.taobao.weex.dom.WXDomObject; +import com.taobao.weex.dom.flex.Spacing; import com.taobao.weex.ui.view.WXImageView; import com.taobao.weex.utils.WXLogUtils; import com.taobao.weex.utils.WXUtils; @@ -596,7 +598,20 @@ public abstract class WXVContainer extends WXComponent { if (mBoxShadowHost == null) { mBoxShadowHost = new BoxShadowHost(getContext()); WXViewUtils.setBackGround(mBoxShadowHost, null); - mBoxShadowHost.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); + + Spacing padding = this.getDomObject().getPadding(); + Spacing border = this.getDomObject().getBorder(); + + int left = (int) (padding.get(Spacing.LEFT) + border.get(Spacing.LEFT)); + int top = (int) (padding.get(Spacing.TOP) + border.get(Spacing.TOP)); + int right = (int) (padding.get(Spacing.RIGHT) + border.get(Spacing.RIGHT)); + int bottom = (int) (padding.get(Spacing.BOTTOM) + border.get(Spacing.BOTTOM)); + + ViewGroup.MarginLayoutParams layoutParams = new ViewGroup.MarginLayoutParams(hostView.getLayoutParams()) ; + layoutParams.setMargins(-left, -top, -right, -bottom); + + mBoxShadowHost.setLayoutParams(layoutParams); + hostView.addView(mBoxShadowHost); } hostView.removeView(mBoxShadowHost); http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/46cdd0e0/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java b/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java index b4adbb4..dba8b63 100644 --- a/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java +++ b/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java @@ -65,12 +65,12 @@ import java.util.regex.Pattern; public class BoxShadowUtil { private static final String TAG = "BoxShadowUtil"; - private static boolean sBoxShadowEnabled = false /*disable box-shadow temporary*/; + private static boolean sBoxShadowEnabled = true /*disable box-shadow temporary*/; private static Pattern sColorPattern; public static void setBoxShadowEnabled(boolean enabled) { -//sBoxShadowEnabled = enabled; +sBoxShadowEnabled = enabled; WXLogUtils.w(TAG, "Switch box-shadow status: " + enabled); } @@ -195,6 +195,8 @@ public class BoxShadowUtil { int h = target.getHeight(); int w = target.getWidth(); +ViewGroup.LayoutParams p = target.getLayoutParams(); + if (h == 0 || w == 0) { Log.w(TAG, "Target view is invisible, ignore set shadow."); return;
[4/5] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1064' into apache-master
Merge remote-tracking branch 'upstream/pr1064' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/467840a1 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/467840a1 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/467840a1 Branch: refs/heads/master Commit: 467840a12fa272427617e6d044d47324a24a2eab Parents: 9e6b5f5 7306233 Author: misakuo <misa...@apache.org> Authored: Sat Apr 28 10:45:20 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Apr 28 10:45:20 2018 +0800 -- .../java/com/taobao/weex/utils/BoxShadowUtil.java | 16 1 file changed, 12 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/467840a1/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java --
[1/5] incubator-weex git commit: [android] Fix the display problem of the box-shadow property of the scroller component
Repository: incubator-weex Updated Branches: refs/heads/master 9e6b5f5ff -> 62439cae0 [android] Fix the display problem of the box-shadow property of the scroller 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/73062333 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/73062333 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/73062333 Branch: refs/heads/master Commit: 73062333b8c05a34c707c572279da0655ba55c13 Parents: 42aa126 Author: åå¡Authored: Mon Mar 12 14:33:35 2018 +0800 Committer: åå¡ Committed: Mon Mar 12 14:33:35 2018 +0800 -- .../java/com/taobao/weex/utils/BoxShadowUtil.java | 16 1 file changed, 12 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/73062333/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java b/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java index 288be62..2796b32 100644 --- a/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java +++ b/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java @@ -392,19 +392,23 @@ public class BoxShadowUtil { setBounds(-paddingX, -paddingY, viewRect.width() + paddingX, viewRect.height() + paddingY); } -@Override public void draw(Canvas canvas) { - Rect newRect = canvas.getClipBounds(); + Rect bounds = canvas.getClipBounds(); + Rect newRect = new Rect(bounds); // Make the Canvas Rect bigger according to the padding. newRect.inset(-paddingX * 2, -paddingY * 2); canvas.clipRect(newRect, Region.Op.REPLACE); Path contentPath = new Path(); - RectF rectF = new RectF(0f, 0f, viewRect.width(), viewRect.height()); + // the content area map must be aligned with bounds + RectF rectF = new RectF(bounds); contentPath.addRoundRect(rectF, radii, Path.Direction.CCW); // can not antialias canvas.clipPath(contentPath, Region.Op.DIFFERENCE); + // translate the canvas to a suitable position and then draw the bitmap, otherwise draw from the origin(0, 0) + canvas.translate(bounds.left, bounds.top); + super.draw(canvas); } } @@ -517,12 +521,16 @@ public class BoxShadowUtil { @Override public void draw(Canvas canvas) { + Rect bounds = canvas.getClipBounds(); Path border = new Path(); - RectF rectF = new RectF(0, 0, canvas.getWidth(), canvas.getHeight()); + RectF rectF = new RectF(bounds); border.addRoundRect(rectF, radii, Path.Direction.CCW); canvas.clipPath(border); //TODO: we need clip border-width too + // translate the canvas to the right place and then draw the inner shadow + canvas.translate(bounds.left, bounds.top); + for (int i = 0; i < 4; i++) { Shader shader = shades[i]; Path path = paths[i];
[5/5] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1114' into apache-master
Merge remote-tracking branch 'upstream/pr1114' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/62439cae Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/62439cae Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/62439cae Branch: refs/heads/master Commit: 62439cae0be8689dec47dad5ca1189a7f48eb8bf Parents: 467840a ee16722 Author: misakuo <misa...@apache.org> Authored: Sat Apr 28 10:45:43 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Apr 28 10:45:43 2018 +0800 -- .../com/taobao/weex/ui/component/WXVContainer.java | 17 - .../java/com/taobao/weex/utils/BoxShadowUtil.java | 6 -- test/pages/css/border.vue | 9 + 3 files changed, 29 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/62439cae/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java --
[1/2] incubator-weex git commit: [WEEX-325][android] Some MeiZhu Mobole throw NoClassDefFoundError: android/support/design/widget/AppBarLayout$OnOffsetChangedListener
Repository: incubator-weex Updated Branches: refs/heads/master 595c29e9c -> 9e6b5f5ff [WEEX-325][android] Some MeiZhu Mobole throw NoClassDefFoundError: android/support/design/widget/AppBarLayout$OnOffsetChangedListener Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5b47d2e4 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5b47d2e4 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5b47d2e4 Branch: refs/heads/master Commit: 5b47d2e4a51bc5a640b5fd2e048d80cdcd82b448 Parents: cfefd7b Author: jianbai.gbjAuthored: Sat Apr 28 10:33:25 2018 +0800 Committer: jianbai.gbj Committed: Sat Apr 28 10:33:25 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java| 2 ++ 1 file changed, 2 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5b47d2e4/android/sdk/src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java b/android/sdk/src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java index 8d548ab..cfbe2be 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java @@ -172,6 +172,8 @@ public class SimpleComponentHolder implements IFComponentHolder{ }catch (IndexOutOfBoundsException e){ e.printStackTrace(); //ignore: getMethods may throw this +}catch (Exception e){ // in meizhu mobile, throw class not found exception in getMethods + WXLogUtils.e(TAG, e); } return new Pair<>(methods,mInvokers); }
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1140' into apache-master
Merge remote-tracking branch 'upstream/pr1140' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/9e6b5f5f Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/9e6b5f5f Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/9e6b5f5f Branch: refs/heads/master Commit: 9e6b5f5fff8edb832475884783df99c648000b53 Parents: 595c29e 5b47d2e Author: misakuo <misa...@apache.org> Authored: Sat Apr 28 10:42:56 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Apr 28 10:42:56 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/SimpleComponentHolder.java| 2 ++ 1 file changed, 2 insertions(+) --
[1/2] incubator-weex git commit: + [android] add instanceId declaring the caller instance
Repository: incubator-weex Updated Branches: refs/heads/master 56e23de83 -> 595c29e9c + [android] add instanceId declaring the caller instance Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5f3f9c37 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5f3f9c37 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5f3f9c37 Branch: refs/heads/master Commit: 5f3f9c37c6846c259236f4b359b13c7595fe9d63 Parents: 5bfcb7b Author: jiangxiang.jxAuthored: Tue Mar 13 12:51:47 2018 +0800 Committer: jiangxiang.jx Committed: Tue Mar 13 12:51:47 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java | 1 + .../main/java/com/taobao/weex/common/WXImageStrategy.java| 8 .../sdk/src/main/java/com/taobao/weex/common/WXRequest.java | 8 .../src/main/java/com/taobao/weex/http/WXStreamModule.java | 1 + .../src/main/java/com/taobao/weex/ui/component/WXImage.java | 1 + 5 files changed, 19 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5f3f9c37/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java b/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java index 475991e..dbbbfe1 100644 --- a/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java +++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java @@ -578,6 +578,7 @@ public class WXSDKInstance implements IWXActivityStateListener,DomContext, View. if (wxRequest.paramMap == null) { wxRequest.paramMap = new HashMap (); } +wxRequest.instanceId = getInstanceId(); wxRequest.paramMap.put(KEY_USER_AGENT, WXHttpUtil.assembleUserAgent(mContext,WXEnvironment.getConfig())); WXHttpListener httpListener = new WXHttpListener(pageName, renderOptions, jsonInitData, flag, System.currentTimeMillis()); http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5f3f9c37/android/sdk/src/main/java/com/taobao/weex/common/WXImageStrategy.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/WXImageStrategy.java b/android/sdk/src/main/java/com/taobao/weex/common/WXImageStrategy.java index 994c99b..6b9b51d 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/WXImageStrategy.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/WXImageStrategy.java @@ -20,6 +20,8 @@ package com.taobao.weex.common; import android.widget.ImageView; +import com.taobao.weex.WXSDKInstance; + import java.util.Map; public class WXImageStrategy { @@ -48,6 +50,12 @@ public class WXImageStrategy { public String placeHolder; + /** + * running weex instanceId + * @see WXSDKInstance#mInstanceId + */ + public String instanceId;; + public ImageListener getImageListener() { return imageListener; } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5f3f9c37/android/sdk/src/main/java/com/taobao/weex/common/WXRequest.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/WXRequest.java b/android/sdk/src/main/java/com/taobao/weex/common/WXRequest.java index 462e48b..e266a96 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/WXRequest.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/WXRequest.java @@ -18,6 +18,8 @@ */ package com.taobao.weex.common; +import com.taobao.weex.WXSDKInstance; + import java.util.Map; public class WXRequest { @@ -49,4 +51,10 @@ public class WXRequest { * The default timeout */ public static final int DEFAULT_TIMEOUT_MS = 3000; + + /** + * running weex instanceId + * @see WXSDKInstance#mInstanceId + */ + public String instanceId;; } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5f3f9c37/android/sdk/src/main/java/com/taobao/weex/http/WXStreamModule.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/http/WXStreamModule.java b/android/sdk/src/main/java/com/taobao/weex/http/WXStreamModule.java index 005e676..e3ac2f0 100644 --- a/android/sdk/src/main/java/com/taobao/weex/http/WXStreamModule.java +++ b/android/sdk/src/main/java/com/taobao/weex/http/WXStreamModule.java @@ -266,6 +266,7 @@ public class WXStreamModule extends WXModule { wxRequest.url = mWXSDKInstance.rewriteUri(Uri.parse(options.getUrl()), URIAdapter.REQUEST).toString(); wxRequest.body = options.getBody(); wxRequest.timeoutMs = options.getTimeout(); +
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1068' into apache-master
Merge remote-tracking branch 'upstream/pr1068' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/595c29e9 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/595c29e9 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/595c29e9 Branch: refs/heads/master Commit: 595c29e9c8ac42078058e1136428dd8d88e3c9bd Parents: 56e23de 5f3f9c3 Author: misakuo <misa...@apache.org> Authored: Sat Apr 28 10:40:31 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Apr 28 10:40:31 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java | 1 + .../main/java/com/taobao/weex/common/WXImageStrategy.java| 8 .../sdk/src/main/java/com/taobao/weex/common/WXRequest.java | 8 .../src/main/java/com/taobao/weex/http/WXStreamModule.java | 1 + .../src/main/java/com/taobao/weex/ui/component/WXImage.java | 1 + 5 files changed, 19 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/595c29e9/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/595c29e9/android/sdk/src/main/java/com/taobao/weex/ui/component/WXImage.java --
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1138' into apache-master
Merge remote-tracking branch 'upstream/pr1138' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/56e23de8 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/56e23de8 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/56e23de8 Branch: refs/heads/master Commit: 56e23de83b4b58f221ac202e77676079f269f4da Parents: cfefd7b 5575e16 Author: misakuo <misa...@apache.org> Authored: Sat Apr 28 10:39:38 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Apr 28 10:39:38 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java| 1 + 1 file changed, 1 insertion(+) --
[GitHub] incubator-weex issue #1138: [WEEX-299][android] Touch event will transmit to...
Github user misakuo commented on the issue: https://github.com/apache/incubator-weex/pull/1138 nice ---
[1/2] incubator-weex git commit: [WEEX-299][android] Touch event will transmit to next layer, requestDisallowInterceptTouchEvent should be reset for every touch event
Repository: incubator-weex Updated Branches: refs/heads/master cfefd7b64 -> 56e23de83 [WEEX-299][android] Touch event will transmit to next layer, requestDisallowInterceptTouchEvent should be reset for every touch event Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5575e161 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5575e161 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5575e161 Branch: refs/heads/master Commit: 5575e161add04239d26a6a9b02fe9e3dc611bdc4 Parents: 21aa9ab Author: jianbai.gbjAuthored: Fri Apr 27 16:47:13 2018 +0800 Committer: jianbai.gbj Committed: Fri Apr 27 16:47:13 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java| 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5575e161/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java index 3335d9e..954d118 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java @@ -160,6 +160,7 @@ public class WXGesture extends GestureDetector.SimpleOnGestureListener implement @Override public boolean onTouch(View v, MotionEvent event) { if(requestDisallowInterceptTouchEvent){ + requestDisallowInterceptTouchEvent = false; return false; } try {
[GitHub] incubator-weex issue #1114: *[Android] box-shadow size should cover padding ...
Github user misakuo commented on the issue: https://github.com/apache/incubator-weex/pull/1114 Nice job! ---
incubator-weex git commit: *[android] weekly release 0.18.0-beta-3
Repository: incubator-weex Updated Branches: refs/heads/master 069fea2a1 -> 28d776877 *[android] weekly release 0.18.0-beta-3 Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/28d77687 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/28d77687 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/28d77687 Branch: refs/heads/master Commit: 28d776877362b951a1337335d20d5e7f88cb5c46 Parents: 069fea2 Author: misakuo <misa...@apache.org> Authored: Fri Mar 30 11:35:30 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 30 11:35:30 2018 +0800 -- android/playground/app/build.gradle | 4 ++-- android/sdk/build.gradle| 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/28d77687/android/playground/app/build.gradle -- diff --git a/android/playground/app/build.gradle b/android/playground/app/build.gradle index bae43ca..422dd25 100755 --- a/android/playground/app/build.gradle +++ b/android/playground/app/build.gradle @@ -8,8 +8,8 @@ android { applicationId "com.alibaba.weex" minSdkVersion project.appMinSdkVersion targetSdkVersion project.targetSdkVersion -versionCode 16 -versionName "0.18.0-beta-2" +versionCode 17 +versionName "0.18.0-beta-3" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" ndk{ abiFilters "x86" http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/28d77687/android/sdk/build.gradle -- diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle index ecb40c2..7e05943 100755 --- a/android/sdk/build.gradle +++ b/android/sdk/build.gradle @@ -40,7 +40,7 @@ checkstyle { toolVersion = '6.9' } -version = "0.18.0-beta-2" +version = "0.18.0-beta-3" android { compileSdkVersion project.compileSdkVersion
[GitHub] incubator-weex pull request #1091: [Android] Module invoke authentication
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1091 [Android] Module invoke authentication You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex feature-module-invoke-auth Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1091.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1091 commit c0a98560cf88b09c36a8f5918cf562573ee2fa19 Author: misakuo <misakuo@...> Date: 2018-03-26T09:34:05Z *[android] add access restriction to module invoke commit 464b830c9156cf4fcc942428e97b98d2c24d6978 Author: misakuo <misakuo@...> Date: 2018-03-27T02:21:28Z *[android] set bundle url commit 7113757e4b2b7b9c5d28ae9dc71b9a97329a85d0 Author: misakuo <misakuo@...> Date: 2018-03-27T02:59:52Z *[android] allow access module class commit ef637b922f8e7f2409260f9c1583201659470278 Author: misakuo <misakuo@...> Date: 2018-03-27T03:17:55Z *[android] made method static commit 4f0c0d439b708d9b0368df0f9b4d0437869cc681 Author: misakuo <misakuo@...> Date: 2018-03-27T03:41:41Z Merge remote-tracking branch 'remotes/apache/master' into feature-module-invoke-auth commit b673ff34aa1dbe01c2d23021e57fea089f4b1fa0 Author: misakuo <misakuo@...> Date: 2018-03-27T09:38:44Z *[android] default access restriction commit ef9c005685d1a0bf50e29dd749e1bdc07545722b Author: misakuo <misakuo@...> Date: 2018-03-27T09:53:31Z Merge remote-tracking branch 'remotes/apache/master' into feature-module-invoke-auth # Conflicts: # android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java commit 85956108cfefea318ccf71004bbd0d64dbc3f51b Author: misakuo <misakuo@...> Date: 2018-03-27T09:54:03Z Merge remote-tracking branch 'remotes/apache/master' into feature-module-invoke-auth # Conflicts: # android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java commit 2809fd23d841150c5f0eb333b4544c2686188fdf Author: misakuo <misakuo@...> Date: 2018-03-27T09:59:42Z *[android] adaptive commit e1eb47ac9c4bec8bf83e5cf634a55046b4c62164 Author: misakuo <misakuo@...> Date: 2018-03-29T06:14:27Z *[android] trust dotwe.org ---
[6/6] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1086' into apache-master
Merge remote-tracking branch 'upstream/pr1086' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/1ab83cdc Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1ab83cdc Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1ab83cdc Branch: refs/heads/master Commit: 1ab83cdcf70d4a070c5ef7c5850b68361b23deef Parents: 7a65877 721174d Author: misakuo <misa...@apache.org> Authored: Thu Mar 29 14:16:20 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 29 14:16:20 2018 +0800 -- .../com/taobao/weex/dom/WXTextDomObject.java| 38 +++--- .../weex/dom/text/FontBroadcastReceiver.java| 79 2 files changed, 89 insertions(+), 28 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1ab83cdc/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java --
[1/6] incubator-weex git commit: [WEEX-224][android] WXDomObject Destory Method Should Be Called avoid Memory Leak
Repository: incubator-weex Updated Branches: refs/heads/master 9b5f3bea8 -> 1ab83cdcf [WEEX-224][android] WXDomObject Destory Method Should Be Called avoid Memory Leak Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4d25fa32 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4d25fa32 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4d25fa32 Branch: refs/heads/master Commit: 4d25fa3214d0a5a870fd1b1c024d2d48e10c794b Parents: 95e16d8 Author: jianbai.gbjAuthored: Sat Feb 24 17:16:56 2018 +0800 Committer: jianbai.gbj Committed: Sat Feb 24 17:16:56 2018 +0800 -- .../com/taobao/weex/dom/WXTextDomObject.java| 38 .../weex/dom/text/FontBroadcastReceiver.java| 61 2 files changed, 71 insertions(+), 28 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d25fa32/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java b/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java index 6bb1feb..95036e6 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java @@ -50,6 +50,7 @@ import com.taobao.weex.dom.flex.CSSConstants; import com.taobao.weex.dom.flex.CSSNode; import com.taobao.weex.dom.flex.FloatUtil; import com.taobao.weex.dom.flex.MeasureOutput; +import com.taobao.weex.dom.text.FontBroadcastReceiver; import com.taobao.weex.ui.component.WXText; import com.taobao.weex.ui.component.WXTextDecoration; import com.taobao.weex.utils.StaticLayoutProxy; @@ -566,6 +567,14 @@ public class WXTextDomObject extends WXDomObject { super.destroy(); } + @Override + protected void finalize() throws Throwable { +if(!isDestroy()){ + destroy(); +} +super.finalize(); + } + private void registerTypefaceObserverIfNeed(String desiredFontFamily) { if(TextUtils.isEmpty(desiredFontFamily)){ return; @@ -578,34 +587,7 @@ public class WXTextDomObject extends WXDomObject { if (mTypefaceObserver != null) { return; } - -mTypefaceObserver = new BroadcastReceiver() { - @Override - public void onReceive(Context context, Intent intent) { -String fontFamily = intent.getStringExtra("fontFamily"); -if (!mFontFamily.equals(fontFamily)) { - return; -} -if(isDestroy() || getDomContext() == null){ - return; -} - -DOMActionContext domActionContext = WXSDKManager.getInstance().getWXDomManager().getDomContext(getDomContext().getInstanceId()); -if(domActionContext == null){ - return; -} -WXDomObject domObject = domActionContext.getDomByRef(getRef()); -if(domObject == null){ - return; -} -domObject.markDirty(); -domActionContext.markDirty(); - WXSDKManager.getInstance().getWXDomManager().sendEmptyMessageDelayed(WXDomHandler.MsgType.WX_DOM_START_BATCH, 2); -if(WXEnvironment.isApkDebugable()) { - WXLogUtils.d("WXText", "Font family " + fontFamily + " is available"); -} - } -}; +mTypefaceObserver = new FontBroadcastReceiver(this, mFontFamily); if(WXEnvironment.isApkDebugable()) { WXLogUtils.d("WXText", "Font family register " + desiredFontFamily + " is available" + getRef()); } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d25fa32/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java b/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java new file mode 100644 index 000..81552f2 --- /dev/null +++ b/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java @@ -0,0 +1,61 @@ +package com.taobao.weex.dom.text; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; + +import com.taobao.weex.WXEnvironment; +import com.taobao.weex.WXSDKManager; +import com.taobao.weex.dom.DOMActionContext; +import com.taobao.weex.dom.WXDomHandler; +import com.taobao.weex.dom.WXDomObject; +import com.taobao.weex.dom.WXTextDomObject; +import com.taobao.weex.utils.WXLogUtils; + +import java.lang.ref.WeakReference; + +/** + * Created by furture on 2018/2/24. + */ + +public class FontBroadcastReceiver extends BroadcastReceiver { + +private WeakReference
[2/6] incubator-weex git commit: [WEEX-224][android] WXDomObject Destory Method Should Be Called avoid Memory Leak
[WEEX-224][android] WXDomObject Destory Method Should Be Called avoid Memory Leak Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/721174de Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/721174de Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/721174de Branch: refs/heads/master Commit: 721174dec713441f4e56ad5d598739e14cac81eb Parents: 4d25fa3 Author: jianbai.gbjAuthored: Mon Feb 26 14:31:33 2018 +0800 Committer: jianbai.gbj Committed: Mon Feb 26 14:31:33 2018 +0800 -- .../weex/dom/text/FontBroadcastReceiver.java | 18 ++ 1 file changed, 18 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/721174de/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java b/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java index 81552f2..8d1d556 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/text/FontBroadcastReceiver.java @@ -1,3 +1,21 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ package com.taobao.weex.dom.text; import android.content.BroadcastReceiver;
[4/6] incubator-weex git commit: [WEEX-244][android]Weex Android Support W3c Force Api & wson improve for JSONField
[WEEX-244][android]Weex Android Support W3c Force Api & wson improve for JSONField Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/ee195d57 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/ee195d57 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/ee195d57 Branch: refs/heads/master Commit: ee195d57565c9d518de44fb0f1137d9d502b08fa Parents: db3895a Author: jianbai.gbjAuthored: Fri Mar 9 16:23:44 2018 +0800 Committer: jianbai.gbj Committed: Fri Mar 9 16:48:10 2018 +0800 -- .../main/java/com/taobao/weex/wson/Wson.java| 29 +- .../java/com/taobao/weex/wson/AnnoTest.java | 41 .../test/java/com/taobao/weex/wson/Person.java | 30 ++ 3 files changed, 98 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ee195d57/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java b/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java index 5741f8a..85d740f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java +++ b/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java @@ -24,6 +24,7 @@ import android.support.v4.util.LruCache; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.annotation.JSONField; import com.taobao.weex.utils.WXLogUtils; import java.lang.reflect.Array; @@ -499,7 +500,7 @@ public class Wson { if(object.getClass().isEnum()){ writeObject(JSON.toJSONString(object)); }else{ -writeMap(toMap(object)); +writeAdapterObject(object); } refs.remove(refs.size()-1); } @@ -600,6 +601,19 @@ public class Wson { position++; } +private final void writeAdapterObject(Object object){ +if(specialClass.get(object.getClass().getName()) != null){ +writeObject(JSON.toJSON(object)); +return; +} +try{ +writeMap(toMap(object)); +}catch (Exception e){ +specialClass.put(object.getClass().getName(), true); +writeObject(JSON.toJSON(object)); +} +} + private final Map toMap(Object object){ Map map = new JSONObject(); try { @@ -637,7 +651,11 @@ public class Wson { map.put(fieldName, value); } }catch (Exception e){ -throw new RuntimeException(e); +if(e instanceof RuntimeException){ +throw (RuntimeException)e; +}else{ +throw new RuntimeException(e); +} } return map; } @@ -749,6 +767,7 @@ public class Wson { private static final String METHOD_PREFIX_IS = "is"; private static LruCache methodsCache = new LruCache<>(128); private static LruCache fieldsCache = new LruCache<>(128); +private static LruCache specialClass = new LruCache<>(16); private static final List getBeanMethod(String key, Class targetClass){ @@ -766,6 +785,9 @@ public class Wson { String methodName = method.getName(); if(methodName.startsWith(METHOD_PREFIX_GET) || methodName.startsWith(METHOD_PREFIX_IS)) { +if(method.getAnnotation(JSONField.class) != null){ +throw new UnsupportedOperationException("getBeanMethod JSONField Annotation Not Handled, Use toJSON"); +} methods.add(method); } } @@ -785,6 +807,9 @@ public class Wson { if((field.getModifiers() & Modifier.STATIC) != 0){ continue; } +if(field.getAnnotation(JSONField.class) != null){ +throw new UnsupportedOperationException("getBeanMethod JSONField Annotation Not Handled, Use toJSON"); +} fieldList.add(field); } fieldsCache.put(key, fieldList); http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ee195d57/android/sdk/src/test/java/com/taobao/weex/wson/AnnoTest.java -- diff --git
[3/6] incubator-weex git commit: [WEEX-244][android]Weex Android Support W3c Force Api
[WEEX-244][android]Weex Android Support W3c Force Api Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/db3895a1 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/db3895a1 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/db3895a1 Branch: refs/heads/master Commit: db3895a16a9376b22231c324683910b37d8d7887 Parents: 5b901c0 Author: jianbai.gbjAuthored: Fri Mar 9 11:19:47 2018 +0800 Committer: jianbai.gbj Committed: Fri Mar 9 11:19:47 2018 +0800 -- .../main/java/com/taobao/weex/ui/view/gesture/WXGesture.java | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/db3895a1/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java index 1bac140..3335d9e 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java @@ -383,7 +383,12 @@ public class WXGesture extends GestureDetector.SimpleOnGestureListener implement pageXY = getEventLocInPageCoordinate(motionEvent, pointerIndex, pos); screenXY = getEventLocInScreenCoordinate(motionEvent, pointerIndex, pos); } -return createJSONObject(screenXY, pageXY, (float) motionEvent.getPointerId(pointerIndex)); +JSONObject map = createJSONObject(screenXY, pageXY, (float) motionEvent.getPointerId(pointerIndex)); +float force = motionEvent.getPressure(); +if(force > 0 && force < 1) { + map.put("force", motionEvent.getPressure()); +} +return map; } /**
[5/6] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1060' into apache-master
Merge remote-tracking branch 'upstream/pr1060' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/7a65877f Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/7a65877f Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/7a65877f Branch: refs/heads/master Commit: 7a65877fbf3c9c105503da7e7180ff80a31ae9d9 Parents: 9b5f3be ee195d5 Author: misakuo <misa...@apache.org> Authored: Thu Mar 29 14:16:06 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 29 14:16:06 2018 +0800 -- --
[1/3] incubator-weex git commit: * [Android] merge WXPerformance code, now support more performance data
Repository: incubator-weex Updated Branches: refs/heads/master edb442697 -> aad360553 http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/495c7aca/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java b/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java index 8238041..8af7d85 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java @@ -18,25 +18,188 @@ */ package com.taobao.weex.common; +import android.os.Debug; +import android.support.annotation.RestrictTo; +import android.support.annotation.RestrictTo.Scope; +import android.text.TextUtils; + import com.taobao.weex.WXEnvironment; +import com.taobao.weex.performance.FpsCollector; +import com.taobao.weex.performance.MemUtils; +import com.taobao.weex.utils.WXViewUtils; import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; import java.util.Map; public class WXPerformance { + @RestrictTo(Scope.LIBRARY) + public enum Dimension { +JSLibVersion, +WXSDKVersion, +pageName, +spm, +scheme, +cacheType, +requestType, +networkType, +connectionType, +zcacheInfo, +wxdim1, +wxdim2, +wxdim3, +wxdim4, +wxdim5, +bizType, +templateUrl, +useScroller + } + + public enum Measure { +/** + * range : [min,max) + */ +JSLibSize(0D, Double.MAX_VALUE), +//normal 300ms.. first install apk 30s ? +JSLibInitTime(0D, 5D), +SDKInitTime(0D, 5000D), +SDKInitInvokeTime(0D, 5000D), +SDKInitExecuteTime(0D, 5000D), +JSTemplateSize(0D, 5000D), +pureNetworkTime(0D, 15000D), +networkTime(0D, 15000D), +fsCreateInstanceTime(0D, 3000D), +fsCallJsTotalTime(0D, 5000D), +fsCallJsTotalNum(0D, Double.MAX_VALUE), +fsCallNativeTotalTime(0D, 5000D), +fsCallNativeTotalNum(0D, Double.MAX_VALUE), +fsCallEventTotalNum(0D, Double.MAX_VALUE), +fsRenderTime(0D, 5000D), +fsRequestNum(0D, 100D), +callCreateFinishTime(0D, 1D), +cellExceedNum(0D, Double.MAX_VALUE), +communicateTotalTime(0D, 5000D), +maxDeepViewLayer(0D, Double.MAX_VALUE), +maxDeepVDomLayer(0D, Double.MAX_VALUE), +componentCount(0D, Double.MAX_VALUE), +avgFps(0D, 61D), +timerCount(0D, Double.MAX_VALUE), + +MaxImproveMemory(0D, Double.MAX_VALUE), +BackImproveMemory(0D, Double.MAX_VALUE), +PushImproveMemory(0D, Double.MAX_VALUE), +measureTime1(0D, Double.MAX_VALUE), +measureTime2(0D, Double.MAX_VALUE), +measureTime3(0D, Double.MAX_VALUE), +measureTime4(0D, Double.MAX_VALUE), +measureTime5(0D, Double.MAX_VALUE), + +communicateTime(0D, 5000D), +screenRenderTime(0D, 5000D), +totalTime(0D, 5000D), +localReadTime(0D, 5000D), +templateLoadTime(0D, 5000D), +packageSpendTime(0D, 5000D), +syncTaskTime(0D, 5000D), +actualNetworkTime(0D, 5000D), +firstScreenJSFExecuteTime(0D, 5000D), +//.. + +fluency(0D, 101D), +imgSizeCount(0D, 2000D), +interactionTime(0D,1D); + + +private double mMinRange, mMaxRange; + +Measure(double min, double max) { + this.mMinRange = min; + this.mMaxRange = max; +} + +public double getMinRange() { + return mMinRange; +} + +public double getMaxRange() { + return mMaxRange; +} + } + public static final String DEFAULT = "default"; + @RestrictTo(Scope.LIBRARY_GROUP) + public static final String CACHE_TYPE = "cacheType"; + + public static final int VIEW_LIMIT_HEIGHT = WXViewUtils.getScreenHeight() / 2; + public static final int VIEW_LIMIT_WIDTH = WXViewUtils.getScreenWidth() / 2; + public static boolean TRACE_DATA = WXEnvironment.isApkDebugable(); + /** - * Business unit, mandatory. If no business unit can be provided, set the field as default + * No longer needed. */ + @Deprecated public String bizType = "weex"; /** - * URL used for rendering view, optional + * Use {@link #pageName} instead. */ + @Deprecated public String templateUrl; + @RestrictTo(Scope.LIBRARY_GROUP) + public String cacheType = "unknown"; + + @RestrictTo(Scope.LIBRARY) + public long renderTimeOrigin; + + public long fsRenderTime; + + public long callCreateFinishTime; + + public long interactionTime; + + /** + * Time used for + * {@link com.taobao.weex.bridge.WXBridgeManager#createInstance(String, String, Map, String)} + */ + @RestrictTo(Scope.LIBRARY) + public long callCreateInstanceTime; + + + public long fsCallJsTotalTime; + + public int fsCallJsTotalNum; + + public long fsCallNativeTotalTime; + + public int fsCallNativeTotalNum; + + public int fsRequestNum; + + public int cellExceedNum; + + public int timerInvokeCount; + + public int
[3/3] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1080' into apache-master
Merge remote-tracking branch 'upstream/pr1080' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/aad36055 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/aad36055 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/aad36055 Branch: refs/heads/master Commit: aad360553407b49847e6222720b646d0e8b4e9ea Parents: edb4426 495c7ac Author: misakuo <misa...@apache.org> Authored: Tue Mar 27 11:40:21 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 27 11:40:21 2018 +0800 -- .../java/com/alibaba/weex/IndexActivity.java| 4 +- .../java/com/taobao/weex/RenderContainer.java | 12 + .../java/com/taobao/weex/WXRenderErrorCode.java | 87 .../main/java/com/taobao/weex/WXSDKEngine.java | 9 +- .../java/com/taobao/weex/WXSDKInstance.java | 133 +++-- .../main/java/com/taobao/weex/WXSDKManager.java | 17 + .../com/taobao/weex/bridge/WXBridgeManager.java | 159 +++--- .../com/taobao/weex/bridge/WXModuleManager.java | 2 +- .../com/taobao/weex/common/WXErrorCode.java | 204 +--- .../taobao/weex/common/WXJSExceptionInfo.java | 11 +- .../com/taobao/weex/common/WXPerformance.java | 481 +++ .../java/com/taobao/weex/dom/WXDomManager.java | 2 +- .../java/com/taobao/weex/dom/WXDomObject.java | 9 +- .../dom/action/AbstractAddElementAction.java| 14 +- .../weex/dom/action/AddElementAction.java | 1 + .../taobao/weex/dom/action/AddEventAction.java | 2 +- .../taobao/weex/dom/action/AnimationAction.java | 4 +- .../weex/dom/action/ModuleInvocationAction.java | 2 +- .../weex/dom/action/MoveElementAction.java | 2 +- .../weex/dom/action/RemoveElementAction.java| 8 +- .../weex/dom/action/RemoveEventAction.java | 2 +- .../weex/dom/action/UpdateAttributeAction.java | 2 +- .../weex/dom/action/UpdateStyleAction.java | 2 +- .../taobao/weex/performance/FpsCollector.java | 113 + .../taobao/weex/performance/IWXAnalyzer.java| 35 ++ .../com/taobao/weex/performance/MemUtils.java | 80 +++ .../performance/WXAnalyzerDataTransfer.java | 138 ++ .../taobao/weex/ui/component/WXComponent.java | 5 + .../com/taobao/weex/ui/component/WXEmbed.java | 12 +- .../com/taobao/weex/ui/component/WXImage.java | 23 + .../taobao/weex/ui/module/WXTimerModule.java| 17 + .../com/taobao/weex/utils/WXExceptionUtils.java | 32 +- .../java/com/taobao/weex/utils/WXLogUtils.java | 35 +- .../taobao/weex/utils/WXSoInstallMgrSdk.java| 10 +- .../taobao/weex/utils/WXExceptionUtilsTest.java | 5 +- 35 files changed, 1261 insertions(+), 413 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/aad36055/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/aad36055/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java --
[2/3] incubator-weex git commit: * [Android] merge WXPerformance code, now support more performance data
* [Android] merge WXPerformance code,now support more performance data Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/495c7aca Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/495c7aca Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/495c7aca Branch: refs/heads/master Commit: 495c7acafbe6e71ab879de02821986d08aaea0fb Parents: a1d4ed2 Author: zhongcangAuthored: Thu Mar 22 16:10:52 2018 +0800 Committer: zhongcang Committed: Thu Mar 22 16:10:52 2018 +0800 -- .../java/com/alibaba/weex/IndexActivity.java| 4 +- .../java/com/taobao/weex/RenderContainer.java | 12 + .../java/com/taobao/weex/WXRenderErrorCode.java | 87 .../main/java/com/taobao/weex/WXSDKEngine.java | 9 +- .../java/com/taobao/weex/WXSDKInstance.java | 133 +++-- .../main/java/com/taobao/weex/WXSDKManager.java | 17 + .../com/taobao/weex/bridge/WXBridgeManager.java | 159 +++--- .../com/taobao/weex/bridge/WXModuleManager.java | 2 +- .../com/taobao/weex/common/WXErrorCode.java | 204 +--- .../taobao/weex/common/WXJSExceptionInfo.java | 11 +- .../com/taobao/weex/common/WXPerformance.java | 481 +++ .../java/com/taobao/weex/dom/WXDomManager.java | 2 +- .../java/com/taobao/weex/dom/WXDomObject.java | 9 +- .../dom/action/AbstractAddElementAction.java| 14 +- .../weex/dom/action/AddElementAction.java | 1 + .../taobao/weex/dom/action/AddEventAction.java | 2 +- .../taobao/weex/dom/action/AnimationAction.java | 4 +- .../weex/dom/action/ModuleInvocationAction.java | 2 +- .../weex/dom/action/MoveElementAction.java | 2 +- .../weex/dom/action/RemoveElementAction.java| 8 +- .../weex/dom/action/RemoveEventAction.java | 2 +- .../weex/dom/action/UpdateAttributeAction.java | 2 +- .../weex/dom/action/UpdateStyleAction.java | 2 +- .../taobao/weex/performance/FpsCollector.java | 113 + .../taobao/weex/performance/IWXAnalyzer.java| 35 ++ .../com/taobao/weex/performance/MemUtils.java | 80 +++ .../performance/WXAnalyzerDataTransfer.java | 138 ++ .../taobao/weex/ui/component/WXComponent.java | 5 + .../com/taobao/weex/ui/component/WXEmbed.java | 12 +- .../com/taobao/weex/ui/component/WXImage.java | 23 + .../taobao/weex/ui/module/WXTimerModule.java| 17 + .../com/taobao/weex/utils/WXExceptionUtils.java | 32 +- .../java/com/taobao/weex/utils/WXLogUtils.java | 35 +- .../taobao/weex/utils/WXSoInstallMgrSdk.java| 10 +- .../taobao/weex/utils/WXExceptionUtilsTest.java | 5 +- 35 files changed, 1261 insertions(+), 413 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/495c7aca/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java -- diff --git a/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java b/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java index e4bbe99..feaf5ae 100644 --- a/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java +++ b/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java @@ -42,9 +42,9 @@ import android.widget.Toast; import com.alibaba.weex.commons.AbstractWeexActivity; import com.alibaba.weex.update.CheckForUpdateUtil; import com.google.zxing.client.android.CaptureActivity; -import com.taobao.weex.WXRenderErrorCode; import com.taobao.weex.WXSDKEngine; import com.taobao.weex.WXSDKInstance; +import com.taobao.weex.common.WXErrorCode; import com.taobao.weex.utils.WXFileUtils; import com.taobao.weex.utils.WXSoInstallMgrSdk; @@ -169,7 +169,7 @@ public class IndexActivity extends AbstractWeexActivity { super.onException(wxsdkInstance,s,s1); mProgressBar.setVisibility(View.GONE); mTipView.setVisibility(View.VISIBLE); -if (TextUtils.equals(s, WXRenderErrorCode.DegradPassivityCode.WX_DEGRAD_ERR_NETWORK_BUNDLE_DOWNLOAD_FAILED.getDegradErrorCode())) { +if (TextUtils.equals(s, WXErrorCode.WX_DEGRAD_ERR_NETWORK_BUNDLE_DOWNLOAD_FAILED.getErrorCode())) { mTipView.setText(R.string.index_tip); } else { mTipView.setText("network render error:" + s1); http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/495c7aca/android/sdk/src/main/java/com/taobao/weex/RenderContainer.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/RenderContainer.java b/android/sdk/src/main/java/com/taobao/weex/RenderContainer.java index 2bcf330..a37a47e 100644 --- a/android/sdk/src/main/java/com/taobao/weex/RenderContainer.java +++
[2/5] incubator-weex git commit: [WEEX-261][android]Flat GUI NullPointerException fix
[WEEX-261][android]Flat GUI NullPointerException fix Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/6e5558be Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/6e5558be Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/6e5558be Branch: refs/heads/master Commit: 6e5558bef03ed69f7d651ac09db46c201309a9c3 Parents: 8e6299d Author: jianbai.gbjAuthored: Thu Mar 22 14:25:24 2018 +0800 Committer: jianbai.gbj Committed: Thu Mar 22 14:25:24 2018 +0800 -- .../main/java/com/taobao/weex/ui/component/WXComponent.java| 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6e5558be/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 6522c9b..1dfb506 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 @@ -553,10 +553,14 @@ public abstract class WXComponent implements IWXObject, IWXActi private void setComponentLayoutParams(int realWidth, int realHeight, int realLeft, int realTop, int realRight, int realBottom, Point rawOffset) { +if(getInstance() == null || getInstance().isDestroy()){ + return; +} + FlatGUIContext UIImp = getInstance().getFlatUIContext(); WidgetContainer ancestor; Widget widget; -if ((ancestor = UIImp.getFlatComponentAncestor(this)) != null) { +if (UIImp != null && (ancestor = UIImp.getFlatComponentAncestor(this)) != null) { if (this instanceof FlatComponent && !((FlatComponent) this).promoteToView(true)) { widget = ((FlatComponent) this).getOrCreateFlatWidget(); } else {
[1/5] incubator-weex git commit: [WEEX-253][android]WXScroller Handler should use mainLooper ensure main thread
Repository: incubator-weex Updated Branches: refs/heads/master 7b5f09edc -> edb442697 [WEEX-253][android]WXScroller Handler should use mainLooper ensure main thread Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/8e6299d3 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/8e6299d3 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/8e6299d3 Branch: refs/heads/master Commit: 8e6299d37750a54bf88d33f7cfefe108febae666 Parents: 4a3b952 Author: jianbai.gbjAuthored: Tue Mar 20 10:56:12 2018 +0800 Committer: jianbai.gbj Committed: Tue Mar 20 10:56:12 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/component/WXScroller.java| 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/8e6299d3/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java index 4e3561d..f21d33b 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java @@ -24,6 +24,7 @@ import android.graphics.Point; import android.graphics.Rect; import android.os.Build; import android.os.Handler; +import android.os.Looper; import android.support.annotation.NonNull; import android.text.TextUtils; import android.view.View; @@ -107,7 +108,7 @@ public class WXScroller extends WXVContainer implements WXScrollViewL private int mContentHeight = 0; private WXStickyHelper stickyHelper; - private Handler handler=new Handler(); + private Handler handler=new Handler(Looper.getMainLooper()); private boolean isScrollable = true;
[4/5] incubator-weex git commit: [WEEX-261][android]Flat GUI NullPointerException fix
[WEEX-261][android]Flat GUI NullPointerException fix Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/1e70579d Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1e70579d Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1e70579d Branch: refs/heads/master Commit: 1e70579d30f65f13498907b1816ee92bb4b10d41 Parents: a6fa146 Author: jianbai.gbjAuthored: Thu Mar 22 17:54:08 2018 +0800 Committer: jianbai.gbj Committed: Thu Mar 22 17:54:08 2018 +0800 -- .../sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1e70579d/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java index fca40d9..176e9f5 100644 --- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java +++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java @@ -1877,7 +1877,7 @@ public class WXBridgeManager implements Callback, BactchExecutor { invokeExecJS(String.valueOf(instanceId), null, METHOD_CALL_JS, args); task.clear(); for(int i=0; i
incubator-weex git commit: *[android] playground weekly release 0.18.0-beta-2
Repository: incubator-weex Updated Branches: refs/heads/master f27bf04c4 -> 14059467b *[android] playground weekly release 0.18.0-beta-2 Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/14059467 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/14059467 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/14059467 Branch: refs/heads/master Commit: 14059467bd969288ad04b62a0839f8b83bf6d5e7 Parents: f27bf04 Author: misakuo <misa...@apache.org> Authored: Fri Mar 23 10:45:34 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 23 10:45:34 2018 +0800 -- android/playground/app/build.gradle | 4 ++-- android/sdk/build.gradle| 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/14059467/android/playground/app/build.gradle -- diff --git a/android/playground/app/build.gradle b/android/playground/app/build.gradle index 20d10e4..ede9c84 100755 --- a/android/playground/app/build.gradle +++ b/android/playground/app/build.gradle @@ -8,8 +8,8 @@ android { applicationId "com.alibaba.weex" minSdkVersion project.appMinSdkVersion targetSdkVersion project.targetSdkVersion -versionCode 15 -versionName "0.18.0-beta-1" +versionCode 16 +versionName "0.18.0-beta-2" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" ndk{ abiFilters "x86" http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/14059467/android/sdk/build.gradle -- diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle index 7e7569d..728e1c6 100755 --- a/android/sdk/build.gradle +++ b/android/sdk/build.gradle @@ -40,7 +40,7 @@ checkstyle { toolVersion = '6.9' } -version = "0.18.0-beta-1" +version = "0.18.0-beta-2" android { compileSdkVersion project.compileSdkVersion
[1/2] incubator-weex git commit: [WEEX-261][android]Flat GUI NullPointerException fix
Repository: incubator-weex Updated Branches: refs/heads/master a1d4ed2cd -> 83d254398 [WEEX-261][android]Flat GUI NullPointerException fix Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/83d25439 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/83d25439 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/83d25439 Branch: refs/heads/master Commit: 83d254398d088f8047362a14dd7d582f08cc87d9 Parents: 9dcd0cd Author: jianbai.gbj <jianbai@alibaba-inc.com> Authored: Thu Mar 22 15:05:33 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 22 15:43:30 2018 +0800 -- .../java/com/taobao/weex/ui/WXComponentRegistry.java | 5 +++-- .../taobao/weex/ui/config/AutoScanConfigRegister.java| 11 +++ 2 files changed, 14 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/83d25439/android/sdk/src/main/java/com/taobao/weex/ui/WXComponentRegistry.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/WXComponentRegistry.java b/android/sdk/src/main/java/com/taobao/weex/ui/WXComponentRegistry.java index bfaff30..39e3b89 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/WXComponentRegistry.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/WXComponentRegistry.java @@ -29,16 +29,17 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import java.util.Objects; +import java.util.concurrent.ConcurrentHashMap; /** * All components must be registered within this class before used. */ public class WXComponentRegistry { - private static Map<String, IFComponentHolder> sTypeComponentMap = new HashMap<>(); + private static Map<String, IFComponentHolder> sTypeComponentMap = new ConcurrentHashMap<>(); private static ArrayList<Map<String, Object>> sComponentInfos=new ArrayList<>(); - public static boolean registerComponent(final String type, final IFComponentHolder holder, final Map<String, Object> componentInfo) throws WXException { + public static synchronized boolean registerComponent(final String type, final IFComponentHolder holder, final Map<String, Object> componentInfo) throws WXException { if (holder == null || TextUtils.isEmpty(type)) { return false; } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/83d25439/android/sdk/src/main/java/com/taobao/weex/ui/config/AutoScanConfigRegister.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/config/AutoScanConfigRegister.java b/android/sdk/src/main/java/com/taobao/weex/ui/config/AutoScanConfigRegister.java index 94278a9..5c35de6 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/config/AutoScanConfigRegister.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/config/AutoScanConfigRegister.java @@ -45,6 +45,17 @@ public class AutoScanConfigRegister { * auto scan config files and do auto config from files, none need center register * */ public static void doScanConfig(){ + Thread thread = new Thread(new Runnable() { +@Override +public void run() { +doScanConfigSync(); +} +}); + thread.setName("AutoScanConfigRegister"); + thread.start(); +} + +private static void doScanConfigSync(){ if(WXEnvironment.sApplication == null){ return; }
[2/2] incubator-weex git commit: [WEEX-261][android]Flat GUI NullPointerException fix
[WEEX-261][android]Flat GUI NullPointerException fix Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/9dcd0cdb Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/9dcd0cdb Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/9dcd0cdb Branch: refs/heads/master Commit: 9dcd0cdb6558228d2b6b59f63e8326495bb13cfd Parents: a1d4ed2 Author: jianbai.gbj <jianbai@alibaba-inc.com> Authored: Thu Mar 22 14:25:24 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 22 15:43:30 2018 +0800 -- .../main/java/com/taobao/weex/ui/component/WXComponent.java| 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/9dcd0cdb/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 6522c9b..1dfb506 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 @@ -553,10 +553,14 @@ public abstract class WXComponent implements IWXObject, IWXActi private void setComponentLayoutParams(int realWidth, int realHeight, int realLeft, int realTop, int realRight, int realBottom, Point rawOffset) { +if(getInstance() == null || getInstance().isDestroy()){ + return; +} + FlatGUIContext UIImp = getInstance().getFlatUIContext(); WidgetContainer ancestor; Widget widget; -if ((ancestor = UIImp.getFlatComponentAncestor(this)) != null) { +if (UIImp != null && (ancestor = UIImp.getFlatComponentAncestor(this)) != null) { if (this instanceof FlatComponent && !((FlatComponent) this).promoteToView(true)) { widget = ((FlatComponent) this).getOrCreateFlatWidget(); } else {
incubator-weex git commit: *[android] disable box-shadow temporary
Repository: incubator-weex Updated Branches: refs/heads/master 55e3f71d4 -> 1378f5874 *[android] disable box-shadow temporary Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/1378f587 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1378f587 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1378f587 Branch: refs/heads/master Commit: 1378f5874eb1e40ecf41d7b2e05a2b6557c70a9e Parents: 55e3f71 Author: misakuo <misa...@apache.org> Authored: Wed Mar 21 14:39:37 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Wed Mar 21 14:39:37 2018 +0800 -- .../sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1378f587/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java b/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java index 288be62..b4adbb4 100644 --- a/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java +++ b/android/sdk/src/main/java/com/taobao/weex/utils/BoxShadowUtil.java @@ -65,12 +65,12 @@ import java.util.regex.Pattern; public class BoxShadowUtil { private static final String TAG = "BoxShadowUtil"; - private static boolean sBoxShadowEnabled = true; + private static boolean sBoxShadowEnabled = false /*disable box-shadow temporary*/; private static Pattern sColorPattern; public static void setBoxShadowEnabled(boolean enabled) { -sBoxShadowEnabled = enabled; +//sBoxShadowEnabled = enabled; WXLogUtils.w(TAG, "Switch box-shadow status: " + enabled); }
incubator-weex git commit: *[android] fix no input event when current value equals to default value
Repository: incubator-weex Updated Branches: refs/heads/master 770110118 -> 55e3f71d4 *[android] fix no input event when current value equals to default value Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/55e3f71d Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/55e3f71d Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/55e3f71d Branch: refs/heads/master Commit: 55e3f71d41d69b651abd190d9d262bbd7e8a05af Parents: 7701101 Author: misakuo <misa...@apache.org> Authored: Fri Mar 16 10:37:20 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Wed Mar 21 14:35:45 2018 +0800 -- .../weex/ui/component/AbstractEditComponent.java | 15 +-- 1 file changed, 1 insertion(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/55e3f71d/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 245f042..1c78d42 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 @@ -259,7 +259,6 @@ public abstract class AbstractEditComponent extends WXComponent { }); } else if (type.equals(Constants.Event.INPUT)) { addTextChangedListener(new TextWatcher() { -boolean hasChangeForDefaultValue = false; @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { @@ -278,20 +277,8 @@ public abstract class AbstractEditComponent extends WXComponent { mBeforeText = s.toString(); - if(!hasChangeForDefaultValue){ -if (getDomObject() != null && getDomObject().getAttrs() != null) { - Object val = getDomObject().getAttrs().get(Constants.Name.VALUE); - String valString = WXUtils.getString(val, null); - if (mBeforeText != null && mBeforeText.equals(valString)) { -hasChangeForDefaultValue = true; -return; - } -} - } + fireEvent(Constants.Event.INPUT, s.toString()); - if (!mIgnoreNextOnInputEvent) { -fireEvent(Constants.Event.INPUT, s.toString()); - } } @Override
[GitHub] incubator-weex pull request #1075: [Android] fix no input event when current...
Github user misakuo closed the pull request at: https://github.com/apache/incubator-weex/pull/1075 ---
[GitHub] incubator-weex pull request #1075: [Android] fix no input event when current...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1075 [Android] fix no input event when current value equals to default value You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex patch-input-event Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1075.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1075 commit 2e08626ddd183c382f91e45b60594e67fe0e2b3c Author: misakuo <misakuo@...> Date: 2018-03-16T02:37:20Z *[android] fix no input event when current value equals to default value ---
incubator-weex git commit: [WEEX-253][android]WXScroller Handler should use mainLooper ensure main thread
Repository: incubator-weex Updated Branches: refs/heads/master 0547dbaf6 -> 770110118 [WEEX-253][android]WXScroller Handler should use mainLooper ensure main thread Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/77011011 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/77011011 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/77011011 Branch: refs/heads/master Commit: 770110118b1059d1b81a89cebfc7f504c8344ce3 Parents: 0547dba Author: jianbai.gbj <jianbai@alibaba-inc.com> Authored: Tue Mar 20 10:56:12 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 20 12:41:27 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/component/WXScroller.java| 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/77011011/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java index 4e3561d..f21d33b 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXScroller.java @@ -24,6 +24,7 @@ import android.graphics.Point; import android.graphics.Rect; import android.os.Build; import android.os.Handler; +import android.os.Looper; import android.support.annotation.NonNull; import android.text.TextUtils; import android.view.View; @@ -107,7 +108,7 @@ public class WXScroller extends WXVContainer implements WXScrollViewL private int mContentHeight = 0; private WXStickyHelper stickyHelper; - private Handler handler=new Handler(); + private Handler handler=new Handler(Looper.getMainLooper()); private boolean isScrollable = true;
[2/2] incubator-weex git commit: [WEEX-244][android]Weex Android Support W3c Force Api
[WEEX-244][android]Weex Android Support W3c Force Api Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/d7a12fd2 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/d7a12fd2 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/d7a12fd2 Branch: refs/heads/master Commit: d7a12fd24002863ae1cf4b9dc00163cf411a27cc Parents: bdd6c2e Author: jianbai.gbj <jianbai@alibaba-inc.com> Authored: Fri Mar 9 11:19:47 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 20 12:40:31 2018 +0800 -- .../main/java/com/taobao/weex/ui/view/gesture/WXGesture.java | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/d7a12fd2/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java index 1bac140..3335d9e 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java @@ -383,7 +383,12 @@ public class WXGesture extends GestureDetector.SimpleOnGestureListener implement pageXY = getEventLocInPageCoordinate(motionEvent, pointerIndex, pos); screenXY = getEventLocInScreenCoordinate(motionEvent, pointerIndex, pos); } -return createJSONObject(screenXY, pageXY, (float) motionEvent.getPointerId(pointerIndex)); +JSONObject map = createJSONObject(screenXY, pageXY, (float) motionEvent.getPointerId(pointerIndex)); +float force = motionEvent.getPressure(); +if(force > 0 && force < 1) { + map.put("force", motionEvent.getPressure()); +} +return map; } /**
[1/2] incubator-weex git commit: [WEEX-244][android]Weex Android Support W3c Force Api & wson improve for JSONField
Repository: incubator-weex Updated Branches: refs/heads/master bdd6c2e6b -> 0547dbaf6 [WEEX-244][android]Weex Android Support W3c Force Api & wson improve for JSONField Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/0547dbaf Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/0547dbaf Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/0547dbaf Branch: refs/heads/master Commit: 0547dbaf62f8f29a71a87915d8eacfcfd50008ef Parents: d7a12fd Author: jianbai.gbj <jianbai@alibaba-inc.com> Authored: Fri Mar 9 16:23:44 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 20 12:40:31 2018 +0800 -- .../main/java/com/taobao/weex/wson/Wson.java| 29 +- .../java/com/taobao/weex/wson/AnnoTest.java | 41 .../test/java/com/taobao/weex/wson/Person.java | 30 ++ 3 files changed, 98 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0547dbaf/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java b/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java index 5741f8a..85d740f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java +++ b/android/sdk/src/main/java/com/taobao/weex/wson/Wson.java @@ -24,6 +24,7 @@ import android.support.v4.util.LruCache; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.annotation.JSONField; import com.taobao.weex.utils.WXLogUtils; import java.lang.reflect.Array; @@ -499,7 +500,7 @@ public class Wson { if(object.getClass().isEnum()){ writeObject(JSON.toJSONString(object)); }else{ -writeMap(toMap(object)); +writeAdapterObject(object); } refs.remove(refs.size()-1); } @@ -600,6 +601,19 @@ public class Wson { position++; } +private final void writeAdapterObject(Object object){ +if(specialClass.get(object.getClass().getName()) != null){ +writeObject(JSON.toJSON(object)); +return; +} +try{ +writeMap(toMap(object)); +}catch (Exception e){ +specialClass.put(object.getClass().getName(), true); +writeObject(JSON.toJSON(object)); +} +} + private final Map toMap(Object object){ Map map = new JSONObject(); try { @@ -637,7 +651,11 @@ public class Wson { map.put(fieldName, value); } }catch (Exception e){ -throw new RuntimeException(e); +if(e instanceof RuntimeException){ +throw (RuntimeException)e; +}else{ +throw new RuntimeException(e); +} } return map; } @@ -749,6 +767,7 @@ public class Wson { private static final String METHOD_PREFIX_IS = "is"; private static LruCache<String, List> methodsCache = new LruCache<>(128); private static LruCache<String, List> fieldsCache = new LruCache<>(128); +private static LruCache<String, Boolean> specialClass = new LruCache<>(16); private static final List getBeanMethod(String key, Class targetClass){ @@ -766,6 +785,9 @@ public class Wson { String methodName = method.getName(); if(methodName.startsWith(METHOD_PREFIX_GET) || methodName.startsWith(METHOD_PREFIX_IS)) { +if(method.getAnnotation(JSONField.class) != null){ +throw new UnsupportedOperationException("getBeanMethod JSONField Annotation Not Handled, Use toJSON"); +} methods.add(method); } } @@ -785,6 +807,9 @@ public class Wson { if((field.getModifiers() & Modifier.STATIC) != 0){ continue; } +if(field.getAnnotation(JSONField.class) != null){ +throw new UnsupportedOperationException("getBeanMethod JSONField Annotation Not Handled, Use toJSON"); +} fieldList.add(field); } fieldsCache.put(key, fieldList); http://git-wip-us.apache.org/repos/asf/
incubator-weex git commit: [WEEX-230][android] Weex Input Value Filter By Diff Update
Repository: incubator-weex Updated Branches: refs/heads/master dd2e5e8f9 -> bdd6c2e6b [WEEX-230][android] Weex Input Value Filter By Diff 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/bdd6c2e6 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/bdd6c2e6 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/bdd6c2e6 Branch: refs/heads/master Commit: bdd6c2e6b9da106bd16ec93a6cf7a4bc948fef35 Parents: dd2e5e8 Author: jianbai.gbj <jianbai@alibaba-inc.com> Authored: Tue Mar 6 17:01:00 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 20 12:39:16 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/bdd6c2e6/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java b/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java index 397be0c..5e8b5bb 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java @@ -828,6 +828,7 @@ public class WXDomObject extends CSSNode implements Cloneable,ImmutableDomObject if(updates == null){ return false; } +/** Set<Map.Entry<String,Object>> entries = updates.entrySet(); Iterator<Map.Entry<String,Object>> it = entries.iterator(); while (it.hasNext()){ @@ -844,7 +845,7 @@ public class WXDomObject extends CSSNode implements Cloneable,ImmutableDomObject it.remove(); continue; } -} +}*/ return updates.size() > 0; }
[GitHub] incubator-weex issue #1058: [WEEX-233] [android] More enhanced about c...
Github user misakuo commented on the issue: https://github.com/apache/incubator-weex/pull/1058 This pull request has been merged, please close it manually ð¤ @TheKingOfGods ---
[2/3] incubator-weex git commit: + [android] support call reload、goForward、goBack、postMessage methods by component
+ [android] support call reloadãgoForwardãgoBackãpostMessage methods by 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/c542c2c4 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c542c2c4 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c542c2c4 Branch: refs/heads/master Commit: c542c2c49c4622b5b613c9b0ea24e6e32a464c1d Parents: fbaffef Author: åéº <haonan@alibaba-inc.com> Authored: Thu Mar 8 16:03:42 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 20 12:36:08 2018 +0800 -- .../com/taobao/weex/ui/component/WXWeb.java | 43 ++ .../java/com/taobao/weex/ui/view/IWebView.java | 6 +- .../java/com/taobao/weex/ui/view/WXWebView.java | 89 ++-- 3 files changed, 75 insertions(+), 63 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c542c2c4/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java index 81c649a..ae910d0 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java @@ -28,6 +28,7 @@ import com.taobao.weex.WXSDKInstance; import com.taobao.weex.WXSDKManager; import com.taobao.weex.annotation.Component; import com.taobao.weex.adapter.URIAdapter; +import com.taobao.weex.annotation.JSMethod; import com.taobao.weex.common.Constants; import com.taobao.weex.dom.WXDomObject; import com.taobao.weex.ui.view.IWebView; @@ -56,8 +57,20 @@ public class WXWeb extends WXComponent { createWebView(); } -protected void createWebView(){ -mWebView = new WXWebView(getContext()); +protected void createWebView(){ +String origin = null; +try { +String bundleUrl = WXSDKManager.getInstance().getSDKInstance(getInstanceId()).getBundleUrl(); +Uri uri = Uri.parse(bundleUrl); +String scheme = uri.getScheme(); +String authority = uri.getAuthority(); +if (!TextUtils.isEmpty(scheme) && !TextUtils.isEmpty(authority)) { +origin = scheme + "://" + authority; +} +} catch (Exception e) { +// do noting +} +mWebView = new WXWebView(getContext(), origin); } @Override @@ -100,9 +113,7 @@ public class WXWeb extends WXComponent { }); mWebView.setOnMessageListener(new IWebView.OnMessageListener() { @Override -public void onMessage(Object msg) { -Map<String, Object> params = new HashMap<>(); -params.put("data", msg); +public void onMessage(Map<String, Object> params) { fireEvent(Constants.Event.ONMESSAGE, params); } }); @@ -187,30 +198,26 @@ public class WXWeb extends WXComponent { } private void loadDataWithBaseURL(String source) { -String baseUrl = null; -try { -String bundleUrl = WXSDKManager.getInstance().getSDKInstance(getInstanceId()).getBundleUrl(); -Uri uri = Uri.parse(bundleUrl); -baseUrl = uri.getScheme() + "://" + uri.getAuthority(); -} catch (Exception e) { -// do noting -} -getWebView().loadDataWithBaseURL(source, baseUrl); +getWebView().loadDataWithBaseURL(source); } -private void reload() { +@JSMethod +public void reload() { getWebView().reload(); } -private void goForward() { +@JSMethod +public void goForward() { getWebView().goForward(); } -private void goBack() { +@JSMethod +public void goBack() { getWebView().goBack(); } -private void postMessage(Object msg) { +@JSMethod +public void postMessage(Object msg) { getWebView().postMessage(msg); } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c542c2c4/android/sdk/src/main/java/com/taobao/weex/ui/view/IWebView.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/IWebView.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/IWebView.java index 5b0d332..e38c3ca 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/IWebView.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/IWebView.java @@ -20,11 +20,13 @@ package com.taobao.weex.ui.view; import android.view.View; +import java.util.Map; +
[1/3] incubator-weex git commit: + [android] update test case about component
Repository: incubator-weex Updated Branches: refs/heads/master 4a3b952f4 -> dd2e5e8f9 + [android] update test case about 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/dd2e5e8f Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/dd2e5e8f Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/dd2e5e8f Branch: refs/heads/master Commit: dd2e5e8f95a8135c1485052fa8cf14bb60359503 Parents: c542c2c Author: åéº <haonan@alibaba-inc.com> Authored: Fri Mar 9 11:32:00 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 20 12:36:08 2018 +0800 -- .../com/taobao/weex/ui/component/WXWebTest.java | 33 ++-- .../com/taobao/weex/ui/view/WXWebViewTest.java | 20 +++- 2 files changed, 49 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dd2e5e8f/android/sdk/src/test/java/com/taobao/weex/ui/component/WXWebTest.java -- diff --git a/android/sdk/src/test/java/com/taobao/weex/ui/component/WXWebTest.java b/android/sdk/src/test/java/com/taobao/weex/ui/component/WXWebTest.java index a582ac0..56b0b72 100644 --- a/android/sdk/src/test/java/com/taobao/weex/ui/component/WXWebTest.java +++ b/android/sdk/src/test/java/com/taobao/weex/ui/component/WXWebTest.java @@ -34,6 +34,8 @@ import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; import java.lang.reflect.InvocationTargetException; +import java.util.HashMap; +import java.util.Map; import static org.junit.Assert.*; @@ -56,6 +58,7 @@ public class WXWebTest { IWebView mIWebView; OnPageListener mOnPageListener; OnErrorListener mOnErrorListener; +OnMessageListener mOnMessageListener; ProxyWebView(IWebView proxy){ mIWebView = proxy; @@ -77,6 +80,11 @@ public class WXWebTest { } @Override +public void loadDataWithBaseURL(String source) { + mIWebView.loadDataWithBaseURL(source); +} + +@Override public void reload() { mIWebView.reload(); } @@ -92,6 +100,9 @@ public class WXWebTest { } @Override +public void postMessage(Object msg) {} + +@Override public void setShowLoading(boolean shown) { mIWebView.setShowLoading(shown); } @@ -107,6 +118,12 @@ public class WXWebTest { mIWebView.setOnPageListener(listener); mOnPageListener = listener; } + +@Override +public void setOnMessageListener(OnMessageListener listener) { + mIWebView.setOnMessageListener(listener); + mOnMessageListener = listener; +} } @Before @@ -127,24 +144,34 @@ public class WXWebTest { public void testSetProperty() throws Exception { component.setProperty(Constants.Name.SHOW_LOADING,true); component.setProperty(Constants.Name.SRC,"http://taobao.com;); +component.setProperty(Constants.Name.SOURCE, "hello weex"); } @Test public void testSetAction() throws Exception { -component.setAction(WXWeb.GO_BACK); -component.setAction(WXWeb.GO_FORWARD); -component.setAction(WXWeb.RELOAD); +Map<String, Object> msg = new HashMap<>(); +msg.put("test1", 1); +msg.put("test2", "2"); +component.setAction(WXWeb.GO_BACK, null); +component.setAction(WXWeb.GO_FORWARD, null); +component.setAction(WXWeb.RELOAD, null); +component.setAction(WXWeb.POST_MESSAGE, msg); } @Test public void testListener() throws Exception { +Map<String, Object> msg = new HashMap<>(); +msg.put("test1", 1); +msg.put("test2", "2"); component.addEvent(Constants.Event.RECEIVEDTITLE); component.addEvent(Constants.Event.PAGESTART); component.addEvent(Constants.Event.PAGEFINISH); component.addEvent(Constants.Event.ERROR); +component.addEvent(Constants.Event.ONMESSAGE); mWebView.mOnPageListener.onPageFinish("http://taobao.com",true,true); mWebView.mOnPageListener.onReceivedTitle("test"); mWebView.mOnPageListener.onPageStart("http://taobao.com;); mWebView.mOnErrorListener.onError("test","error occurred"); +mWebView.mOnMessageListener.onMessage(msg); } } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dd2e5e8f/android/sdk/src/test/java/com/taobao/weex/ui/view/WXWebViewTest.java -- diff --git a/android/sdk/src/test/java/com/taobao/weex/ui/view/WXWebViewTest.java b/android/sdk/src/test/java/com/taobao/weex/ui/view/WXWebViewTest.java index fe1913c..7b8b5cd 100644 --- a/android/s
[3/3] incubator-weex git commit: + [android] support communication between weex and web
+ [android] support communication between weex and 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/fbaffef2 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/fbaffef2 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/fbaffef2 Branch: refs/heads/master Commit: fbaffef2e304448761a494451f505cf2c6c04bc9 Parents: 4a3b952 Author: åéº <haonan@alibaba-inc.com> Authored: Wed Mar 7 19:09:53 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 20 12:36:08 2018 +0800 -- .../java/com/taobao/weex/common/Constants.java | 6 +- .../com/taobao/weex/ui/component/WXWeb.java | 42 +- .../taobao/weex/ui/module/WXWebViewModule.java | 21 ++- .../java/com/taobao/weex/ui/view/IWebView.java | 7 + .../java/com/taobao/weex/ui/view/WXWebView.java | 138 ++- 5 files changed, 201 insertions(+), 13 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/fbaffef2/android/sdk/src/main/java/com/taobao/weex/common/Constants.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java index a994663..4873f1f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java @@ -108,6 +108,7 @@ public class Constants { String FILTER = "filter"; String QUALITY = "quality"; String SRC = "src"; +String SOURCE = "source"; String PLACE_HOLDER = "placeHolder"; String RESIZE_MODE = "resizeMode"; String AUTO_RECYCLE = "autoBitmapRecycle"; @@ -326,11 +327,8 @@ public class Constants { String DESTORY = "destroy"; } - String STOP_PROPAGATION = "stopPropagation"; - - - +String ONMESSAGE = "message"; } public interface PSEUDO { http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/fbaffef2/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java index d2fe72b..81c649a 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXWeb.java @@ -25,6 +25,7 @@ import android.text.TextUtils; import android.view.View; import com.taobao.weex.WXSDKInstance; +import com.taobao.weex.WXSDKManager; import com.taobao.weex.annotation.Component; import com.taobao.weex.adapter.URIAdapter; import com.taobao.weex.common.Constants; @@ -42,6 +43,7 @@ public class WXWeb extends WXComponent { public static final String GO_BACK = "goBack"; public static final String GO_FORWARD = "goForward"; public static final String RELOAD = "reload"; +public static final String POST_MESSAGE = "postMessage"; protected IWebView mWebView; @Deprecated @@ -96,6 +98,14 @@ public class WXWeb extends WXComponent { } } }); +mWebView.setOnMessageListener(new IWebView.OnMessageListener() { +@Override +public void onMessage(Object msg) { +Map<String, Object> params = new HashMap<>(); +params.put("data", msg); +fireEvent(Constants.Event.ONMESSAGE, params); +} +}); return mWebView.getView(); } @@ -118,6 +128,11 @@ public class WXWeb extends WXComponent { if (src != null) setUrl(src); return true; +case Constants.Name.SOURCE: +String source = WXUtils.getString(param,null); +if (source != null) +setSource(source); +return true; } return super.setProperty(key,param); } @@ -137,7 +152,14 @@ public class WXWeb extends WXComponent { } } -public void setAction(String action) { +@WXComponentProp(name = Constants.Name.SOURCE) +public void setSource(String source) { +if (!TextUtils.isEmpty(source) && getHostView() != null) { +loadDataWithBaseURL(source); +} +} + +public void setAction(String action, Object data) { if (!TextUtils.isEmpty(action)) { if (action.equals(GO_BACK)) { goBack(); @@ -145,6 +167,8 @@ public class WX
incubator-weex git commit: *[android] check update url is legal
Repository: incubator-weex Updated Branches: refs/heads/master 66c37fdcd -> 4a3b952f4 *[android] check update url is legal Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4a3b952f Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4a3b952f Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4a3b952f Branch: refs/heads/master Commit: 4a3b952f416ae7c754948ac1d0cf20ae9eecf32b Parents: 66c37fd Author: misakuo <misa...@apache.org> Authored: Fri Mar 16 11:32:05 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 16 11:32:05 2018 +0800 -- .../java/com/alibaba/weex/update/CheckForUpdateUtil.java| 9 + 1 file changed, 9 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4a3b952f/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java -- diff --git a/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java b/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java index 219c132..01cab1d 100644 --- a/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java +++ b/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java @@ -21,6 +21,7 @@ import com.taobao.weex.utils.WXLogUtils; import org.json.JSONException; import org.json.JSONObject; +import java.net.URL; import java.util.List; import java.util.Map; @@ -82,6 +83,14 @@ public class CheckForUpdateUtil { String version = params.optString("version", "latest"); String updateDate = params.optString("updateDate", ""); final String updateUrl = params.optString("updateUrl", ""); + +try { + new URL(updateUrl); +} catch (Throwable t) { + WXLogUtils.e("Update", "Invalid update url"); + return; +} + String updateDescription = params.optString("updateDescription", null); AlertDialog.Builder builder = new AlertDialog.Builder(context);
incubator-weex git commit: *[android] change versions for weekly update
Repository: incubator-weex Updated Branches: refs/heads/master a7b912361 -> 66c37fdcd *[android] change versions for weekly 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/66c37fdc Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/66c37fdc Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/66c37fdc Branch: refs/heads/master Commit: 66c37fdcd14846995da0c6ffe798ec611a45dc58 Parents: a7b9123 Author: misakuo <misa...@apache.org> Authored: Fri Mar 16 10:39:22 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 16 10:39:22 2018 +0800 -- android/playground/app/build.gradle | 4 ++-- android/sdk/build.gradle| 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/66c37fdc/android/playground/app/build.gradle -- diff --git a/android/playground/app/build.gradle b/android/playground/app/build.gradle index 351c73a..20d10e4 100755 --- a/android/playground/app/build.gradle +++ b/android/playground/app/build.gradle @@ -8,8 +8,8 @@ android { applicationId "com.alibaba.weex" minSdkVersion project.appMinSdkVersion targetSdkVersion project.targetSdkVersion -versionCode 14 -versionName "0.18" +versionCode 15 +versionName "0.18.0-beta-1" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" ndk{ abiFilters "x86" http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/66c37fdc/android/sdk/build.gradle -- diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle index 6f6339f..7e7569d 100755 --- a/android/sdk/build.gradle +++ b/android/sdk/build.gradle @@ -40,7 +40,7 @@ checkstyle { toolVersion = '6.9' } -version = "0.18.0" +version = "0.18.0-beta-1" android { compileSdkVersion project.compileSdkVersion
[GitHub] incubator-weex pull request #1071: [Android] fix selection error in picker
Github user misakuo closed the pull request at: https://github.com/apache/incubator-weex/pull/1071 ---
[1/2] incubator-weex git commit: *[android] fix selection error in picker
Repository: incubator-weex Updated Branches: refs/heads/master f77db8fe5 -> a7b912361 *[android] fix selection error in picker Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a7b91236 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a7b91236 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a7b91236 Branch: refs/heads/master Commit: a7b912361f1f31b7baabc4512b450b296ba3b0bc Parents: 4d06e61 Author: misakuo <misa...@apache.org> Authored: Tue Mar 13 18:11:49 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 15 14:11:06 2018 +0800 -- .../weex/appfram/pickers/WXPickersModule.java | 68 +--- 1 file changed, 29 insertions(+), 39 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a7b91236/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java b/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java index 426412f..ef46f8f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java +++ b/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java @@ -32,7 +32,6 @@ import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.Checkable; -import android.widget.CheckedTextView; import android.widget.ListView; import android.widget.TextView; @@ -185,29 +184,36 @@ public class WXPickersModule extends WXModule { private void performSinglePick(final List items, final Map<String, Object> options, final JSCallback callback) { selected = getOption(options, KEY_INDEX, 0); final int textColor = getColor(options, KEY_TEXT_COLOR, Color.TRANSPARENT); +final int selectionColor = getColor(options, KEY_SELECTION_COLOR, Color.TRANSPARENT); +final ArrayAdapter adapter = new ArrayAdapter( +mWXSDKInstance.getContext(), +android.R.layout.simple_list_item_single_choice, +items) { +@NonNull +@Override +public View getView(int position, View convertView, @Nullable ViewGroup parent) { +View itemView = super.getView(position, convertView, parent); + +if (itemView != null && itemView instanceof Checkable) { +boolean needSelected = position == selected; +((Checkable) itemView).setChecked(needSelected); + +if (needSelected) { +itemView.setBackgroundColor(selectionColor); +} else { +itemView.setBackgroundColor(Color.TRANSPARENT); +} +} + +if (itemView instanceof TextView && textColor != Color.TRANSPARENT) { +((TextView) itemView).setTextColor(textColor); +} +return itemView; +} +}; final AlertDialog dialog = new AlertDialog.Builder(mWXSDKInstance.getContext()) -.setAdapter( -new ArrayAdapter( -mWXSDKInstance.getContext(), - android.R.layout.simple_list_item_single_choice, -items) { -@NonNull -@Override -public View getView(int position, View convertView, @Nullable ViewGroup parent) { -View itemView = super.getView(position, convertView, parent); - -if (itemView != null && itemView instanceof CheckedTextView) { -((CheckedTextView) itemView).setChecked(position == selected); -} - -if (itemView instanceof TextView && textColor != Color.TRANSPARENT) { -((TextView) itemView).setTextColor(textColor); -} - -return itemView; -} -} , null) +.setAdapter(adapter, null) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { @@ -239,26 +245,10 @@ public class WXPickersModule extends WXModule { final ListView listView = dialog.getLis
[2/2] incubator-weex git commit: *[android] fix selection error in picker
*[android] fix selection error in picker Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4d06e619 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4d06e619 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4d06e619 Branch: refs/heads/master Commit: 4d06e6199a875060c0af9bc76d126fef01d66820 Parents: f77db8f Author: misakuo <misa...@apache.org> Authored: Tue Mar 13 17:41:01 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 15 14:11:06 2018 +0800 -- .../weex/appfram/pickers/WXPickersModule.java | 18 +- 1 file changed, 5 insertions(+), 13 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4d06e619/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java b/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java index 889f611..426412f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java +++ b/android/sdk/src/main/java/com/taobao/weex/appfram/pickers/WXPickersModule.java @@ -32,6 +32,7 @@ import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.Checkable; +import android.widget.CheckedTextView; import android.widget.ListView; import android.widget.TextView; @@ -77,7 +78,6 @@ public class WXPickersModule extends WXModule { private static final String KEY_SELECTION_COLOR = "selectionColor"; private int selected; -private View selectedView; @JSMethod public void pick(Map<String, Object> options, JSCallback callback) { @@ -182,7 +182,7 @@ public class WXPickersModule extends WXModule { } -private void performSinglePick(List items, final Map<String, Object> options, final JSCallback callback) { +private void performSinglePick(final List items, final Map<String, Object> options, final JSCallback callback) { selected = getOption(options, KEY_INDEX, 0); final int textColor = getColor(options, KEY_TEXT_COLOR, Color.TRANSPARENT); @@ -196,8 +196,9 @@ public class WXPickersModule extends WXModule { @Override public View getView(int position, View convertView, @Nullable ViewGroup parent) { View itemView = super.getView(position, convertView, parent); -if (position == selected) { -selectedView = itemView; + +if (itemView != null && itemView instanceof CheckedTextView) { +((CheckedTextView) itemView).setChecked(position == selected); } if (itemView instanceof TextView && textColor != Color.TRANSPARENT) { @@ -261,15 +262,6 @@ public class WXPickersModule extends WXModule { } }); -listView.post(WXThread.secure(new Runnable() { -@Override -public void run() { -if (selectedView != null) { -listView.performItemClick(selectedView, selected, selectedView.getId()); -} -} -})); - dialog.getWindow().getDecorView().post(WXThread.secure(new Runnable() { @Override public void run() {
[GitHub] incubator-weex pull request #1045: [Android] using android.util.Base64 inste...
Github user misakuo closed the pull request at: https://github.com/apache/incubator-weex/pull/1045 ---
[GitHub] incubator-weex issue #1045: [Android] using android.util.Base64 instead of f...
Github user misakuo commented on the issue: https://github.com/apache/incubator-weex/pull/1045 merged at #f77db8fe529fd42b632ef4eb25f70313679de4c5 ---
incubator-weex git commit: *[android] using android.util.Base64 instead of fastjson.util.Base64
Repository: incubator-weex Updated Branches: refs/heads/master 806e1a0b8 -> f77db8fe5 *[android] using android.util.Base64 instead of fastjson.util.Base64 (cherry picked from commit 3963739) Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f77db8fe Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f77db8fe Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f77db8fe Branch: refs/heads/master Commit: f77db8fe529fd42b632ef4eb25f70313679de4c5 Parents: 806e1a0 Author: misakuo <misa...@apache.org> Authored: Fri Mar 2 15:38:21 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 15 14:06:36 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/utils/FontDO.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f77db8fe/android/sdk/src/main/java/com/taobao/weex/utils/FontDO.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/FontDO.java b/android/sdk/src/main/java/com/taobao/weex/utils/FontDO.java index aa9ce7b..18467f3 100644 --- a/android/sdk/src/main/java/com/taobao/weex/utils/FontDO.java +++ b/android/sdk/src/main/java/com/taobao/weex/utils/FontDO.java @@ -21,8 +21,8 @@ package com.taobao.weex.utils; import android.graphics.Typeface; import android.net.Uri; import android.text.TextUtils; +import android.util.Base64; -import com.alibaba.fastjson.util.Base64; import com.taobao.weex.WXEnvironment; import com.taobao.weex.WXSDKInstance; import com.taobao.weex.adapter.URIAdapter; @@ -101,7 +101,7 @@ public class FontDO { if (!TextUtils.isEmpty(base64Data)) { String md5 = WXFileUtils.md5(base64Data); String filePath = WXEnvironment.getApplication().getCacheDir() + "/font-family/" + md5; -WXFileUtils.saveFile(filePath, Base64.decodeFast(base64Data), WXEnvironment.getApplication()); +WXFileUtils.saveFile(filePath, Base64.decode(base64Data, Base64.DEFAULT), WXEnvironment.getApplication()); mUrl = filePath; mType = TYPE_BASE64; WXLogUtils.d("TypefaceUtil", "Parse base64 font cost " + (System.currentTimeMillis() - start) + " ms");
[GitHub] incubator-weex pull request #1071: [Android] fix selection error in picker
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1071 [Android] fix selection error in picker testcase: http://dotwe.org/vue/212a661ed8b0aada56ee651a16e055c2 You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex patch-picker-selected Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1071.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1071 commit d0f5ab5801db60ea87980646e435652494c7739f Author: misakuo <misakuo@...> Date: 2018-03-13T09:41:01Z *[android] fix selection error in picker ---
[1/3] incubator-weex git commit: upgrade the version code
Repository: incubator-weex Updated Branches: refs/heads/master 42aa12665 -> 5bfcb7bc7 upgrade the version code Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/0763bd4e Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/0763bd4e Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/0763bd4e Branch: refs/heads/master Commit: 0763bd4eeb057278455bf50721d2fb67fb44045a Parents: 70cbe4f Author: misakuo <misa...@apache.org> Authored: Fri Mar 9 10:05:41 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 9 10:05:41 2018 +0800 -- android/playground/app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0763bd4e/android/playground/app/build.gradle -- diff --git a/android/playground/app/build.gradle b/android/playground/app/build.gradle index cd6b6c3..351c73a 100755 --- a/android/playground/app/build.gradle +++ b/android/playground/app/build.gradle @@ -8,8 +8,8 @@ android { applicationId "com.alibaba.weex" minSdkVersion project.appMinSdkVersion targetSdkVersion project.targetSdkVersion -versionCode 13 -versionName "0.5.2.5" +versionCode 14 +versionName "0.18" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" ndk{ abiFilters "x86"
[2/3] incubator-weex git commit: +[android] playground auto check for update
+[android] playground auto check for 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/1294abff Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1294abff Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1294abff Branch: refs/heads/master Commit: 1294abffcde6dab79a0521e917fb444d9a6116fd Parents: 0763bd4 Author: misakuo <misa...@apache.org> Authored: Fri Mar 9 17:32:27 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 9 17:32:27 2018 +0800 -- .../playground/app/src/main/AndroidManifest.xml | 14 ++ .../java/com/alibaba/weex/IndexActivity.java| 3 + .../alibaba/weex/update/CheckForUpdateUtil.java | 140 +++ .../com/alibaba/weex/update/Downloader.java | 112 +++ .../com/alibaba/weex/update/UpdateService.java | 108 ++ .../res/layout/common_update_notify_dialog.xml | 24 .../app/src/main/res/values-zh-rCN/strings.xml | 8 ++ .../app/src/main/res/values/strings.xml | 8 ++ .../app/src/main/res/xml/filepaths.xml | 6 + 9 files changed, 423 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1294abff/android/playground/app/src/main/AndroidManifest.xml -- diff --git a/android/playground/app/src/main/AndroidManifest.xml b/android/playground/app/src/main/AndroidManifest.xml index 6e7338a..22128e2 100755 --- a/android/playground/app/src/main/AndroidManifest.xml +++ b/android/playground/app/src/main/AndroidManifest.xml @@ -118,6 +118,20 @@ under the License. android:stateNotNeeded="true"/> + + + + + + \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1294abff/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java -- diff --git a/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java b/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java index 3cc1c5e..e4bbe99 100644 --- a/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java +++ b/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java @@ -40,6 +40,7 @@ import android.widget.TextView; import android.widget.Toast; import com.alibaba.weex.commons.AbstractWeexActivity; +import com.alibaba.weex.update.CheckForUpdateUtil; import com.google.zxing.client.android.CaptureActivity; import com.taobao.weex.WXRenderErrorCode; import com.taobao.weex.WXSDKEngine; @@ -103,6 +104,8 @@ public class IndexActivity extends AbstractWeexActivity { }; LocalBroadcastManager.getInstance(this).registerReceiver(mReloadReceiver, new IntentFilter(WXSDKEngine.JS_FRAMEWORK_RELOAD)); + +CheckForUpdateUtil.checkForUpdate(this); } @Override http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1294abff/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java -- diff --git a/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java b/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java new file mode 100644 index 000..219c132 --- /dev/null +++ b/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java @@ -0,0 +1,140 @@ +package com.alibaba.weex.update; + +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.View; +import android.widget.TextView; + +import com.alibaba.weex.R; +import com.taobao.weex.WXEnvironment; +import com.taobao.weex.WXSDKManager; +import com.taobao.weex.adapter.IWXHttpAdapter; +import com.taobao.weex.common.WXRequest; +import com.taobao.weex.common.WXResponse; +import com.taobao.weex.utils.WXLogUtils; + +import org.json.JSONException; +import org.json.JSONObject; + +import java.util.List; +import java.util.Map; + +/** + * Created by moxun on 2018/3/9. + */ + +public class CheckForUpdateUtil { + public static void checkForUpdate(final Context context) { +PackageManager pm = context.getPackageManager(); +try { + PackageInfo info = pm.getPackageInfo(context.getPackageName(), 0); + if (info != null) { +int versionCode = info.versionCode; +String updateUrl = "http://dotwe.org/release/latest?v=; + versionCode; +WXRequest request = new WXRequest();
[3/3] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1061' into apache-master
Merge remote-tracking branch 'upstream/pr1061' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5bfcb7bc Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5bfcb7bc Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5bfcb7bc Branch: refs/heads/master Commit: 5bfcb7bc7176de66f7f08c56a04f762054e08007 Parents: 42aa126 1294abf Author: misakuo <misa...@apache.org> Authored: Tue Mar 13 09:47:57 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Tue Mar 13 09:47:57 2018 +0800 -- android/playground/app/build.gradle | 4 +- .../playground/app/src/main/AndroidManifest.xml | 14 ++ .../java/com/alibaba/weex/IndexActivity.java| 3 + .../alibaba/weex/update/CheckForUpdateUtil.java | 140 +++ .../com/alibaba/weex/update/Downloader.java | 112 +++ .../com/alibaba/weex/update/UpdateService.java | 108 ++ .../res/layout/common_update_notify_dialog.xml | 24 .../app/src/main/res/values-zh-rCN/strings.xml | 8 ++ .../app/src/main/res/values/strings.xml | 8 ++ .../app/src/main/res/xml/filepaths.xml | 6 + 10 files changed, 425 insertions(+), 2 deletions(-) --
[8/9] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1061' into apache-master
Merge remote-tracking branch 'upstream/pr1061' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b258ab11 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b258ab11 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b258ab11 Branch: refs/heads/master Commit: b258ab11259e93576db971f881613aaa515bc0bd Parents: 7c5ef1c 1294abf Author: misakuo <misa...@apache.org> Authored: Mon Mar 12 14:45:31 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Mon Mar 12 14:45:31 2018 +0800 -- android/playground/app/build.gradle | 4 +- .../playground/app/src/main/AndroidManifest.xml | 14 ++ .../java/com/alibaba/weex/IndexActivity.java| 3 + .../alibaba/weex/update/CheckForUpdateUtil.java | 140 +++ .../com/alibaba/weex/update/Downloader.java | 112 +++ .../com/alibaba/weex/update/UpdateService.java | 108 ++ .../res/layout/common_update_notify_dialog.xml | 24 .../app/src/main/res/values-zh-rCN/strings.xml | 8 ++ .../app/src/main/res/values/strings.xml | 8 ++ .../app/src/main/res/xml/filepaths.xml | 6 + 10 files changed, 425 insertions(+), 2 deletions(-) --
[2/9] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/libs/armeabi/libweexjsc.so -- diff --git a/android/sdk/libs/armeabi/libweexjsc.so b/android/sdk/libs/armeabi/libweexjsc.so old mode 100644 new mode 100755 index 28ee2a3..f45aee4 Binary files a/android/sdk/libs/armeabi/libweexjsc.so and b/android/sdk/libs/armeabi/libweexjsc.so differ http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/libs/armeabi/libweexjss.so -- diff --git a/android/sdk/libs/armeabi/libweexjss.so b/android/sdk/libs/armeabi/libweexjss.so old mode 100644 new mode 100755 index dc93f8d..51bbd4d Binary files a/android/sdk/libs/armeabi/libweexjss.so and b/android/sdk/libs/armeabi/libweexjss.so differ http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/libs/armeabi/libweexjst.so -- diff --git a/android/sdk/libs/armeabi/libweexjst.so b/android/sdk/libs/armeabi/libweexjst.so index bca44ad..099256c 100755 Binary files a/android/sdk/libs/armeabi/libweexjst.so and b/android/sdk/libs/armeabi/libweexjst.so differ http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/libs/x86/libweexjsc.so -- diff --git a/android/sdk/libs/x86/libweexjsc.so b/android/sdk/libs/x86/libweexjsc.so index 3e2bf9a..b86a821 100755 Binary files a/android/sdk/libs/x86/libweexjsc.so and b/android/sdk/libs/x86/libweexjsc.so differ http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/libs/x86/libweexjss.so -- diff --git a/android/sdk/libs/x86/libweexjss.so b/android/sdk/libs/x86/libweexjss.so index 13c858f..fc8e5f6 100755 Binary files a/android/sdk/libs/x86/libweexjss.so and b/android/sdk/libs/x86/libweexjss.so differ http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java b/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java index e6084d9..96ca990 100644 --- a/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java +++ b/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java @@ -119,6 +119,9 @@ public class WXEnvironment { configs.put(WXConfig.weexVersion, String.valueOf(WXSDK_VERSION)); configs.put(WXConfig.logLevel,sLogLevel.getName()); try { + if (isApkDebugable()) { +options.put(WXConfig.debugMode, "true"); + } options.put(WXConfig.scale, Float.toString(sApplication.getResources().getDisplayMetrics().density)); }catch (NullPointerException e){ //There is little chance of NullPointerException as sApplication may be null. http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java b/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java index 475991e..bdc6f2f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java +++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java @@ -175,6 +175,26 @@ public class WXSDKInstance implements IWXActivityStateListener,DomContext, View. private ComponentObserver mComponentObserver; private boolean mIsCommitedDomAtionExp = false; + // add for clound setting, default value is true + // can use it to control weex sandbox + // if true will open weex sandbox for multi context + private boolean mUseSandBox = true; + + /** + * get sandbox switch + * @return useSandBox + */ + public boolean getUseSandBox() { +return mUseSandBox; + } + + /** + * set open SandBox + * @param flag + */ + public void setUseSandBox(boolean flag) { +mUseSandBox = flag; + } public PriorityQueue hiddenEmbeds; private int maxHiddenEmbedsNum = -1; //max hidden embed num, -1 standard for ulimit http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridge.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridge.java b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridge.java index ef30168..20b37e1 100644 --- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridge.java +++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridge.java @@ -64,9 +64,28 @@ class WXBridge implements IWXBridge { */ public native int execJS(String instanceId, String
[1/9] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil
Repository: incubator-weex Updated Branches: refs/heads/master 42aa12665 -> 8128b4c14 http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/pre-build/native-bundle-main.js -- diff --git a/pre-build/native-bundle-main.js b/pre-build/native-bundle-main.js index afb172d..e9c4e7e 100644 --- a/pre-build/native-bundle-main.js +++ b/pre-build/native-bundle-main.js @@ -1 +1,19079 @@ -(this.nativeLog||function(e){console.log(e)})("START JS FRAMEWORK 0.24.4, Build 2018-02-07 17:13. (Vue: 2.5.13-weex.5, Rax: 0.4.20)");var global=this,process={env:{}},setTimeout=global.setTimeout;!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t():"function"==typeof define&?define(t):t()}(0,function(){"use strict";var e,t,n,r;function o(e){return e&__esModule&(e,"default")?e.default:e}function i(e,t){return e(t={exports:{}},t.exports),t.exports}Array.from||(Array.from=(e=Object.prototype.toString,t=function(t){return"function"==typeof t||"[object Function]"===e.call(t)},n=Math.pow(2,53)-1,r=function(e){var t,r=(t=Number(e),isNaN(t)?0:0!==t&(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t);return Math.min(Math.max(r,0),n)},function(e){var n=Object(e);if(null==e)throw new TypeError("Array.from requires an array-like object - not null or undefined");var o,i=arguments.length>1?arguments[1]:void 0;if(void 0!==i){if(! t(i))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(o=arguments[2])}for(var a,s=r(n.length),u=t(this)?Object(new this(s)):new Array(s),c=0;c0?F:D)(e)},V=Math.min,W=function(e){return e>0?V(L(e),9007199254740991):0},U=Math.max,B=Math.min,q="__core-js_shared__",J=a[q]||(a[q]={}),z=function(e){return J[e]||(J[e]={})},H=z("keys"),G=function(e){return
[6/9] incubator-weex git commit: upgrade the version code
upgrade the version code Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/0763bd4e Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/0763bd4e Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/0763bd4e Branch: refs/heads/master Commit: 0763bd4eeb057278455bf50721d2fb67fb44045a Parents: 70cbe4f Author: misakuo <misa...@apache.org> Authored: Fri Mar 9 10:05:41 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 9 10:05:41 2018 +0800 -- android/playground/app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0763bd4e/android/playground/app/build.gradle -- diff --git a/android/playground/app/build.gradle b/android/playground/app/build.gradle index cd6b6c3..351c73a 100755 --- a/android/playground/app/build.gradle +++ b/android/playground/app/build.gradle @@ -8,8 +8,8 @@ android { applicationId "com.alibaba.weex" minSdkVersion project.appMinSdkVersion targetSdkVersion project.targetSdkVersion -versionCode 13 -versionName "0.5.2.5" +versionCode 14 +versionName "0.18" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" ndk{ abiFilters "x86"
[9/9] incubator-weex git commit: Merge remote-tracking branch 'apache/master' into apache-master
Merge remote-tracking branch 'apache/master' into apache-master # Conflicts: # android/sdk/libs/armeabi/libweexjsc.so # android/sdk/libs/armeabi/libweexjss.so Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/8128b4c1 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/8128b4c1 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/8128b4c1 Branch: refs/heads/master Commit: 8128b4c14244840f155e3b9cdb1f43bd82d4edb7 Parents: b258ab1 42aa126 Author: misakuo <misa...@apache.org> Authored: Mon Mar 12 14:47:49 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Mon Mar 12 14:47:49 2018 +0800 -- android/sdk/libs/armeabi/libweexjsc.so | Bin 276000 -> 275960 bytes android/sdk/libs/armeabi/libweexjss.so | Bin 2965560 -> 2965392 bytes .../Sources/Component/WXScrollerComponent.m | 11 +- .../Sources/Component/WXVideoComponent.h| 2 + .../Sources/Component/WXVideoComponent.m| 69 + .../WeexSDK/Sources/Component/WXWebComponent.h | 2 + .../WeexSDK/Sources/Component/WXWebComponent.m | 103 +-- .../WeexSDK/Sources/Module/WXWebViewModule.m| 8 ++ 8 files changed, 181 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/8128b4c1/android/sdk/libs/armeabi/libweexjsc.so -- diff --cc android/sdk/libs/armeabi/libweexjsc.so index f45aee4,3c386f1..3c386f1 mode 100755,100644..100755 Binary files differ http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/8128b4c1/android/sdk/libs/armeabi/libweexjss.so -- diff --cc android/sdk/libs/armeabi/libweexjss.so index 51bbd4d,bdedcc5..bdedcc5 mode 100755,100644..100755 Binary files differ
[3/9] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/assets/weex-rax.js -- diff --git a/android/sdk/assets/weex-rax.js b/android/sdk/assets/weex-rax.js new file mode 100644 index 000..19ffa62 --- /dev/null +++ b/android/sdk/assets/weex-rax.js @@ -0,0 +1,8299 @@ +/* Prepare Rax Environment APIs 0.4.20, Build 2018-02-26 19:32. */ + +var global = this; var process = {env:{}}; +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory() : + typeof define === 'function' && define.amd ? define(factory) : + (factory()); +}(this, (function () { 'use strict'; + +function unwrapExports (x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x; +} + +function createCommonjsModule(fn, module) { + return module = { exports: {} }, fn(module, module.exports), module.exports; +} + +var api = createCommonjsModule(function (module) { +module.exports = /**/ (function(modules) { // webpackBootstrap +/**/ // The module cache +/**/ var installedModules = {}; +/**/ +/**/ // The require function +/**/ function __webpack_require__(moduleId) { +/**/ +/**/// Check if module is in cache +/**/if(installedModules[moduleId]) { +/**/ return installedModules[moduleId].exports; +/**/} +/**/// Create a new module (and put it into the cache) +/**/var module = installedModules[moduleId] = { +/**/ i: moduleId, +/**/ l: false, +/**/ exports: {} +/**/}; +/**/ +/**/// Execute the module function +/**/modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/**/ +/**/// Flag the module as loaded +/**/module.l = true; +/**/ +/**/// Return the exports of the module +/**/return module.exports; +/**/ } +/**/ +/**/ +/**/ // expose the modules object (__webpack_modules__) +/**/ __webpack_require__.m = modules; +/**/ +/**/ // expose the module cache +/**/ __webpack_require__.c = installedModules; +/**/ +/**/ // define getter function for harmony exports +/**/ __webpack_require__.d = function(exports, name, getter) { +/**/if(!__webpack_require__.o(exports, name)) { +/**/ Object.defineProperty(exports, name, { +/**/configurable: false, +/**/enumerable: true, +/**/get: getter +/**/ }); +/**/} +/**/ }; +/**/ +/**/ // getDefaultExport function for compatibility with non-harmony modules +/**/ __webpack_require__.n = function(module) { +/**/var getter = module && module.__esModule ? +/**/ function getDefault() { return module['default']; } : +/**/ function getModuleExports() { return module; }; +/**/__webpack_require__.d(getter, 'a', getter); +/**/return getter; +/**/ }; +/**/ +/**/ // Object.prototype.hasOwnProperty.call +/**/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/**/ +/**/ // __webpack_public_path__ +/**/ __webpack_require__.p = ""; +/**/ +/**/ // Load entry module and return exports +/**/ return __webpack_require__(__webpack_require__.s = 3); +/**/ }) +// +/**/ ([ +/* 0 */ +/*!***!*\ + !*** ./packages/weex-rax-framework-api/node_modules/.npminstall/event-target-shim/2.0.0/event-target-shim/lib/commons.js ***! + \***/ +/*! dynamic exports provided */ +/*! all exports used */ +/*! ModuleConcatenation bailout: Module is not an ECMAScript module */ +/***/ (function(module, exports, __webpack_require__) { + +var createUniqueKey = module.exports.createUniqueKey = ( +typeof Symbol !== "undefined" ? Symbol : //eslint-disable-line no-undef +/* otherwise */ function createUniqueKey(name) { +return "[[" + name + "_" + Math.random().toFixed(8).slice(2) + "]]" +} +); + +/** + * Checks whether the given value is a non-null object or not. + * + * @param {any} x - The value to be check. + * @returns {boolean} `true` if the value is a non-null object. + * @private + */ +var isObject = module.exports.isObject = function isObject(x) { +return typeof x === "object" && x !== null +}; + +/** + * The key of listeners. + * + * @type {symbol|string} + * @private + */ +module.exports.LISTENERS = createUniqueKey("listeners"); + +/** + * A value of kind for listeners which are registered in the capturing phase.
[5/9] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil
* [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, will use // {"framework" : "Rax"} or // {"framework" : "Vue"} to distinguish type 3. if page type is neither Rax nor Vue, will use global context runtime 4. delete some usless code and opt build tools, trim so Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/7c5ef1c6 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/7c5ef1c6 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/7c5ef1c6 Branch: refs/heads/master Commit: 7c5ef1c68f7c71f9179af7693ae20a691a02c971 Parents: 4b0e374 Author: yuhun-alibabaAuthored: Thu Mar 1 22:11:16 2018 +0800 Committer: yuhun-alibaba Committed: Wed Mar 7 14:58:45 2018 +0800 -- android/sdk/assets/main-backup.js | 1 + android/sdk/assets/weex-rax.js | 8299 +++ android/sdk/libs/armeabi/libweexjsb.so | Bin 22620 -> 67264 bytes android/sdk/libs/armeabi/libweexjsc.so | Bin 337468 -> 276000 bytes android/sdk/libs/armeabi/libweexjss.so | Bin 6774704 -> 2965560 bytes android/sdk/libs/armeabi/libweexjst.so | Bin 22552 -> 22552 bytes android/sdk/libs/x86/libweexjsc.so | Bin 649940 -> 66 bytes android/sdk/libs/x86/libweexjss.so | Bin 10942128 -> 8373712 bytes .../java/com/taobao/weex/WXEnvironment.java | 3 + .../java/com/taobao/weex/WXSDKInstance.java |20 + .../java/com/taobao/weex/bridge/WXBridge.java |28 + .../com/taobao/weex/bridge/WXBridgeManager.java | 266 +- .../java/com/taobao/weex/common/IWXBridge.java |29 + .../java/com/taobao/weex/common/WXConfig.java | 1 + pre-build/native-bundle-main.js | 19080 - 15 files changed, 27721 insertions(+), 6 deletions(-) --
[7/9] incubator-weex git commit: +[android] playground auto check for update
+[android] playground auto check for 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/1294abff Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1294abff Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1294abff Branch: refs/heads/master Commit: 1294abffcde6dab79a0521e917fb444d9a6116fd Parents: 0763bd4 Author: misakuo <misa...@apache.org> Authored: Fri Mar 9 17:32:27 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Fri Mar 9 17:32:27 2018 +0800 -- .../playground/app/src/main/AndroidManifest.xml | 14 ++ .../java/com/alibaba/weex/IndexActivity.java| 3 + .../alibaba/weex/update/CheckForUpdateUtil.java | 140 +++ .../com/alibaba/weex/update/Downloader.java | 112 +++ .../com/alibaba/weex/update/UpdateService.java | 108 ++ .../res/layout/common_update_notify_dialog.xml | 24 .../app/src/main/res/values-zh-rCN/strings.xml | 8 ++ .../app/src/main/res/values/strings.xml | 8 ++ .../app/src/main/res/xml/filepaths.xml | 6 + 9 files changed, 423 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1294abff/android/playground/app/src/main/AndroidManifest.xml -- diff --git a/android/playground/app/src/main/AndroidManifest.xml b/android/playground/app/src/main/AndroidManifest.xml index 6e7338a..22128e2 100755 --- a/android/playground/app/src/main/AndroidManifest.xml +++ b/android/playground/app/src/main/AndroidManifest.xml @@ -118,6 +118,20 @@ under the License. android:stateNotNeeded="true"/> + + + + + + \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1294abff/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java -- diff --git a/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java b/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java index 3cc1c5e..e4bbe99 100644 --- a/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java +++ b/android/playground/app/src/main/java/com/alibaba/weex/IndexActivity.java @@ -40,6 +40,7 @@ import android.widget.TextView; import android.widget.Toast; import com.alibaba.weex.commons.AbstractWeexActivity; +import com.alibaba.weex.update.CheckForUpdateUtil; import com.google.zxing.client.android.CaptureActivity; import com.taobao.weex.WXRenderErrorCode; import com.taobao.weex.WXSDKEngine; @@ -103,6 +104,8 @@ public class IndexActivity extends AbstractWeexActivity { }; LocalBroadcastManager.getInstance(this).registerReceiver(mReloadReceiver, new IntentFilter(WXSDKEngine.JS_FRAMEWORK_RELOAD)); + +CheckForUpdateUtil.checkForUpdate(this); } @Override http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1294abff/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java -- diff --git a/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java b/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java new file mode 100644 index 000..219c132 --- /dev/null +++ b/android/playground/app/src/main/java/com/alibaba/weex/update/CheckForUpdateUtil.java @@ -0,0 +1,140 @@ +package com.alibaba.weex.update; + +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.View; +import android.widget.TextView; + +import com.alibaba.weex.R; +import com.taobao.weex.WXEnvironment; +import com.taobao.weex.WXSDKManager; +import com.taobao.weex.adapter.IWXHttpAdapter; +import com.taobao.weex.common.WXRequest; +import com.taobao.weex.common.WXResponse; +import com.taobao.weex.utils.WXLogUtils; + +import org.json.JSONException; +import org.json.JSONObject; + +import java.util.List; +import java.util.Map; + +/** + * Created by moxun on 2018/3/9. + */ + +public class CheckForUpdateUtil { + public static void checkForUpdate(final Context context) { +PackageManager pm = context.getPackageManager(); +try { + PackageInfo info = pm.getPackageInfo(context.getPackageName(), 0); + if (info != null) { +int versionCode = info.versionCode; +String updateUrl = "http://dotwe.org/release/latest?v=; + versionCode; +WXRequest request = new WXRequest();
[GitHub] incubator-weex pull request #1061: [Android] Playground auto check for updat...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1061 [Android] Playground auto check for update You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex 0.18.0_RC Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1061.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1061 commit 0763bd4eeb057278455bf50721d2fb67fb44045a Author: misakuo <misakuo@...> Date: 2018-03-09T02:05:41Z upgrade the version code commit 1294abffcde6dab79a0521e917fb444d9a6116fd Author: misakuo <misakuo@...> Date: 2018-03-09T09:32:27Z +[android] playground auto check for update ---
[GitHub] incubator-weex pull request #1058: [WEEX-243] [android] More enhanced about ...
Github user misakuo commented on a diff in the pull request: https://github.com/apache/incubator-weex/pull/1058#discussion_r173385655 --- Diff: android/sdk/src/main/java/com/taobao/weex/ui/view/WXWebView.java --- @@ -230,7 +295,79 @@ public void onReceivedTitle(WebView view, String title) { } } +@Override --- End diff -- Can we use `addJavascriptInterface` or `console.log` as the communication channel? `window.prompt` has some known memory performance issues in the case of high frequency call ---
[GitHub] incubator-weex pull request #1057: *[android] support direction attr on styl...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1057 *[android] support direction attr on styles now `rtl`, `ltr` and `inherit` in styles is available on Android You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex feature-style-direction Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1057.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1057 commit 96e6e39076bdca6d1623bce4663d35b2ac364e10 Author: misakuo <misakuo@...> Date: 2018-03-08T04:32:08Z *[android] support direction attr on styles ---
[GitHub] incubator-weex pull request #1045: [Android] using android.util.Base64 inste...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1045 [Android] using android.util.Base64 instead of fastjson.util.Base64 You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex patch-iconfont Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1045.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1045 commit 39637399212877ce31725b03dfd01f9057798e0e Author: misakuo <misakuo@...> Date: 2018-03-02T07:38:21Z *[android] using android.util.Base64 instead of fastjson.util.Base64 ---
[2/2] incubator-weex git commit: Merge branch 'master' into feature-font-padding
Merge branch 'master' into feature-font-padding Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a59ddfe8 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a59ddfe8 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a59ddfe8 Branch: refs/heads/master Commit: a59ddfe8d2f221f212441c3a20262cf6985518de Parents: 9baf4da 6a5a621 Author: moxunAuthored: Thu Mar 1 16:21:41 2018 +0800 Committer: GitHub Committed: Thu Mar 1 16:21:41 2018 +0800 -- .../app/src/main/assets/weex_config_search.json | 36 + .../java/com/alibaba/weex/WXApplication.java| 2 + .../main/java/com/taobao/weex/InitConfig.java | 21 ++- .../main/java/com/taobao/weex/WXSDKEngine.java | 5 +- .../main/java/com/taobao/weex/WXSDKManager.java | 10 ++ .../taobao/weex/adapter/ClassLoaderAdapter.java | 56 +++ .../com/taobao/weex/bridge/WXModuleManager.java | 8 +- .../java/com/taobao/weex/common/Constants.java | 5 +- .../java/com/taobao/weex/dom/WXDomObject.java | 2 +- .../taobao/weex/dom/WXRecyclerDomObject.java| 49 +- .../weex/ui/ExternalLoaderComponentHolder.java | 2 +- .../taobao/weex/ui/SimpleComponentHolder.java | 6 +- .../taobao/weex/ui/component/WXComponent.java | 4 +- .../com/taobao/weex/ui/component/WXText.java| 17 +- .../ui/component/list/BasicListComponent.java | 5 + .../ui/component/list/GapItemDecoration.java| 71 .../weex/ui/component/list/WXListComponent.java | 34 .../list/template/WXRecyclerTemplateList.java | 18 +++ .../weex/ui/config/AutoScanConfigRegister.java | 112 + .../weex/ui/config/ConfigComponentHolder.java | 161 +++ .../weex/ui/config/ConfigModuleFactory.java | 156 ++ .../taobao/weex/ui/module/WXLocaleModule.java | 4 - .../com/taobao/weex/ui/view/WXEditText.java | 2 - .../com/taobao/weex/ui/view/WXTextView.java | 42 + .../taobao/weex/ui/view/gesture/WXGesture.java | 11 +- 25 files changed, 801 insertions(+), 38 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a59ddfe8/android/sdk/src/main/java/com/taobao/weex/common/Constants.java -- diff --cc android/sdk/src/main/java/com/taobao/weex/common/Constants.java index 44924da,5e16fbb..a994663 --- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java @@@ -201,7 -203,7 +203,8 @@@ public class Constants String STRATEGY = "strategy"; String ALLOW_COPY_PASTE = "allowCopyPaste"; +String INCLUDE_FONT_PADDING = "includeFontPadding"; + String ENABLE_COPY = "enableCopy";
[1/2] incubator-weex git commit: +[android] add property include-font-padding to set whether the text includes extra top and bottom padding to make room for accents that go above the normal ascent and
Repository: incubator-weex Updated Branches: refs/heads/master 6a5a621ac -> a59ddfe8d +[android] add property include-font-padding to set whether the text includes extra top and bottom padding to make room for accents that go above the normal ascent and descent. Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/9baf4da4 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/9baf4da4 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/9baf4da4 Branch: refs/heads/master Commit: 9baf4da453198975cc9d8a1a9d22b891d04b834b Parents: 9d11a5d Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 11:59:44 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 11:59:44 2018 +0800 -- .../src/main/java/com/taobao/weex/common/Constants.java | 1 + .../main/java/com/taobao/weex/dom/WXTextDomObject.java | 11 --- 2 files changed, 9 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/9baf4da4/android/sdk/src/main/java/com/taobao/weex/common/Constants.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java index 64b59c8..44924da 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java @@ -201,6 +201,7 @@ public class Constants { String STRATEGY = "strategy"; String ALLOW_COPY_PASTE = "allowCopyPaste"; +String INCLUDE_FONT_PADDING = "includeFontPadding"; http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/9baf4da4/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java b/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java index 6bb1feb..142b729 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/WXTextDomObject.java @@ -57,6 +57,7 @@ import com.taobao.weex.utils.TypefaceUtil; import com.taobao.weex.utils.WXDomUtils; import com.taobao.weex.utils.WXLogUtils; import com.taobao.weex.utils.WXResourceUtils; +import com.taobao.weex.utils.WXUtils; import java.util.Collections; import java.util.LinkedList; @@ -144,6 +145,7 @@ public class WXTextDomObject extends WXDomObject { private int mNumberOfLines = UNSET; private int mFontSize = UNSET; private int mLineHeight = UNSET; + private boolean mIncludeFontPadding = false; private float previousWidth = Float.NaN; private String mFontFamily = WXEnvironment.getGlobalFontFamilyName(); private String mText = null; @@ -279,6 +281,9 @@ public class WXTextDomObject extends WXDomObject { */ private void updateStyleAndText() { updateStyleImp(getStyles()); +if (getAttrs() != null && getAttrs().containsKey(Constants.Name.INCLUDE_FONT_PADDING)) { + mIncludeFontPadding = WXUtils.getBoolean(getAttrs().get(Constants.Name.INCLUDE_FONT_PADDING), false); +} mText = WXAttr.getValue(getAttrs()); } @@ -341,7 +346,7 @@ public class WXTextDomObject extends WXDomObject { forceRtl = direction.equals(Constants.Name.RTL); } layout = StaticLayoutProxy.create(spanned, mTextPaint, (int) Math.ceil(textWidth), - Layout.Alignment.ALIGN_NORMAL, 1, 0, false, forceRtl); + Layout.Alignment.ALIGN_NORMAL, 1, 0, mIncludeFontPadding, forceRtl); } else { layout = previousLayout; } @@ -361,7 +366,7 @@ public class WXTextDomObject extends WXDomObject { adjustSpansRange(spanned, builder); spanned = builder; return new StaticLayout(spanned, mTextPaint, (int) Math.ceil(textWidth), -Layout.Alignment.ALIGN_NORMAL, 1, 0, false); +Layout.Alignment.ALIGN_NORMAL, 1, 0, mIncludeFontPadding); } } return layout; @@ -405,7 +410,7 @@ public class WXTextDomObject extends WXDomObject { startOffset -= 1; } source.delete(startOffset, startOffset+1); -layout = new StaticLayout(source, paint, desired, Layout.Alignment.ALIGN_NORMAL, 1, 0, false); +layout = new StaticLayout(source, paint, desired, Layout.Alignment.ALIGN_NORMAL, 1, 0, mIncludeFontPadding); if (layout.getLineCount() <= 1) { ret = source; break;
[2/3] incubator-weex git commit: *[android] text localization
*[android] text localization Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/d67a3af2 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/d67a3af2 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/d67a3af2 Branch: refs/heads/master Commit: d67a3af27573f483cbe0022e1df6ee5103f260f7 Parents: 94ee706 Author: misakuo <misa...@apache.org> Authored: Wed Feb 28 20:58:37 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Wed Feb 28 20:58:37 2018 +0800 -- .../sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/d67a3af2/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java index 914171f..e4a9808 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java @@ -35,7 +35,6 @@ import com.taobao.weex.ui.view.gesture.WXGesture; import com.taobao.weex.ui.view.gesture.WXGestureObservable; import java.lang.ref.WeakReference; -import java.util.Locale; /** * TextView wrapper @@ -130,13 +129,13 @@ public class WXTextView extends View implements WXGestureObservable, IWXTextView @Override public boolean onLongClick(View v) { PopupMenu popupMenu = new PopupMenu(getContext(), WXTextView.this); - boolean isCN = false; + String s = "Copy"; try { -isCN = Locale.getDefault().toString().startsWith("zh_CN"); +s = getContext().getResources().getString(android.R.string.copy); } catch (Throwable t) { //ignore } - final String title = isCN ? "å¤å¶" : "Copy"; + final String title = s; popupMenu.getMenu().add(title); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override
[1/2] incubator-weex git commit: *[improvement] made onFocusChangeListener public
Repository: incubator-weex Updated Branches: refs/heads/master c20aad50a -> 6a5a621ac *[improvement] made onFocusChangeListener public Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/843eba82 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/843eba82 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/843eba82 Branch: refs/heads/master Commit: 843eba82ab445874f5f328c9339829329cdfd85b Parents: b48c23d Author: misakuo <misa...@apache.org> Authored: Mon Feb 26 11:09:36 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Mon Feb 26 11:09:36 2018 +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/843eba82/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 9651cd7..6c02fdf 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 @@ -246,7 +246,7 @@ public abstract class WXComponent implements IWXObject, IWXActi void onHostViewClick(); } - interface OnFocusChangeListener{ + public interface OnFocusChangeListener{ void onFocusChange(boolean hasFocus); }
[1/3] incubator-weex git commit: *[feature] feature to copy text value
Repository: incubator-weex Updated Branches: refs/heads/master a7bfb9a5f -> c20aad50a *[feature] feature to copy text value Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/94ee706e Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/94ee706e Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/94ee706e Branch: refs/heads/master Commit: 94ee706e997c1e5dc17b10454f9a4497bf8ab609 Parents: 95e16d8 Author: misakuo <misa...@apache.org> Authored: Sat Feb 24 10:55:33 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Feb 24 10:55:33 2018 +0800 -- .../java/com/taobao/weex/common/Constants.java | 1 + .../com/taobao/weex/ui/component/WXText.java| 17 .../com/taobao/weex/ui/view/WXTextView.java | 43 3 files changed, 51 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/94ee706e/android/sdk/src/main/java/com/taobao/weex/common/Constants.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java index 64b59c8..86ef336 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java @@ -201,6 +201,7 @@ public class Constants { String STRATEGY = "strategy"; String ALLOW_COPY_PASTE = "allowCopyPaste"; +String ENABLE_COPY = "enableCopy"; http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/94ee706e/android/sdk/src/main/java/com/taobao/weex/ui/component/WXText.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXText.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXText.java index 6a9a99a..bb1bd4b 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXText.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXText.java @@ -18,28 +18,19 @@ */ package com.taobao.weex.ui.component; -import android.content.BroadcastReceiver; import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; import android.support.annotation.NonNull; -import android.support.v4.content.LocalBroadcastManager; import android.text.Layout; -import com.taobao.weex.WXEnvironment; import com.taobao.weex.WXSDKInstance; -import com.taobao.weex.WXSDKManager; import com.taobao.weex.annotation.Component; import com.taobao.weex.common.Constants; -import com.taobao.weex.dom.DOMActionContext; -import com.taobao.weex.dom.WXDomHandler; import com.taobao.weex.dom.WXDomObject; import com.taobao.weex.ui.ComponentCreator; import com.taobao.weex.ui.flat.FlatComponent; import com.taobao.weex.ui.flat.widget.TextWidget; import com.taobao.weex.ui.view.WXTextView; -import com.taobao.weex.utils.TypefaceUtil; -import com.taobao.weex.utils.WXLogUtils; +import com.taobao.weex.utils.WXUtils; import java.lang.reflect.InvocationTargetException; @@ -144,6 +135,12 @@ public class WXText extends WXComponent implements FlatComponenthttp://git-wip-us.apache.org/repos/asf/incubator-weex/blob/94ee706e/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java index a98be22..914171f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXTextView.java @@ -18,11 +18,15 @@ */ package com.taobao.weex.ui.view; +import android.content.ClipData; +import android.content.ClipboardManager; import android.content.Context; import android.graphics.Canvas; import android.support.annotation.Nullable; +import android.support.v7.widget.PopupMenu; import android.text.Layout; import android.text.TextUtils; +import android.view.MenuItem; import android.view.MotionEvent; import android.view.View; @@ -31,6 +35,7 @@ import com.taobao.weex.ui.view.gesture.WXGesture; import com.taobao.weex.ui.view.gesture.WXGestureObservable; import java.lang.ref.WeakReference; +import java.util.Locale; /** * TextView wrapper @@ -118,4 +123,42 @@ public class WXTextView extends View implements WXGestureObservable, IWXTextView public WXText getComponent() { return null != mWeakReference ? mWeakReference.get() : null; } + + public void enableCopy(boolean enable) { +if (enable) { + setOnLongClickListener(new OnLongClickLi
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1040' into apache-master
Merge remote-tracking branch 'upstream/pr1040' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/6a5a621a Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/6a5a621a Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/6a5a621a Branch: refs/heads/master Commit: 6a5a621ac36e5f8e63609e5c6514ca3848bab6eb Parents: c20aad5 843eba8 Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:20:03 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:20:03 2018 +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/6a5a621a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java --
[1/2] incubator-weex git commit: *[android] fix input method can not evoke when property allow-copy-paste was set
Repository: incubator-weex Updated Branches: refs/heads/master b376260d5 -> a7bfb9a5f *[android] fix input method can not evoke when property allow-copy-paste was set Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/e59bb414 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/e59bb414 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/e59bb414 Branch: refs/heads/master Commit: e59bb414b70963832760cbd3de448f4f5006855a Parents: 95e16d8 Author: misakuo <misa...@apache.org> Authored: Sat Feb 24 10:10:34 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Feb 24 10:10:34 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java | 2 -- 1 file changed, 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/e59bb414/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 4f41340..8401115 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 @@ -107,14 +107,12 @@ public class WXEditText extends EditText implements WXGestureObservable { mAllowCopyPaste = allow; if (allow) { setLongClickable(true); - setTextIsSelectable(true); setCustomSelectionActionModeCallback(null); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { setCustomInsertionActionModeCallback(null); } } else { setLongClickable(false); - setTextIsSelectable(false); ActionMode.Callback callback = new ActionMode.Callback() { @Override public boolean onCreateActionMode(ActionMode mode, Menu menu) {
[1/2] incubator-weex git commit: *[android] fix NoSuchMethodException in locale module on api 20 and lower
Repository: incubator-weex Updated Branches: refs/heads/master a3a05f089 -> b376260d5 *[android] fix NoSuchMethodException in locale module on api 20 and lower Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/e016be48 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/e016be48 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/e016be48 Branch: refs/heads/master Commit: e016be489f45199d40c9b44e0f36227c15d9e86c Parents: 95e16d8 Author: misakuo <misa...@apache.org> Authored: Sat Feb 24 10:05:18 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Feb 24 10:05:18 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/module/WXLocaleModule.java | 4 1 file changed, 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/e016be48/android/sdk/src/main/java/com/taobao/weex/ui/module/WXLocaleModule.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/module/WXLocaleModule.java b/android/sdk/src/main/java/com/taobao/weex/ui/module/WXLocaleModule.java index 9838c47..6a3de81 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/module/WXLocaleModule.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/module/WXLocaleModule.java @@ -91,12 +91,8 @@ public class WXLocaleModule extends WXModule { } else { StringBuilder sb = new StringBuilder(); String language = locale.getLanguage(); - String script = locale.getScript(); String region = locale.getCountry(); sb.append(language); - if (!TextUtils.isEmpty(script)) { -sb.append("-").append(script); - } if (!TextUtils.isEmpty(region)) { sb.append("-").append(region); }
[1/3] incubator-weex git commit: [WEEX-228][android] ShouldStopPropagation Use ShortName StopPropagation
Repository: incubator-weex Updated Branches: refs/heads/master b948d6855 -> a3a05f089 [WEEX-228][android] ShouldStopPropagation Use ShortName StopPropagation Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/1c429f25 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1c429f25 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1c429f25 Branch: refs/heads/master Commit: 1c429f25a5ca49d546a5ed3188bac96943ae5722 Parents: 95e16d8 Author: jianbai.gbjAuthored: Tue Feb 27 11:33:42 2018 +0800 Committer: jianbai.gbj Committed: Tue Feb 27 11:33:42 2018 +0800 -- .../src/main/java/com/taobao/weex/common/Constants.java | 2 +- .../java/com/taobao/weex/ui/component/WXComponent.java | 2 +- .../java/com/taobao/weex/ui/view/gesture/WXGesture.java | 11 ++- 3 files changed, 8 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1c429f25/android/sdk/src/main/java/com/taobao/weex/common/Constants.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java index 64b59c8..ab1c808 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java @@ -323,7 +323,7 @@ public class Constants { } -String SHOULD_STOP_PROPAGATION = "shouldStopPropagation"; +String STOP_PROPAGATION = "stopPropagation"; http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1c429f25/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 9651cd7..0fa4eee 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 @@ -1161,7 +1161,7 @@ public abstract class WXComponent implements IWXObject, IWXActi } } } -if(Constants.Event.SHOULD_STOP_PROPAGATION.equals(type)){ +if(Constants.Event.STOP_PROPAGATION.equals(type)){ return true; } return false; http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1c429f25/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java index 3c610aa..1bac140 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/gesture/WXGesture.java @@ -49,7 +49,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import static com.taobao.weex.common.Constants.Event.SHOULD_STOP_PROPAGATION; +import static com.taobao.weex.common.Constants.Event.STOP_PROPAGATION; public class WXGesture extends GestureDetector.SimpleOnGestureListener implements OnTouchListener { @@ -130,7 +130,7 @@ public class WXGesture extends GestureDetector.SimpleOnGestureListener implement * shouldBubbleEvent default true * */ private boolean shouldBubbleTouchEvent(MotionEvent event){ -if(component.containsEvent(SHOULD_STOP_PROPAGATION)){ +if(component.containsEvent(STOP_PROPAGATION)){ if(shouldBubbleInterval > 0 && shouldBubbleCallRemainTimes > 0){ shouldBubbleCallRemainTimes--; return shouldBubbleResult; @@ -145,9 +145,10 @@ public class WXGesture extends GestureDetector.SimpleOnGestureListener implement }else{ eventMap.put("action", MOVE); } - EventResult result = component.fireEventWait(SHOULD_STOP_PROPAGATION, eventMap); + EventResult result = component.fireEventWait(STOP_PROPAGATION, eventMap); if(result.isSuccess() && result.getResult() != null){ -shouldBubbleResult = WXUtils.getBoolean(result.getResult(), shouldBubbleResult); +boolean stopPropagation = WXUtils.getBoolean(result.getResult(), !shouldBubbleResult); +shouldBubbleResult = !stopPropagation; } shouldBubbleCallRemainTimes = shouldBubbleInterval; return shouldBubbleResult; @@ -194,7 +195,7 @@ public class WXGesture extends GestureDetector.SimpleOnGestureListener implement result |= handlePanMotionEvent(event); break; } -
[3/3] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1042' into apache-master
Merge remote-tracking branch 'upstream/pr1042' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a3a05f08 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a3a05f08 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a3a05f08 Branch: refs/heads/master Commit: a3a05f089c37e6f984f14d9dcb7b23ade9288b8c Parents: b948d68 97d8f09 Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:15:05 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:15:05 2018 +0800 -- .../src/main/java/com/taobao/weex/common/Constants.java | 2 +- .../src/main/java/com/taobao/weex/dom/WXDomObject.java | 2 +- .../java/com/taobao/weex/ui/component/WXComponent.java | 2 +- .../java/com/taobao/weex/ui/view/gesture/WXGesture.java | 11 ++- 4 files changed, 9 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a3a05f08/android/sdk/src/main/java/com/taobao/weex/common/Constants.java --
[3/3] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1037' into apache-master
Merge remote-tracking branch 'upstream/pr1037' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/c20aad50 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c20aad50 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c20aad50 Branch: refs/heads/master Commit: c20aad50aed3548cb06d9a4cdf0ba5831cf22541 Parents: a7bfb9a d67a3af Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:19:26 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:19:26 2018 +0800 -- .../java/com/taobao/weex/common/Constants.java | 1 + .../com/taobao/weex/ui/component/WXText.java| 17 .../com/taobao/weex/ui/view/WXTextView.java | 42 3 files changed, 50 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c20aad50/android/sdk/src/main/java/com/taobao/weex/common/Constants.java --
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1036' into apache-master
Merge remote-tracking branch 'upstream/pr1036' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a7bfb9a5 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a7bfb9a5 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a7bfb9a5 Branch: refs/heads/master Commit: a7bfb9a5f8acfda2ce04eab3915cbd6c2bb3dea3 Parents: b376260 e59bb41 Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:18:47 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:18:47 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java | 2 -- 1 file changed, 2 deletions(-) --
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1035' into apache-master
Merge remote-tracking branch 'upstream/pr1035' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b376260d Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b376260d Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b376260d Branch: refs/heads/master Commit: b376260d5f69becd748d4d2a1901ed0ee395d702 Parents: a3a05f0 e016be4 Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:18:03 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:18:03 2018 +0800 -- .../src/main/java/com/taobao/weex/ui/module/WXLocaleModule.java | 4 1 file changed, 4 deletions(-) --
[2/3] incubator-weex git commit: [WEEX-228][android] ShouldStopPropagation Use ShortName StopPropagation, traverseUpdateTree consumers to correct
[WEEX-228][android] ShouldStopPropagation Use ShortName StopPropagation, traverseUpdateTree consumers to correct Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/97d8f09c Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/97d8f09c Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/97d8f09c Branch: refs/heads/master Commit: 97d8f09c8c8d6e0d75ef49859ef2bc24d8a53830 Parents: 1c429f2 Author: jianbai.gbjAuthored: Wed Feb 28 21:32:05 2018 +0800 Committer: jianbai.gbj Committed: Wed Feb 28 21:32:05 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/97d8f09c/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java b/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java index ec12163..397be0c 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/WXDomObject.java @@ -151,7 +151,7 @@ public class WXDomObject extends CSSNode implements Cloneable,ImmutableDomObject WXDomObject child; for (int i = 0; i < count; ++i) { child = getChild(i); - child.traverseTree(consumers); + child.traverseUpdateTree(consumers); } }
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1041' into apache-master
Merge remote-tracking branch 'upstream/pr1041' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b948d685 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b948d685 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b948d685 Branch: refs/heads/master Commit: b948d685549d1d64392cd331f2634e315b5ef1bb Parents: eb94be5 5ce93c7 Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:14:22 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:14:22 2018 +0800 -- .../com/taobao/weex/ui/component/list/BasicListComponent.java | 3 +++ 1 file changed, 3 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b948d685/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java --
[1/2] incubator-weex git commit: [WEEX-222][android] Sticky header in waterfall is not sticky
Repository: incubator-weex Updated Branches: refs/heads/master eb94be56b -> b948d6855 [WEEX-222][android] Sticky header in waterfall is not sticky Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5ce93c7f Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5ce93c7f Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5ce93c7f Branch: refs/heads/master Commit: 5ce93c7fdeaacf35c7adf5bdeaeacdc0bf474cc9 Parents: 22cbd5b Author: jianbai.gbjAuthored: Mon Feb 26 20:30:55 2018 +0800 Committer: jianbai.gbj Committed: Mon Feb 26 20:30:55 2018 +0800 -- .../com/taobao/weex/ui/component/list/BasicListComponent.java | 3 +++ 1 file changed, 3 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5ce93c7f/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java index 2ea3254..b849419 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java @@ -601,6 +601,9 @@ public abstract class BasicListComponent 0 && firstVisiblePosition < pos && pos <= lastVisiblePosition && top <= cell.getStickyOffset())) { beforeFirstVisibleItem = true; + if(pos > currentStickyPos) { +currentStickyPos = pos; + } }else{ removeOldSticky = true; }
[1/2] incubator-weex git commit: [WEEX-210][android] Weex Auto Scan Component And Module Discover Mechanism
Repository: incubator-weex Updated Branches: refs/heads/master 118abd37d -> eb94be56b [WEEX-210][android] Weex Auto Scan Component And Module Discover Mechanism Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b1ca0356 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b1ca0356 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b1ca0356 Branch: refs/heads/master Commit: b1ca035649526c801ee95e503e7976d438dfda52 Parents: de40fe1 Author: jianbai.gbjAuthored: Sun Feb 11 14:38:50 2018 +0800 Committer: jianbai.gbj Committed: Sun Feb 11 15:36:50 2018 +0800 -- .../app/src/main/assets/weex_config_search.json | 36 + .../java/com/alibaba/weex/WXApplication.java| 2 + .../main/java/com/taobao/weex/InitConfig.java | 21 ++- .../main/java/com/taobao/weex/WXSDKEngine.java | 5 +- .../main/java/com/taobao/weex/WXSDKManager.java | 10 ++ .../taobao/weex/adapter/ClassLoaderAdapter.java | 56 +++ .../com/taobao/weex/bridge/WXModuleManager.java | 8 +- .../weex/ui/ExternalLoaderComponentHolder.java | 2 +- .../taobao/weex/ui/SimpleComponentHolder.java | 6 +- .../weex/ui/config/AutoScanConfigRegister.java | 112 + .../weex/ui/config/ConfigComponentHolder.java | 161 +++ .../weex/ui/config/ConfigModuleFactory.java | 156 ++ 12 files changed, 568 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b1ca0356/android/playground/app/src/main/assets/weex_config_search.json -- diff --git a/android/playground/app/src/main/assets/weex_config_search.json b/android/playground/app/src/main/assets/weex_config_search.json new file mode 100644 index 000..1dcd86c --- /dev/null +++ b/android/playground/app/src/main/assets/weex_config_search.json @@ -0,0 +1,36 @@ +{ + "modules":[ +{ + "name" : "tool", + "className":"com.taobao.weex.ui.module.WXModalUIModule", + "methods":[ + "toast", + "alert", + "confirm", + "prompt" + ] +}, +{ + "name" : "toolError", + "className":"com.taobao.weex.ui.module.WXModalUIModuleError", + "methods":[ +"toast", +"alert" + ] +} + ], + "components":[ +{ + "name":"diva", + "className":"com.taobao.weex.ui.component.WXDiv", + "appendTree":false, + "methods":[] +}, +{ + "name":"divnot", + "className":"com.taobao.weex.ui.component.WXDivNot", + "appendTree":false, + "methods":[] +} + ] +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b1ca0356/android/playground/app/src/main/java/com/alibaba/weex/WXApplication.java -- diff --git a/android/playground/app/src/main/java/com/alibaba/weex/WXApplication.java b/android/playground/app/src/main/java/com/alibaba/weex/WXApplication.java index 0561043..e41c5cb 100644 --- a/android/playground/app/src/main/java/com/alibaba/weex/WXApplication.java +++ b/android/playground/app/src/main/java/com/alibaba/weex/WXApplication.java @@ -99,6 +99,8 @@ public class WXApplication extends Application { WXSDKEngine.registerModule("titleBar", WXTitleBar.class); WXSDKEngine.registerModule("wsonTest", WXWsonTestModule.class); + + /** * override default image tag * WXSDKEngine.registerComponent("image", FrescoImageComponent.class); http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b1ca0356/android/sdk/src/main/java/com/taobao/weex/InitConfig.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/InitConfig.java b/android/sdk/src/main/java/com/taobao/weex/InitConfig.java index e6aa0e1..aaa2dd0 100644 --- a/android/sdk/src/main/java/com/taobao/weex/InitConfig.java +++ b/android/sdk/src/main/java/com/taobao/weex/InitConfig.java @@ -18,6 +18,7 @@ */ package com.taobao.weex; +import com.taobao.weex.adapter.ClassLoaderAdapter; import com.taobao.weex.adapter.IDrawableLoader; import com.taobao.weex.adapter.IWXHttpAdapter; import com.taobao.weex.adapter.IWXImgLoaderAdapter; @@ -42,6 +43,7 @@ public class InitConfig { private IWebSocketAdapterFactory webSocketAdapterFactory; private IWXJSExceptionAdapter mJSExceptionAdapter; private String framework; + private ClassLoaderAdapter classLoaderAdapter; public IWXHttpAdapter getHttpAdapter() { return httpAdapter; @@ -79,6 +81,15 @@ public class InitConfig { return webSocketAdapterFactory; } + public ClassLoaderAdapter
[2/2] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1032' into apache-master
Merge remote-tracking branch 'upstream/pr1032' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/eb94be56 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/eb94be56 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/eb94be56 Branch: refs/heads/master Commit: eb94be56b1a19769901a1327295cd5c6e45252e8 Parents: 118abd3 b1ca035 Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:13:49 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:13:49 2018 +0800 -- .../app/src/main/assets/weex_config_search.json | 36 + .../java/com/alibaba/weex/WXApplication.java| 2 + .../main/java/com/taobao/weex/InitConfig.java | 21 ++- .../main/java/com/taobao/weex/WXSDKEngine.java | 5 +- .../main/java/com/taobao/weex/WXSDKManager.java | 10 ++ .../taobao/weex/adapter/ClassLoaderAdapter.java | 56 +++ .../com/taobao/weex/bridge/WXModuleManager.java | 8 +- .../weex/ui/ExternalLoaderComponentHolder.java | 2 +- .../taobao/weex/ui/SimpleComponentHolder.java | 6 +- .../weex/ui/config/AutoScanConfigRegister.java | 112 + .../weex/ui/config/ConfigComponentHolder.java | 161 +++ .../weex/ui/config/ConfigModuleFactory.java | 156 ++ 12 files changed, 568 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/eb94be56/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java --
[2/3] incubator-weex git commit: [WEEX-218][android] support leftGap and rightGap for waterfall component, template list orientation support updateAttrs
[WEEX-218][android] support leftGap and rightGap for waterfall component, template list orientation support updateAttrs Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/ff71bab4 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/ff71bab4 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/ff71bab4 Branch: refs/heads/master Commit: ff71bab4a217256d681f3dec26a6e05a2814f892 Parents: b442122 Author: jianbai.gbjAuthored: Tue Feb 13 13:19:47 2018 +0800 Committer: jianbai.gbj Committed: Tue Feb 13 13:19:47 2018 +0800 -- .../java/com/taobao/weex/ui/component/list/WXListComponent.java| 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ff71bab4/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java index 302e413..fb5597f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java @@ -87,7 +87,7 @@ public class WXListComponent extends BasicListComponent { bounceRecyclerView.getSwipeLayout().setNestedScrollingEnabled(true); } } -if(mRecyclerDom.getSpanOffsets() != null){ +if(mRecyclerDom != null && mRecyclerDom.getSpanOffsets() != null){ bounceRecyclerView.getInnerView().addItemDecoration(new GapItemDecoration(this)); } return bounceRecyclerView;
[1/3] incubator-weex git commit: [WEEX-218][android] support leftGap and rightGap for waterfall component, template list orientation support updateAttrs
Repository: incubator-weex Updated Branches: refs/heads/master 9d11a5da0 -> 118abd37d [WEEX-218][android] support leftGap and rightGap for waterfall component, template list orientation support updateAttrs Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b4421229 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b4421229 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b4421229 Branch: refs/heads/master Commit: b4421229eb9107d29ef9e27f52d4316447375b5f Parents: de40fe1 Author: jianbai.gbjAuthored: Tue Feb 13 11:36:18 2018 +0800 Committer: jianbai.gbj Committed: Tue Feb 13 11:36:18 2018 +0800 -- .../java/com/taobao/weex/common/Constants.java | 2 + .../taobao/weex/dom/WXRecyclerDomObject.java| 49 -- .../ui/component/list/BasicListComponent.java | 2 + .../ui/component/list/GapItemDecoration.java| 71 .../weex/ui/component/list/WXListComponent.java | 34 ++ .../list/template/WXRecyclerTemplateList.java | 18 + 6 files changed, 170 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b4421229/android/sdk/src/main/java/com/taobao/weex/common/Constants.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java index 64b59c8..6f74f48 100644 --- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java +++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java @@ -123,6 +123,8 @@ public class Constants { String COLUMN_WIDTH= "columnWidth"; String COLUMN_COUNT= "columnCount"; String COLUMN_GAP= "columnGap"; +String LEFT_GAP= "leftGap"; +String RIGHT_GAP= "rightGap"; String SHOW_SCROLLBAR= "showScrollbar"; String OVERFLOW = "overflow"; String TYPE = "type"; http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b4421229/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java b/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java index 5fe245b..daf3850 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java @@ -25,6 +25,7 @@ import com.taobao.weex.common.Constants; import com.taobao.weex.dom.flex.Spacing; import com.taobao.weex.ui.component.WXBasicComponentType; import com.taobao.weex.utils.WXLogUtils; +import com.taobao.weex.utils.WXUtils; import com.taobao.weex.utils.WXViewUtils; import java.util.ArrayList; @@ -45,12 +46,17 @@ public class WXRecyclerDomObject extends WXDomObject{ private float mAvailableWidth = 0; private boolean mIsPreCalculateCellWidth =false; +private float mLeftGap = 0; +private float mRightGap = 0; + +private float[] spanOffsets; + /**cell-slot not on the tree */ private List cellList; public float getAvailableWidth() { -return WXViewUtils.getRealPxByWidth(mAvailableWidth,getViewPortWidth()); +return WXViewUtils.getRealPxByWidth(mAvailableWidth, getViewPortWidth()); } public int getLayoutType(){ @@ -58,9 +64,10 @@ public class WXRecyclerDomObject extends WXDomObject{ } public float getColumnGap() { -return WXViewUtils.getRealPxByWidth(mColumnGap,getViewPortWidth()); +return WXViewUtils.getRealPxByWidth(mColumnGap, getViewPortWidth()); } + public int getColumnCount() { return mColumnCount; } @@ -68,6 +75,15 @@ public class WXRecyclerDomObject extends WXDomObject{ public float getColumnWidth() { return WXViewUtils.getRealPxByWidth(mColumnWidth,getViewPortWidth()); } + +public float getLeftGap() { +return WXViewUtils.getRealPxByWidth(mLeftGap,getViewPortWidth()); +} + +public float getRightGap() { +return WXViewUtils.getRealPxByWidth(mRightGap,getViewPortWidth()); +} + @Override public void add(WXDomObject child, int index) { if(WXBasicComponentType.CELL_SLOT.equals(child.getType()) @@ -129,12 +145,17 @@ public class WXRecyclerDomObject extends WXDomObject{ return width; } + + + public void preCalculateCellWidth(){ if (getAttrs() != null) { mColumnCount = getAttrs().getColumnCount(); mColumnWidth = getAttrs().getColumnWidth(); mColumnGap = getAttrs().getColumnGap(); +mLeftGap =
[3/3] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1031' into apache-master
Merge remote-tracking branch 'upstream/pr1031' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/118abd37 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/118abd37 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/118abd37 Branch: refs/heads/master Commit: 118abd37d52485b878da9eab5ff431a29053104a Parents: 9d11a5d ff71bab Author: misakuo <misa...@apache.org> Authored: Thu Mar 1 16:13:14 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Thu Mar 1 16:13:14 2018 +0800 -- .../java/com/taobao/weex/common/Constants.java | 2 + .../taobao/weex/dom/WXRecyclerDomObject.java| 49 -- .../ui/component/list/BasicListComponent.java | 2 + .../ui/component/list/GapItemDecoration.java| 71 .../weex/ui/component/list/WXListComponent.java | 34 ++ .../list/template/WXRecyclerTemplateList.java | 18 + 6 files changed, 170 insertions(+), 6 deletions(-) --
[GitHub] incubator-weex pull request #1044: [Android] Add property include-font-paddi...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1044 [Android] Add property include-font-padding to text Set whether the text includes extra top and bottom padding to make room for accents that go above the normal ascent and descent. The default is `false`. Testcase: http://dotwe.org/vue/9272973e92c60b4a12fc8835059d1528 You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex feature-font-padding Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1044.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1044 commit 9baf4da453198975cc9d8a1a9d22b891d04b834b Author: misakuo <misakuo@...> Date: 2018-03-01T03:59:44Z +[android] add property include-font-padding to set whether the text includes extra top and bottom padding to make room for accents that go above the normal ascent and descent. ---
[GitHub] incubator-weex pull request #1040: [Android] made onFocusChangeListener publ...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1040 [Android] made onFocusChangeListener public You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex android-patch-focus-listener Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1040.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1040 commit 843eba82ab445874f5f328c9339829329cdfd85b Author: misakuo <misakuo@...> Date: 2018-02-26T03:09:36Z *[improvement] made onFocusChangeListener public ---
[2/3] incubator-weex git commit: [WEEX-216][android] WXAnimation Fix Memory Leak and performance improve add more support convert args
[WEEX-216][android] WXAnimation Fix Memory Leak and performance improve add more support convert args Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/c3bd4623 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c3bd4623 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c3bd4623 Branch: refs/heads/master Commit: c3bd46238fb3b08e8c70c1efb2944df79ced4af2 Parents: 4dded27 Author: jianbai.gbjAuthored: Fri Feb 23 17:07:41 2018 +0800 Committer: jianbai.gbj Committed: Fri Feb 23 17:07:41 2018 +0800 -- .../main/java/com/taobao/weex/utils/WXReflectionUtils.java | 6 -- .../java/com/taobao/weex/utils/WXReflectionUtilsTest.java | 9 + 2 files changed, 13 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c3bd4623/android/sdk/src/main/java/com/taobao/weex/utils/WXReflectionUtils.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/WXReflectionUtils.java b/android/sdk/src/main/java/com/taobao/weex/utils/WXReflectionUtils.java index 1e424e5..a3dff5e 100644 --- a/android/sdk/src/main/java/com/taobao/weex/utils/WXReflectionUtils.java +++ b/android/sdk/src/main/java/com/taobao/weex/utils/WXReflectionUtils.java @@ -35,8 +35,10 @@ public class WXReflectionUtils { if(value.getClass() == paramClazz){ return value; } -if(value.getClass().isAssignableFrom(value.getClass())){ - return value; +if(paramClazz instanceof Class){ + if( ((Class) paramClazz).isAssignableFrom(value.getClass())) { +return value; + } } } if (paramClazz == String.class) { http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c3bd4623/android/sdk/src/test/java/com/taobao/weex/utils/WXReflectionUtilsTest.java -- diff --git a/android/sdk/src/test/java/com/taobao/weex/utils/WXReflectionUtilsTest.java b/android/sdk/src/test/java/com/taobao/weex/utils/WXReflectionUtilsTest.java index 18df379..58cfc46 100644 --- a/android/sdk/src/test/java/com/taobao/weex/utils/WXReflectionUtilsTest.java +++ b/android/sdk/src/test/java/com/taobao/weex/utils/WXReflectionUtilsTest.java @@ -47,9 +47,14 @@ public class WXReflectionUtilsTest { @Test public void testParseArgument() throws Exception { + + Object value = WXReflectionUtils.parseArgument(String.class,"dkdkdkdk"); assertTrue(value instanceof String); +value = WXReflectionUtils.parseArgument(int.class,123444); +assertTrue(value instanceof Integer); + value = WXReflectionUtils.parseArgument(long.class,"123444"); assertTrue(value instanceof Long); @@ -70,6 +75,10 @@ public class WXReflectionUtilsTest { JSONObject j = new JSONObject(); j.put("a","b"); j.put("c",23); + + value = WXReflectionUtils.parseArgument(Map.class,j); + assertTrue(value == j); + value = WXReflectionUtils.parseArgument(String.class,j); assertTrue(value instanceof String);
[3/3] incubator-weex git commit: Merge remote-tracking branch 'upstream/pr1026' into apache-master
Merge remote-tracking branch 'upstream/pr1026' into apache-master Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a553c194 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a553c194 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a553c194 Branch: refs/heads/master Commit: a553c194a68cd8c2fc9c80f87390f8a3e8e592c4 Parents: 95e16d8 c3bd462 Author: misakuo <misa...@apache.org> Authored: Sat Feb 24 17:44:31 2018 +0800 Committer: misakuo <misa...@apache.org> Committed: Sat Feb 24 17:44:31 2018 +0800 -- .../sdk/src/main/java/com/taobao/weex/WXSDKEngine.java| 2 +- .../src/main/java/com/taobao/weex/dom/action/Actions.java | 2 +- .../java/com/taobao/weex/dom/action/AnimationAction.java | 8 .../com/taobao/weex/ui/animation/WXAnimationModule.java | 6 -- .../java/com/taobao/weex/utils/WXReflectionUtils.java | 10 ++ .../taobao/weex/ui/animation/WXAnimationModuleTest.java | 5 +++-- .../java/com/taobao/weex/utils/WXReflectionUtilsTest.java | 9 + 7 files changed, 32 insertions(+), 10 deletions(-) --
[1/3] incubator-weex git commit: [WEEX-216][android] WXAnimation Fix Memory Leak and performance improve
Repository: incubator-weex Updated Branches: refs/heads/master 95e16d870 -> a553c194a [WEEX-216][android] WXAnimation Fix Memory Leak and performance improve Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4dded272 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4dded272 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4dded272 Branch: refs/heads/master Commit: 4dded272b79f9b8bb8e32ae88899fcee878fc24c Parents: de40fe1 Author: jianbai.gbjAuthored: Sun Feb 11 16:45:44 2018 +0800 Committer: jianbai.gbj Committed: Sun Feb 11 17:00:29 2018 +0800 -- android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java | 2 +- .../src/main/java/com/taobao/weex/dom/action/Actions.java| 2 +- .../java/com/taobao/weex/dom/action/AnimationAction.java | 8 .../java/com/taobao/weex/ui/animation/WXAnimationModule.java | 6 -- .../main/java/com/taobao/weex/utils/WXReflectionUtils.java | 8 .../com/taobao/weex/ui/animation/WXAnimationModuleTest.java | 5 +++-- 6 files changed, 21 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4dded272/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java index 7069729..f593986 100644 --- a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java +++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java @@ -312,7 +312,7 @@ public class WXSDKEngine { registerModule("modal", WXModalUIModule.class, false); registerModule("instanceWrap", WXInstanceWrap.class, true); - registerModule("animation", WXAnimationModule.class, true); + registerModule("animation", WXAnimationModule.class, false); registerModule("webview", WXWebViewModule.class, true); registerModule("navigator", WXNavigatorModule.class); registerModule("stream", WXStreamModule.class); http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4dded272/android/sdk/src/main/java/com/taobao/weex/dom/action/Actions.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/action/Actions.java b/android/sdk/src/main/java/com/taobao/weex/dom/action/Actions.java index 9f60765..3f464bc 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/action/Actions.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/action/Actions.java @@ -206,7 +206,7 @@ public class Actions { } - public static DOMAction getAnimationAction(@NonNull final String ref, @NonNull String animation, + public static DOMAction getAnimationAction(@NonNull final String ref, @NonNull JSONObject animation, @Nullable final String callBack){ return new AnimationAction(ref, animation, callBack); } http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4dded272/android/sdk/src/main/java/com/taobao/weex/dom/action/AnimationAction.java -- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/action/AnimationAction.java b/android/sdk/src/main/java/com/taobao/weex/dom/action/AnimationAction.java index f08b135..fa2246f 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/action/AnimationAction.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/action/AnimationAction.java @@ -79,7 +79,7 @@ class AnimationAction implements DOMAction, RenderAction { @Nullable private - final String animation; + final JSONObject animation; @Nullable private @@ -89,7 +89,7 @@ class AnimationAction implements DOMAction, RenderAction { private WXAnimationBean mAnimationBean; - AnimationAction(@NonNull final String ref, @Nullable String animation, + AnimationAction(@NonNull final String ref, @Nullable JSONObject animation, @Nullable final String callBack) { this.ref = ref; this.animation = animation; @@ -113,9 +113,9 @@ class AnimationAction implements DOMAction, RenderAction { try { WXDomObject domObject; if (!context.isDestory() && - !TextUtils.isEmpty(animation) && + animation != null && (domObject = context.getDomByRef(ref)) != null) { -WXAnimationBean animationBean = JSONObject.parseObject(animation, WXAnimationBean.class); +WXAnimationBean animationBean = JSONObject.toJavaObject(animation, WXAnimationBean.class); if (animationBean != null && animationBean.styles != null) {
[GitHub] incubator-weex pull request #1037: [WEEX-219][Android] support copy action f...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1037 [WEEX-219][Android] support copy action for text component You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex feature-text-copy Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1037.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1037 commit 94ee706e997c1e5dc17b10454f9a4497bf8ab609 Author: misakuo <misakuo@...> Date: 2018-02-24T02:55:33Z *[feature] feature to copy text value ---
[GitHub] incubator-weex pull request #1036: *[android] fix input method can not evoke...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1036 *[android] fix input method can not evoke on â¦ste was set First of all, thank you for your contribution! Please makes sure that these checkboxes are checked before submitting your PR, thank you! CheckList: **if** *isBugFix* **:** * [ ] Make sure that you add at least one unit test for the bug which you had fixed. **elif** *isNewFeature* **:** * [ ] Update API docs for the component. * [ ] Update/Add demo to demonstrate new feature. * [ ] Update test scripts for the feature. * [ ] Add unit tests for the feature. You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex patch-input-method Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1036.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1036 commit e59bb414b70963832760cbd3de448f4f5006855a Author: misakuo <misakuo@...> Date: 2018-02-24T02:10:34Z *[android] fix input method can not evoke when property allow-copy-paste was set ---
[GitHub] incubator-weex pull request #1035: [Android] fix NoSuchMethodException in lo...
GitHub user misakuo opened a pull request: https://github.com/apache/incubator-weex/pull/1035 [Android] fix NoSuchMethodException in locale module on api 20 and lower You can merge this pull request into a Git repository by running: $ git pull https://github.com/misakuo/incubator-weex patch-locale-module Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-weex/pull/1035.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1035 commit e016be489f45199d40c9b44e0f36227c15d9e86c Author: misakuo <misakuo@...> Date: 2018-02-24T02:05:18Z *[android] fix NoSuchMethodException in locale module on api 20 and lower ---