Skip to content

Commit 34bbee8

Browse files
committed
Fix setNativeProps for all elements that inherit from Shape. The native
props being set were not passing through extractProps, leading to various mismatches in the values. software-mansion#180 software-mansion#326
1 parent bc3659c commit 34bbee8

File tree

12 files changed

+11
-44
lines changed

12 files changed

+11
-44
lines changed

elements/Circle.js

-4
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,6 @@ export default class extends Shape {
2121
r: 0
2222
};
2323

24-
setNativeProps = (...args) => {
25-
this.root.setNativeProps(...args);
26-
};
27-
2824
render() {
2925
let props = this.props;
3026
return <RNSVGCircle

elements/Ellipse.js

-4
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,6 @@ export default class extends Shape{
2323
ry: 0
2424
};
2525

26-
setNativeProps = (...args) => {
27-
this.root.setNativeProps(...args);
28-
};
29-
3026
render() {
3127
let props = this.props;
3228

elements/G.js

-4
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,6 @@ export default class extends Shape{
1010

1111
static propTypes = pathProps;
1212

13-
setNativeProps = (...args) => {
14-
this.root.setNativeProps(...args);
15-
};
16-
1713
render() {
1814
let {props} = this;
1915

elements/Image.js

-4
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,6 @@ export default class extends Shape {
3131
preserveAspectRatio: 'xMidYMid meet'
3232
};
3333

34-
setNativeProps = (...args) => {
35-
this.root.setNativeProps(...args);
36-
};
37-
3834
render() {
3935
let {props} = this;
4036
let modes = props.preserveAspectRatio.trim().split(spacesRegExp);

elements/Line.js

-4
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,6 @@ export default class extends Shape {
2323
y2: 0
2424
};
2525

26-
setNativeProps = (...args) => {
27-
this.root.setNativeProps(...args);
28-
};
29-
3026
render() {
3127
let props = this.props;
3228
return <RNSVGLine

elements/Path.js

-4
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,6 @@ export default class extends Shape {
1313
d: PropTypes.string.isRequired
1414
};
1515

16-
setNativeProps = (...args) => {
17-
this.root.setNativeProps(...args);
18-
};
19-
2016
render() {
2117
let props = this.props;
2218

elements/Polygon.js

-4
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,6 @@ export default class extends Component{
1414
points: ''
1515
};
1616

17-
setNativeProps = (...args) => {
18-
this.root.getNativeElement().setNativeProps(...args);
19-
};
20-
2117
render() {
2218
let points = this.props.points;
2319
if (Array.isArray(points)) {

elements/Rect.js

-4
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,6 @@ export default class extends Shape {
2828
ry: 0
2929
};
3030

31-
setNativeProps = (...args) => {
32-
this.root.setNativeProps(...args);
33-
};
34-
3531
render() {
3632
let props = this.props;
3733

elements/Shape.js

+11
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import {Component} from 'react';
22
import SvgTouchableMixin from '../lib/SvgTouchableMixin';
3+
import extractProps from '../lib/extract/extractProps';
34
import _ from 'lodash';
45

56
class Shape extends Component {
@@ -10,6 +11,16 @@ class Shape extends Component {
1011
});
1112
this.state = this.touchableGetInitialState();
1213
}
14+
15+
setNativeProps = (args) => {
16+
var extracted = extractProps(args, this)
17+
var toSet = {}
18+
for(var key in args) {
19+
toSet[key] = extracted[key]
20+
}
21+
this.root.setNativeProps(toSet);
22+
};
23+
1324
}
1425

1526
export default Shape;

elements/TSpan.js

-4
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,6 @@ export default class extends Shape {
3434
};
3535
};
3636

37-
setNativeProps = (...args) => {
38-
this.root.setNativeProps(...args);
39-
};
40-
4137
render() {
4238
let props = this.props;
4339
return <RNSVGTSpan

elements/Text.js

-4
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,6 @@ export default class extends Shape {
3333
};
3434
};
3535

36-
setNativeProps = (...args) => {
37-
this.root.setNativeProps(...args);
38-
};
39-
4036
render() {
4137
const props = this.props;
4238

elements/Use.js

-4
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,6 @@ export default class extends Shape {
1616
...pathProps
1717
};
1818

19-
setNativeProps = (...args) => {
20-
this.root.setNativeProps(...args);
21-
};
22-
2319
render() {
2420
const {props} = this;
2521
// match "url(#pattern)"

0 commit comments

Comments
 (0)