Skip to content

Commit a6eb128

Browse files
committed
1.2.1
1 parent 650ebea commit a6eb128

File tree

6 files changed

+24
-10
lines changed

6 files changed

+24
-10
lines changed

dist/react-tooltip.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -264,14 +264,16 @@ var ReactTooltip = function (_Component) {
264264
}, {
265265
key: 'checkStatus',
266266
value: function checkStatus(e) {
267-
e.stopPropagation();
267+
if (this.props.eventPropagationMode === 'bubble') {
268+
e.stopPropagation();
269+
}
268270
if (this.state.show && e.currentTarget.getAttribute('currentItem') === 'true') {
269271
this.hideTooltip(e);
270272
} else {
271273
e.currentTarget.setAttribute('currentItem', 'true');
272274
/* when click other place, the tooltip should be removed */
273275
window.removeEventListener('click', this.bindClickListener);
274-
window.addEventListener('click', this.bindClickListener, false);
276+
window.addEventListener('click', this.bindClickListener, this.props.eventPropagationMode === 'capture');
275277

276278
this.showTooltip(e);
277279
this.setUntargetItems(e.currentTarget);
@@ -743,7 +745,12 @@ ReactTooltip.propTypes = {
743745
delayHide: _react.PropTypes.number,
744746
delayShow: _react.PropTypes.number,
745747
event: _react.PropTypes.any,
746-
watchWindow: _react.PropTypes.bool
748+
watchWindow: _react.PropTypes.bool,
749+
eventPropagationMode: _react.PropTypes.oneOf(['bubble', 'capture'])
750+
};
751+
752+
ReactTooltip.defaultProps = {
753+
eventPropagationMode: 'bubble'
747754
};
748755

749756
/* export default not fit for standalone, it will exports {default:...} */

dist/react-tooltip.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

example/src/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ const Test = React.createClass({
4747
<h4 className='title'>React Tooltip</h4>
4848
<div className='demonstration'>
4949
<a data-for='main' data-tip="Hello<br />multiline<br />tooltip">
50-
‿‿
50+
5151
</a>
5252
</div>
5353
<div className='control-panel'>

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-tooltip",
3-
"version": "1.2.0",
3+
"version": "1.2.1",
44
"description": "react tooltip component",
55
"main": "index.js",
66
"scripts": {

standalone/react-tooltip.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -311,14 +311,16 @@ var ReactTooltip = function (_Component) {
311311
}, {
312312
key: 'checkStatus',
313313
value: function checkStatus(e) {
314-
e.stopPropagation();
314+
if (this.props.eventPropagationMode === 'bubble') {
315+
e.stopPropagation();
316+
}
315317
if (this.state.show && e.currentTarget.getAttribute('currentItem') === 'true') {
316318
this.hideTooltip(e);
317319
} else {
318320
e.currentTarget.setAttribute('currentItem', 'true');
319321
/* when click other place, the tooltip should be removed */
320322
window.removeEventListener('click', this.bindClickListener);
321-
window.addEventListener('click', this.bindClickListener, false);
323+
window.addEventListener('click', this.bindClickListener, this.props.eventPropagationMode === 'capture');
322324

323325
this.showTooltip(e);
324326
this.setUntargetItems(e.currentTarget);
@@ -790,7 +792,12 @@ ReactTooltip.propTypes = {
790792
delayHide: _react.PropTypes.number,
791793
delayShow: _react.PropTypes.number,
792794
event: _react.PropTypes.any,
793-
watchWindow: _react.PropTypes.bool
795+
watchWindow: _react.PropTypes.bool,
796+
eventPropagationMode: _react.PropTypes.oneOf(['bubble', 'capture'])
797+
};
798+
799+
ReactTooltip.defaultProps = {
800+
eventPropagationMode: 'bubble'
794801
};
795802

796803
/* export default not fit for standalone, it will exports {default:...} */

standalone/react-tooltip.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)