From d02e14cb94e792915bdbd7034d8dee3ee8fab4b2 Mon Sep 17 00:00:00 2001 From: tamaina <tamaina@hotmail.co.jp> Date: Thu, 16 Apr 2020 01:04:21 +0900 Subject: [PATCH] Fix Media List in CW Content (#6099) --- src/client/components/media-list.vue | 11 +++++++---- src/client/components/note.vue | 7 +++++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/client/components/media-list.vue b/src/client/components/media-list.vue index 2c5df4eca..c757d8091 100644 --- a/src/client/components/media-list.vue +++ b/src/client/components/media-list.vue @@ -34,9 +34,7 @@ export default Vue.extend({ default: false }, // specify the parent element - parentElement: { - type: Object - } + parentElement: {} }, data() { return { @@ -69,7 +67,7 @@ export default Vue.extend({ if (this.$refs.gridOuter) { let height = 287; - const parent = this.$props.parentElement || this.$parent.$el; + const parent = this.parentElement || this.$parent.$el; if (this.$refs.gridOuter.clientHeight) { height = this.$refs.gridOuter.clientHeight; @@ -83,6 +81,11 @@ export default Vue.extend({ } }); } + }, + watch: { + parentElement() { + this.size(); + } } }); </script> diff --git a/src/client/components/note.vue b/src/client/components/note.vue index a39520fb4..34871ac85 100644 --- a/src/client/components/note.vue +++ b/src/client/components/note.vue @@ -33,7 +33,7 @@ <mk-avatar class="avatar" :user="appearNote.user"/> <div class="main"> <x-note-header class="header" :note="appearNote" :mini="true"/> - <div class="body" v-if="appearNote.deletedAt == null"> + <div class="body" v-if="appearNote.deletedAt == null" ref="noteBody"> <p v-if="appearNote.cw != null" class="cw"> <mfm v-if="appearNote.cw != ''" class="text" :text="appearNote.cw" :author="appearNote.user" :i="$store.state.i" :custom-emojis="appearNote.emojis" /> <x-cw-button v-model="showContent" :note="appearNote"/> @@ -46,7 +46,7 @@ <a class="rp" v-if="appearNote.renote != null">RN:</a> </div> <div class="files" v-if="appearNote.files.length > 0"> - <x-media-list :media-list="appearNote.files"/> + <x-media-list :media-list="appearNote.files" :parent-element="noteBody"/> </div> <x-poll v-if="appearNote.poll" :note="appearNote" ref="pollViewer"/> <mk-url-preview v-for="url in urls" :url="url" :key="url" :compact="true" class="url-preview"/> @@ -142,6 +142,7 @@ export default Vue.extend({ replies: [], showContent: false, hideThisNote: false, + noteBody: this.$refs.noteBody, faEdit, faBolt, faTimes, faBullhorn, faPlus, faMinus, faRetweet, faReply, faReplyAll, faEllipsisH, faHome, faUnlock, faEnvelope, faThumbtack, faBan }; }, @@ -254,6 +255,8 @@ export default Vue.extend({ if (this.$store.getters.isSignedIn) { this.connection.on('_connected_', this.onStreamConnected); } + + this.noteBody = this.$refs.noteBody }, beforeDestroy() {