From 8ea2bc94f73481e53978903828c89120dcaaab77 Mon Sep 17 00:00:00 2001 From: Andre Kovac Date: Wed, 1 Mar 2017 18:10:56 -0300 Subject: [PATCH 1/3] Add .npmignore to remove Demo out of npm package --- .npmignore | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 .npmignore diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..43e2b4f --- /dev/null +++ b/.npmignore @@ -0,0 +1,4 @@ +.idea/ +.gitignore + +Demo/ From f30f6b7a84c221c0767c59bbbf5c609155884aed Mon Sep 17 00:00:00 2001 From: Andre Kovac Date: Wed, 1 Mar 2017 18:13:18 -0300 Subject: [PATCH 2/3] Add defaultProps for all non-required props --- library/TransformableImage.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/library/TransformableImage.js b/library/TransformableImage.js index 17dd7d3..c70297a 100644 --- a/library/TransformableImage.js +++ b/library/TransformableImage.js @@ -28,9 +28,13 @@ export default class TransformableImage extends Component { }; static defaultProps = { + pixels: undefined, enableTransform: true, enableScale: true, - enableTranslate: true + enableTranslate: true, + onSingleTapConfirmed: undefined, + onTransformGestureReleased: undefined, + onViewTransformed: undefined, }; constructor(props) { From f6010285ca40585bec4b5ef80862d1a67c342227 Mon Sep 17 00:00:00 2001 From: Andre Kovac Date: Wed, 1 Mar 2017 18:18:23 -0300 Subject: [PATCH 3/3] Add onSingleTap and onDoubleTap props and pass on to ViewTransformer as props Complementary change to commits in react-native-view-transformer of addition of these callbacks. --- library/TransformableImage.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/library/TransformableImage.js b/library/TransformableImage.js index c70297a..2e8a41b 100644 --- a/library/TransformableImage.js +++ b/library/TransformableImage.js @@ -22,7 +22,21 @@ export default class TransformableImage extends Component { enableTransform: PropTypes.bool, enableScale: PropTypes.bool, enableTranslate: PropTypes.bool, + /** + * Callback after a single tap (includes first and second tap of double-tap) + */ + onSingleTap: PropTypes.func, + /** + * Callback after a single tap which is not part of a double-tap + */ onSingleTapConfirmed: PropTypes.func, + /** + * Callback on a double tap (if supplied, it overwrites the default scaling behavior) + * + * The first two arguments of the callback are the x- and y-coordinates of the + * finger while tapping, respectively. + */ + onDoubleTap: PropTypes.func, onTransformGestureReleased: PropTypes.func, onViewTransformed: PropTypes.func }; @@ -32,7 +46,9 @@ export default class TransformableImage extends Component { enableTransform: true, enableScale: true, enableTranslate: true, + onSingleTap: undefined, onSingleTapConfirmed: undefined, + onDoubleTap: undefined, onTransformGestureReleased: undefined, onViewTransformed: undefined, }; @@ -98,7 +114,9 @@ export default class TransformableImage extends Component { enableResistance={true} onTransformGestureReleased={this.props.onTransformGestureReleased} onViewTransformed={this.props.onViewTransformed} + onSingleTap={this.props.onSingleTap} onSingleTapConfirmed={this.props.onSingleTapConfirmed} + onDoubleTap={this.props.onDoubleTap} maxScale={maxScale} contentAspectRatio={contentAspectRatio} onLayout={this.onLayout.bind(this)}