commit: 9815be2a441f8c8c4fb4adbc9cc1713a1cc4b898
parent: bebaa6eced0af2665d105beb59bd21030425245a
Author: Eugen Rochko <eugen@zeonfederated.com>
Date: Tue, 10 Oct 2017 20:47:14 +0200
Fix #5293 - Pre-fill frequently used emojis to avoid bugs (#5305)
Diffstat:
1 file changed, 29 insertions(+), 3 deletions(-)
diff --git a/app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js b/app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js
@@ -8,15 +8,41 @@ import { useEmoji } from '../../../actions/emojis';
const perLine = 8;
const lines = 2;
+const DEFAULTS = [
+ '+1',
+ 'grinning',
+ 'kissing_heart',
+ 'heart_eyes',
+ 'laughing',
+ 'stuck_out_tongue_winking_eye',
+ 'sweat_smile',
+ 'joy',
+ 'yum',
+ 'disappointed',
+ 'thinking_face',
+ 'weary',
+ 'sob',
+ 'sunglasses',
+ 'heart',
+ 'ok_hand',
+];
+
const getFrequentlyUsedEmojis = createSelector([
state => state.getIn(['settings', 'frequentlyUsedEmojis'], ImmutableMap()),
-], emojiCounters => emojiCounters
+], emojiCounters => {
+ let emojis = emojiCounters
.keySeq()
.sort((a, b) => emojiCounters.get(a) - emojiCounters.get(b))
.reverse()
.slice(0, perLine * lines)
- .toArray()
-);
+ .toArray();
+
+ if (emojis.length < DEFAULTS.length) {
+ emojis = emojis.concat(DEFAULTS.slice(0, DEFAULTS.length - emojis.length));
+ }
+
+ return emojis;
+});
const getCustomEmojis = createSelector([
state => state.get('custom_emojis'),