From: Eugen Rochko Date: Tue, 10 Oct 2017 13:18:12 +0000 (+0200) Subject: Fix #5295 - Order custom emoji lexicographically (#5297) X-Git-Url: https://git.xn--scling-oua.cat.family/?a=commitdiff_plain;h=4bb3e4eeba3002ecae98efe6e1a0c05776fb2308;p=mastodon.git Fix #5295 - Order custom emoji lexicographically (#5297) --- 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 4fa93f6b0..8708f8cba 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 @@ -18,8 +18,23 @@ const getFrequentlyUsedEmojis = createSelector([ .toArray() ); +const getCustomEmojis = createSelector([ + state => state.get('custom_emojis'), +], emojis => emojis.sort((a, b) => { + const aShort = a.get('shortcode').toLowerCase(); + const bShort = b.get('shortcode').toLowerCase(); + + if (aShort < bShort) { + return -1; + } else if (aShort > bShort ) { + return 1; + } else { + return 0; + } +})); + const mapStateToProps = state => ({ - custom_emojis: state.get('custom_emojis'), + custom_emojis: getCustomEmojis(state), autoPlay: state.getIn(['meta', 'auto_play_gif']), skinTone: state.getIn(['settings', 'skinTone']), frequentlyUsedEmojis: getFrequentlyUsedEmojis(state),