From a0159f1e18bec19e01bdca5cac435b9ee81e3fa1 Mon Sep 17 00:00:00 2001 From: Ekaterina Vaartis Date: Wed, 6 Aug 2025 19:18:13 +0300 Subject: [PATCH] Allow copying just one emoji from another pack into a local one --- .../settings_modal/admin_tabs/emoji_tab.js | 6 +- .../settings_modal/admin_tabs/emoji_tab.vue | 5 +- .../helpers/emoji_editing_popover.vue | 75 +++++++++++++++---- src/i18n/en.json | 2 + 4 files changed, 69 insertions(+), 19 deletions(-) diff --git a/src/components/settings_modal/admin_tabs/emoji_tab.js b/src/components/settings_modal/admin_tabs/emoji_tab.js index a315756e8..d8f769e0b 100644 --- a/src/components/settings_modal/admin_tabs/emoji_tab.js +++ b/src/components/settings_modal/admin_tabs/emoji_tab.js @@ -145,9 +145,9 @@ const EmojiTab = { }) }, - updatePackFiles (newFiles) { - this.pack.files = newFiles - this.sortPackFiles(this.packName) + updatePackFiles (newFiles, packName) { + this.knownPacks[packName].files = newFiles + this.sortPackFiles(packName) }, loadPacksPaginated (listFunction) { diff --git a/src/components/settings_modal/admin_tabs/emoji_tab.vue b/src/components/settings_modal/admin_tabs/emoji_tab.vue index 333ff8b0e..9095192fe 100644 --- a/src/components/settings_modal/admin_tabs/emoji_tab.vue +++ b/src/components/settings_modal/admin_tabs/emoji_tab.vue @@ -387,11 +387,12 @@ ref="emojiPopovers" :key="shortcode" placement="top" - :title="$t('admin_dash.emoji.editing', [shortcode])" - :disabled="pack.remote !== undefined" + :title="$t(`admin_dash.emoji.${pack.remote === undefined ? 'editing' : 'copying'}`, [shortcode])" :shortcode="shortcode" :file="file" :pack-name="packName" + :remote="pack.remote" + :known-local-packs="knownLocalPacks" @update-pack-files="updatePackFiles" @display-error="displayError" > diff --git a/src/components/settings_modal/helpers/emoji_editing_popover.vue b/src/components/settings_modal/helpers/emoji_editing_popover.vue index 1cca45fbf..48c5f1a5e 100644 --- a/src/components/settings_modal/helpers/emoji_editing_popover.vue +++ b/src/components/settings_modal/helpers/emoji_editing_popover.vue @@ -7,7 +7,6 @@ popover-class="emoji-tab-edit-popover popover-default" :bound-to="{ x: 'container' }" :offset="{ y: 5 }" - :disabled="disabled" :class="{'emoji-unsaved': isEdited}" >