Skip to content

Commit 39c1b4b

Browse files
committed
[Patch] add onClick event listeners for emojis
1 parent bc78bee commit 39c1b4b

File tree

7 files changed

+181
-77
lines changed

7 files changed

+181
-77
lines changed

dist/index.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/universal/index.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "emoji-picker-react",
3-
"version": "1.7.1",
3+
"version": "1.7.2",
44
"description": "React emoji-picker component",
55
"main": "./dist/index.js",
66
"scripts": {

src/DiversityPicker/index.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,16 @@ function DiversityPicker({ index, assetPath, emojiResolution, onEmojiClick, clos
1616

1717
let diversities = null;
1818

19-
function onClick(diversity, e) {
19+
function onMouseDown(diversity, e) {
2020
e.preventDefault();
2121
onEmojiClick(diversity, emoji, e);
22-
close();
22+
setTimeout(() => {
23+
close();
24+
}, 500);
25+
}
26+
27+
function onClick(e) {
28+
e.preventDefault();
2329
}
2430

2531
if (emoji && emoji.diversities) {
@@ -35,7 +41,8 @@ function DiversityPicker({ index, assetPath, emojiResolution, onEmojiClick, clos
3541
key={diversity}
3642
style={style}
3743
className="emoji"
38-
onMouseDown={((e) => onClick(diversity, e))}/>
44+
onClick={onClick}
45+
onMouseDown={((e) => onMouseDown(diversity, e))}/>
3946
);
4047
})
4148
}</div>

src/Emoji/index.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ class Emoji extends Component {
1313
this.hasDiversities = this.emoji.hasOwnProperty('diversities');
1414

1515
this.onClick = this.onClick.bind(this);
16+
this.emojiChosen = this.emojiChosen.bind(this);
1617
this.onMouseEnter = this.onMouseEnter.bind(this);
1718
this.onMouseLeave = this.onMouseLeave.bind(this);
1819
this.onMouseDown = this.onMouseDown.bind(this);
@@ -30,10 +31,13 @@ class Emoji extends Component {
3031
}
3132

3233
onClick(e) {
34+
e.preventDefault();
35+
}
36+
37+
emojiChosen(e) {
3338
const { emoji } = this.props;
3439
const onEmojiClick = this.context.onEmojiClick;
3540

36-
e.preventDefault();
3741
onEmojiClick && onEmojiClick(emoji.unified, emoji, e);
3842
}
3943

@@ -87,7 +91,7 @@ class Emoji extends Component {
8791
delete this.timeCounter;
8892

8993
if (!(counter && (Date.now() - counter) >= OPEN_DIVERSITIES_TIMEOUT)) {
90-
return this.onClick(e);
94+
return this.emojiChosen(e);
9195
}
9296
}
9397

@@ -115,6 +119,7 @@ class Emoji extends Component {
115119
return (
116120
<a href="#!"
117121
className={className}
122+
onClick={this.onClick}
118123
onMouseEnter={this.onMouseEnter}
119124
onMouseLeave={this.onMouseLeave}
120125
onMouseDown={this.onMouseDown}

src/EmojiPicker/index.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,9 @@ class EmojiPicker extends Component {
198198

199199
onEmojiClick(unified, emoji, e) {
200200

201-
e.preventDefault();
201+
if (!e.defaultPrevented) {
202+
e.preventDefault();
203+
}
202204

203205
const usedModifiers = modifiers.filter((modifier) => unified.indexOf(modifier) > -1);
204206

0 commit comments

Comments
 (0)