@@ -1044,7 +1044,7 @@ - (void)invalidateLayer
10441044 const bool useCoreAnimationBorderRendering =
10451045 borderMetrics.borderColors .isUniform () && borderMetrics.borderWidths .isUniform () &&
10461046 borderMetrics.borderStyles .isUniform () && borderMetrics.borderStyles .left == BorderStyle::Solid &&
1047- borderMetrics.borderRadii . isUniform ( ) &&
1047+ areBorderRadiiCircular ( borderMetrics.borderRadii ) &&
10481048 (
10491049 // iOS draws borders in front of the content whereas CSS draws them behind
10501050 // the content. For this reason, only use iOS border drawing when clipping
@@ -1126,7 +1126,7 @@ - (void)invalidateLayer
11261126 _outlineLayer.frame = CGRectInset (
11271127 layer.bounds , -_props->outlineOffset - _props->outlineWidth , -_props->outlineOffset - _props->outlineWidth );
11281128
1129- if (borderMetrics.borderRadii . isUniform ( ) && borderMetrics.borderRadii .topLeft .horizontal == 0 ) {
1129+ if (areBorderRadiiCircular ( borderMetrics.borderRadii ) && borderMetrics.borderRadii .topLeft .horizontal == 0 ) {
11301130 UIColor *outlineColor = RCTUIColorFromSharedColor (_props->outlineColor );
11311131 _outlineLayer.borderWidth = _props->outlineWidth ;
11321132 _outlineLayer.borderColor = outlineColor.CGColor ;
@@ -1302,7 +1302,7 @@ - (void)invalidateLayer
13021302 if (self.currentContainerView .clipsToBounds ) {
13031303 BOOL clipToPaddingBox = ReactNativeFeatureFlags::enableIOSViewClipToPaddingBox ();
13041304 if (!clipToPaddingBox) {
1305- if (borderMetrics.borderRadii . isUniform ( )) {
1305+ if (areBorderRadiiCircular ( borderMetrics.borderRadii )) {
13061306 self.currentContainerView .layer .cornerRadius = borderMetrics.borderRadii .topLeft .horizontal ;
13071307 } else {
13081308 CALayer *maskLayer =
@@ -1325,7 +1325,7 @@ - (void)invalidateLayer
13251325 }
13261326 } else if (
13271327 !borderMetrics.borderWidths .isUniform () || borderMetrics.borderWidths .left != 0 ||
1328- !borderMetrics.borderRadii . isUniform ( )) {
1328+ !areBorderRadiiCircular ( borderMetrics.borderRadii )) {
13291329 CALayer *maskLayer = [self createMaskLayer: RCTCGRectFromRect (_layoutMetrics.getPaddingFrame ())
13301330 cornerInsets: RCTGetCornerInsets (
13311331 RCTCornerRadiiFromBorderRadii (borderMetrics.borderRadii),
@@ -1344,7 +1344,7 @@ - (void)shapeLayerToMatchView:(CALayer *)layer borderMetrics:(BorderMetrics)bord
13441344 // Bounds is needed here to account for scaling transforms properly and ensure
13451345 // we do not scale twice
13461346 layer.frame = CGRectMake (0 , 0 , self.layer .bounds .size .width , self.layer .bounds .size .height );
1347- if (borderMetrics.borderRadii . isUniform ( )) {
1347+ if (areBorderRadiiCircular ( borderMetrics.borderRadii )) {
13481348 layer.mask = nil ;
13491349 layer.cornerRadius = borderMetrics.borderRadii .topLeft .horizontal ;
13501350 layer.cornerCurve = CornerCurveFromBorderCurve (borderMetrics.borderCurves .topLeft );
0 commit comments