You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by ac...@apache.org on 2017/06/09 06:22:23 UTC
[02/12] incubator-weex git commit: Merge remote-tracking branch
'wip-us/0.14-dev' into 0.14-dev-rotate3D
Merge remote-tracking branch 'wip-us/0.14-dev' into 0.14-dev-rotate3D
# Conflicts:
# ios/sdk/WeexSDK/Sources/Component/WXTransform.m
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/d3b7a1c5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/d3b7a1c5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/d3b7a1c5
Branch: refs/heads/0.14-dev
Commit: d3b7a1c5f634ff49333dca55ac9dc23bd7601e78
Parents: 5599530 eb1e637
Author: acton393 <zh...@gmail.com>
Authored: Mon Jun 5 16:48:07 2017 +0800
Committer: acton393 <zh...@gmail.com>
Committed: Mon Jun 5 16:48:07 2017 +0800
----------------------------------------------------------------------
.travis.yml | 1 +
android/build.gradle | 8 +-
android/commons/build.gradle | 1 +
.../adapter/DefaultWebSocketAdapter.java | 54 ++++-
.../weex/commons/util/RequestIdGenerator.java | 15 ++
.../weex/commons/util/WSEventReporter.java | 192 ++++++++++++++++
android/playground/app/build.gradle | 2 +-
.../java/com/alibaba/weex/WXApplication.java | 2 +
.../extend/adapter/InterceptWXHttpAdapter.java | 57 +++--
.../com/taobao/weex/bridge/WXBridgeManager.java | 45 ++--
.../com/taobao/weex/common/WXPerformance.java | 9 +-
.../ui/component/AbstractEditComponent.java | 16 +-
.../taobao/weex/ui/component/WXComponent.java | 23 +-
.../java/com/taobao/weex/utils/WXViewUtils.java | 3 +-
.../java/com/taobao/weex/WXSDKEngineTest.java | 1 -
dangerfile.js | 4 +
.../Sources/Component/WXCycleSliderComponent.m | 6 +-
.../Sources/Component/WXSliderComponent.m | 1 +
.../WeexSDK/Sources/Component/WXTextComponent.m | 28 ++-
ios/sdk/WeexSDK/Sources/Component/WXTransform.h | 4 +
ios/sdk/WeexSDK/Sources/Component/WXTransform.m | 45 +++-
.../Sources/Controller/WXBaseViewController.m | 6 -
ios/sdk/WeexSDK/Sources/Model/WXComponent.h | 5 +
ios/sdk/WeexSDK/Sources/Model/WXComponent.m | 21 +-
.../Sources/View/WXComponent+ViewManagement.m | 14 +-
test/mocha.opts | 2 +-
test/pages/components/scroller-fixed.vue | 14 +-
test/pages/components/slider-common.vue | 229 +++++++++++++++++++
test/scripts/components/recycler.test.js | 12 +-
test/scripts/components/scroller-fixed.test.js | 5 +-
test/scripts/components/slider-common.test.js | 100 ++++++++
test/scripts/util.js | 24 ++
32 files changed, 839 insertions(+), 110 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/d3b7a1c5/ios/sdk/WeexSDK/Sources/Component/WXTransform.h
----------------------------------------------------------------------
diff --cc ios/sdk/WeexSDK/Sources/Component/WXTransform.h
index 348a07d,e2fcb3e..75db1c7
--- a/ios/sdk/WeexSDK/Sources/Component/WXTransform.h
+++ b/ios/sdk/WeexSDK/Sources/Component/WXTransform.h
@@@ -35,6 -32,10 +35,10 @@@
- (instancetype)initWithCSSValue:(NSString *)cssValue origin:(NSString *)origin instance:(WXSDKInstance *)instance;
-- (instancetype)initWithNativeTransform:(CGAffineTransform)transform instance:(WXSDKInstance *)instance;
++- (instancetype)initWithNativeTransform:(CATransform3D)transform instance:(WXSDKInstance *)instance;
+
- (void)applyTransformForView:(UIView *)view;
+ - (void)setTransformOrigin:(NSString *)transformOriginCSS;
+
@end
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/d3b7a1c5/ios/sdk/WeexSDK/Sources/Component/WXTransform.m
----------------------------------------------------------------------
diff --cc ios/sdk/WeexSDK/Sources/Component/WXTransform.m
index ff8388e,6999b1f..fc15a49
--- a/ios/sdk/WeexSDK/Sources/Component/WXTransform.m
+++ b/ios/sdk/WeexSDK/Sources/Component/WXTransform.m
@@@ -39,11 -39,8 +39,14 @@@
WXLength *_originX;
WXLength *_originY;
- CGAffineTransform _nativeTransform;
+ //3d rotate
+ float _rotateX;
+ float _rotateY;
+ float _rotateZ;
++ float _perspective;
+
++ CATransform3D _nativeTransform;
+ BOOL _useNativeTransform;
}
- (instancetype)initWithCSSValue:(NSString *)cssValue origin:(NSString *)origin instance:(WXSDKInstance *)instance
@@@ -64,91 -58,90 +67,127 @@@
return self;
}
-- (instancetype)initWithNativeTransform:(CGAffineTransform)transform instance:(WXSDKInstance *)instance
++- (instancetype)initWithNativeTransform:(CATransform3D)transform instance:(WXSDKInstance *)instance
+ {
+ if (self = [super init]) {
+ _weexInstance = instance;
+ _nativeTransform = transform;
+ _useNativeTransform = YES;
+ }
-
+ return self;
+ }
+
- (float)rotateAngle
{
+ if (_useNativeTransform) {
- return atan2(_nativeTransform.b, _nativeTransform.a);
++ return atan2(_nativeTransform.m11, _nativeTransform.m12);
+ }
return _rotateAngle;
}
+- (float)rotateX
+{
++ if (_useNativeTransform) {
++ return atan2(_nativeTransform.m22, _nativeTransform.m23);
++ }
+ return _rotateX;
+}
+
+- (float)rotateY
+{
++ if (_useNativeTransform) {
++ return atan2(_nativeTransform.m11, _nativeTransform.m31);
++ }
+ return _rotateY;
+}
+
+- (float)rotateZ
+{
+ return _rotateZ;
+}
+
- (WXLength *)translateX
{
+ if (_useNativeTransform) {
- return [WXLength lengthWithFloat:_nativeTransform.tx type:WXLengthTypeFixed];
++ return [WXLength lengthWithFloat:_nativeTransform.m41 type:WXLengthTypeFixed];
+ }
return _translateX;
}
- (WXLength *)translateY
{
+ if (_useNativeTransform) {
- return [WXLength lengthWithFloat:_nativeTransform.ty type:WXLengthTypeFixed];
++ return [WXLength lengthWithFloat:_nativeTransform.m42 type:WXLengthTypeFixed];
+ }
return _translateY;
}
- (float)scaleX
{
+ if (_useNativeTransform) {
- return sqrt(_nativeTransform.a * _nativeTransform.a + _nativeTransform.c * _nativeTransform.c);
++ return sqrt(_nativeTransform.m11 * _nativeTransform.m11 + _nativeTransform.m21 * _nativeTransform.m21);
+ }
return _scaleX;
}
- (float)scaleY
{
+ if (_useNativeTransform) {
- return sqrt(_nativeTransform.b * _nativeTransform.b + _nativeTransform.d * _nativeTransform.d);
++ return sqrt(_nativeTransform.m12 * _nativeTransform.m12 + _nativeTransform.m22 * _nativeTransform.m22);
+ }
return _scaleY;
}
+ - (void)setTransformOrigin:(NSString *)transformOriginCSS
+ {
+ [self parseTransformOrigin:transformOriginCSS];
+ }
+
-- (CGAffineTransform)nativeTransformWithView:(UIView *)view
+- (CATransform3D)nativeTransformWithView:(UIView *)view
{
+ if (_useNativeTransform) {
+ return _nativeTransform;
+ }
+ CATransform3D nativeTransform3d = [self nativeTransformWithoutRotateWithView:view];
- CGAffineTransform nativeTransform = [self nativeTransformWithoutRotateWithView:view];
+ float x = 0,y = 0,z = 0;
+ float rotateAngle = 0;
+ if (_rotateZ != 0) {
+ z = 1;
+ rotateAngle = _rotateZ;
+ }
+ if (_rotateAngle != 0) {
+ rotateAngle = _rotateAngle;
+ }
+ if (_rotateY != 0) {
+ y = 1;
+ rotateAngle = _rotateY;
+ }
+ if (_rotateX != 0) {
+ x = 1;
+ rotateAngle = _rotateX;
+ }
- nativeTransform = CGAffineTransformRotate(nativeTransform, _rotateAngle);
+ nativeTransform3d = CATransform3DRotate(nativeTransform3d, rotateAngle, x, y, z);
- // nativeTransform = CGAffineTransformRotate(nativeTransform, _rotateAngle);
- return nativeTransform;
+ return nativeTransform3d;
}
-- (CGAffineTransform)nativeTransformWithoutRotateWithView:(UIView *)view
+- (CATransform3D)nativeTransformWithoutRotateWithView:(UIView *)view
{
- // CGAffineTransform nativeTransform = CGAffineTransformIdentity;
- CGAffineTransform nativeTransform = CGAffineTransformIdentity;
+ CATransform3D nativeTansform3D = CATransform3DIdentity;
if (!view || view.bounds.size.width <= 0 || view.bounds.size.height <= 0) {
- return nativeTransform;
+ return nativeTansform3D;
}
if (_translateX || _translateY) {
- nativeTransform = CGAffineTransformTranslate(nativeTransform, _translateX ? [_translateX valueForMaximum:view.bounds.size.width] : 0, _translateY ? [_translateY valueForMaximum:view.bounds.size.height] : 0);
+
+ nativeTansform3D = CATransform3DTranslate(nativeTansform3D, _translateX ? [_translateX valueForMaximum:view.bounds.size.width] : 0, _translateY ? [_translateY valueForMaximum:view.bounds.size.height]:0, 0);
- // nativeTransform = CGAffineTransformTranslate(nativeTransform, _translateX ? [_translateX valueForMaximum:view.bounds.size.width] : 0, _translateY ? [_translateY valueForMaximum:view.bounds.size.height] : 0);
}
+ nativeTansform3D = CATransform3DScale(nativeTansform3D, _scaleX, _scaleY, 1.0);
- nativeTransform = CGAffineTransformScale(nativeTransform, _scaleX, _scaleY);
-
- return nativeTransform;
+ return nativeTansform3D;
}
-(void)setAnchorPoint:(CGPoint)anchorPoint forView:(UIView *)view