about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js32
1 files 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
index 8708f8cba..71944128c 100644
--- 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'),