You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by cx...@apache.org on 2017/03/05 11:19:24 UTC

[20/29] incubator-weex git commit: Merge branch '0.11-dev-suppport-recycler-component' into ios-feature-grid

Merge branch '0.11-dev-suppport-recycler-component' into ios-feature-grid

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

Branch: refs/heads/0.11-dev
Commit: ba73ba7c9daeb69baeea2289cc891ac7fb84f797
Parents: c0dce9b 1d01df1
Author: \u9690\u5c0f\u98ce <cx...@gmail.com>
Authored: Mon Feb 27 10:49:45 2017 +0800
Committer: GitHub <no...@github.com>
Committed: Mon Feb 27 10:49:45 2017 +0800

----------------------------------------------------------------------
 .../main/java/com/taobao/weex/WXSDKEngine.java  |   9 +-
 .../java/com/taobao/weex/common/Constants.java  |  14 +-
 .../main/java/com/taobao/weex/dom/WXAttr.java   |  96 +++++-
 .../java/com/taobao/weex/dom/WXDomHandler.java  |   2 +
 .../java/com/taobao/weex/dom/WXDomManager.java  |   1 +
 .../java/com/taobao/weex/dom/WXDomModule.java   |   8 +-
 .../taobao/weex/dom/WXRecyclerDomObject.java    | 317 +++++++++++++++++++
 .../weex/ui/component/WXBasicComponentType.java |   2 +
 .../com/taobao/weex/ui/component/WXHeader.java  |   4 +-
 .../weex/ui/component/WXSliderNeighbor.java     |  39 ++-
 .../ui/component/list/BasicListComponent.java   |  29 +-
 .../ui/component/list/ListComponentView.java    |   3 -
 .../ui/component/list/SimpleListComponent.java  |   6 +-
 .../weex/ui/component/list/WXListComponent.java |  85 ++++-
 .../listview/ExtendedLinearLayoutManager.java   |  25 ++
 .../weex/ui/view/listview/WXRecyclerView.java   |  43 +--
 .../listview/adapter/ListBaseViewHolder.java    |   8 +-
 .../adapter/RecyclerViewBaseAdapter.java        |  21 +-
 .../adapter/WXRecyclerViewOnScrollListener.java | 107 ++++---
 .../ui/view/refresh/wrapper/BaseBounceView.java |  19 +-
 .../refresh/wrapper/BounceRecyclerView.java     |  23 +-
 .../refresh/wrapper/BounceScrollerView.java     |   1 +
 ios/sdk/WeexSDK.xcodeproj/project.pbxproj       |  24 ++
 .../Sources/Component/WXComponent_internal.h    |   3 +
 .../WeexSDK/Sources/Component/WXEditComponent.m |   1 -
 .../Sources/Component/WXTextAreaComponent.m     |  16 +-
 .../Sources/Display/WXComponent+BoxShadow.h     |  37 +++
 .../Sources/Display/WXComponent+BoxShadow.m     |  91 ++++++
 ios/sdk/WeexSDK/Sources/Display/WXInnerLayer.h  |  19 ++
 ios/sdk/WeexSDK/Sources/Display/WXInnerLayer.m  |  87 +++++
 ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m    |  11 +-
 .../WeexSDK/Sources/Layout/WXComponent+Layout.m |   4 +
 ios/sdk/WeexSDK/Sources/Model/WXComponent.m     |   9 +-
 ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.h   |  31 ++
 ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.m   | 108 +++++++
 ios/sdk/WeexSDK/Sources/Utility/WXConvert.h     |   2 +
 ios/sdk/WeexSDK/Sources/Utility/WXConvert.m     |  16 +
 .../Sources/View/WXComponent+ViewManagement.m   |  15 +
 38 files changed, 1197 insertions(+), 139 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ba73ba7c/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
----------------------------------------------------------------------
diff --cc ios/sdk/WeexSDK.xcodeproj/project.pbxproj
index 2111b76,0f2ff1e..d6a68f7
--- a/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
+++ b/ios/sdk/WeexSDK.xcodeproj/project.pbxproj
@@@ -1537,9 -1490,9 +1559,10 @@@
  				74862F7E1E03A0F300B7A041 /* WXModuleMethod.m in Sources */,
  				742AD7341DF98C45007DC46C /* WXResourceResponse.m in Sources */,
  				77E65A161C155EB5008B8775 /* WXTextComponent.m in Sources */,
+ 				C4D872261E5DDF7500E39BC1 /* WXBoxShadow.m in Sources */,
  				746319031C60AFC100EFEBD4 /* WXThreadSafeCounter.m in Sources */,
  				74A4BAA71CB4F98300195969 /* WXStreamModule.m in Sources */,
 +				744D610D1E49978200B624B3 /* WXHeaderComponent.m in Sources */,
  				59597F991D2A041700EE9317 /* WXDebugLoggerBridge.m in Sources */,
  				77E659F21C0C3612008B8775 /* WXModuleFactory.m in Sources */,
  				DCF343681E49CAEE00A2FB34 /* WXJSExceptionInfo.m in Sources */,

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ba73ba7c/ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ba73ba7c/ios/sdk/WeexSDK/Sources/Model/WXComponent.m
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ba73ba7c/ios/sdk/WeexSDK/Sources/Utility/WXConvert.h
----------------------------------------------------------------------
diff --cc ios/sdk/WeexSDK/Sources/Utility/WXConvert.h
index bef72d0,d9312bc..eb80aa6
--- a/ios/sdk/WeexSDK/Sources/Utility/WXConvert.h
+++ b/ios/sdk/WeexSDK/Sources/Utility/WXConvert.h
@@@ -11,7 -11,7 +11,8 @@@
  #import "WXLog.h"
  #import "WXLayoutDefine.h"
  #import "WXType.h"
 +#import "WXLength.h"
+ #import "WXBoxShadow.h"
  
  @interface WXConvert : NSObject
  
@@@ -69,7 -69,7 +70,8 @@@ typedef BOOL WXClipType
  
  + (WXGradientType)gradientType:(id)value;
  
 ++ (WXLength *)WXLength:(id)value isFloat:(BOOL)isFloat scaleFactor:(CGFloat)scaleFactor;
+ + (WXBoxShadow *)WXBoxShadow:(id)value scaleFactor:(CGFloat)scaleFactor;
  
  @end
  

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ba73ba7c/ios/sdk/WeexSDK/Sources/Utility/WXConvert.m
----------------------------------------------------------------------
diff --cc ios/sdk/WeexSDK/Sources/Utility/WXConvert.m
index b72d7df,c497d28..ad9ba51
--- a/ios/sdk/WeexSDK/Sources/Utility/WXConvert.m
+++ b/ios/sdk/WeexSDK/Sources/Utility/WXConvert.m
@@@ -724,32 -723,21 +724,48 @@@ WX_NUMBER_CONVERT(NSUInteger, unsignedI
      return type;
  }
  
 +#pragma mark - Length
 +
 ++ (WXLength *)WXLength:(id)value isFloat:(BOOL)isFloat scaleFactor:(CGFloat)scaleFactor
 +{
 +    if (!value) {
 +        return nil;
 +    }
 +    
 +    WXLengthType type = WXLengthTypeFixed;
 +    if ([value isKindOfClass:[NSString class]]) {
 +        if ([value isEqualToString:@"auto"]) {
 +            type = WXLengthTypeAuto;
 +        } else if ([value isEqualToString:@"normal"]){
 +            type = WXLengthTypeNormal;
 +        } else if ([value hasSuffix:@"%"]) {
 +            type = WXLengthTypePercent;
 +        }
 +    } else if (![value isKindOfClass:[NSNumber class]]) {
 +        WXAssert(NO, @"Unsupported type:%@ for WXLength", NSStringFromClass([value class]));
 +    }
 +    
 +    if (isFloat) {
 +        return [WXLength lengthWithFloat:([value floatValue] * scaleFactor) type:type];
 +    } else {
 +        return [WXLength lengthWithInt:([value intValue] * scaleFactor) type:type];
 +    }
++
+ + (WXBoxShadow *)WXBoxShadow:(id)value scaleFactor:(CGFloat)scaleFactor
+ {
+     NSString *boxShadow = @"";
+     if([value isKindOfClass:[NSString class]]){
+         boxShadow = value;
+     } else if([value isKindOfClass:[NSNumber class]]){
+         boxShadow =  [((NSNumber *)value) stringValue];
+     } else if (value != nil) {
+         boxShadow = nil;
+         WXLogError(@"Convert Error:%@ can not be converted to boxshadow type", value);
+     }
+     if (boxShadow) {
+         return [WXBoxShadow getBoxShadowFromString:boxShadow scaleFactor:scaleFactor];
+     }
+     return nil;
  }
  
  @end