From 60406740dc2eb79e13e7efbefb9169ec44821712 Mon Sep 17 00:00:00 2001
From: AkiraFukushima
Date: Mon, 12 Nov 2018 22:18:33 +0900
Subject: [PATCH] Remove status and spoiler text from state for performance
---
.../TimelineSpace/Modals/NewToot.vue | 21 +++++--------------
.../store/TimelineSpace/Modals/NewToot.js | 19 +++++++----------
2 files changed, 12 insertions(+), 28 deletions(-)
diff --git a/src/renderer/components/TimelineSpace/Modals/NewToot.vue b/src/renderer/components/TimelineSpace/Modals/NewToot.vue
index 6fb1a3d5..2d189403 100644
--- a/src/renderer/components/TimelineSpace/Modals/NewToot.vue
+++ b/src/renderer/components/TimelineSpace/Modals/NewToot.vue
@@ -92,6 +92,8 @@ export default {
},
data () {
return {
+ status: '',
+ spoiler: '',
showContentWarning: false,
visibilityList: Visibility
}
@@ -110,6 +112,7 @@ export default {
blockSubmit: state => state.blockSubmit,
visibility: state => state.visibility,
sensitive: state => state.sensitive,
+ initialStatus: state => state.initialStatus,
visibilityIcon: (state) => {
switch (state.visibility) {
case Visibility.Public.value:
@@ -143,22 +146,6 @@ export default {
}
}
},
- status: {
- get () {
- return this.$store.state.TimelineSpace.Modals.NewToot.status
- },
- set (value) {
- this.$store.commit('TimelineSpace/Modals/NewToot/updateStatus', value)
- }
- },
- spoiler: {
- get () {
- return this.$store.state.TimelineSpace.Modals.NewToot.spoiler
- },
- set (value) {
- this.$store.commit('TimelineSpace/Modals/NewToot/updateSpoiler', value)
- }
- },
pinedHashtag: {
get () {
return this.$store.state.TimelineSpace.Modals.NewToot.pinedHashtag
@@ -172,6 +159,8 @@ export default {
newTootModal: function (newState, oldState) {
if (!oldState && newState) {
this.showContentWarning = false
+ this.spoiler = ''
+ this.status = this.initialStatus
}
}
},
diff --git a/src/renderer/store/TimelineSpace/Modals/NewToot.js b/src/renderer/store/TimelineSpace/Modals/NewToot.js
index 916fd402..f2b88c97 100644
--- a/src/renderer/store/TimelineSpace/Modals/NewToot.js
+++ b/src/renderer/store/TimelineSpace/Modals/NewToot.js
@@ -10,13 +10,12 @@ const NewToot = {
},
state: {
modalOpen: false,
- status: '',
+ initialStatus: '',
replyToMessage: null,
blockSubmit: false,
attachedMedias: [],
visibility: Visibility.Public.value,
sensitive: false,
- spoiler: '',
attachedMediaId: 0,
pinedHashtag: false,
hashtags: []
@@ -28,8 +27,8 @@ const NewToot = {
setReplyTo (state, message) {
state.replyToMessage = message
},
- updateStatus (state, status) {
- state.status = status
+ updateInitialStatus (state, status) {
+ state.initialStatus = status
},
changeBlockSubmit (state, value) {
state.blockSubmit = value
@@ -55,9 +54,6 @@ const NewToot = {
changeSensitive (state, value) {
state.sensitive = value
},
- updateSpoiler (state, value) {
- state.spoiler = value
- },
updateMediaId (state, value) {
state.attachedMediaId = value
},
@@ -93,8 +89,8 @@ const NewToot = {
const mentionAccounts = [message.account.acct].concat(message.mentions.map(a => a.acct))
.filter((a, i, self) => self.indexOf(a) === i)
.filter((a) => a !== rootState.TimelineSpace.account.username)
+ commit('updateInitialStatus', `${mentionAccounts.map(m => `@${m}`).join(' ')} `)
commit('changeModal', true)
- commit('updateStatus', `${mentionAccounts.map(m => `@${m}`).join(' ')} `)
let value = Visibility.Public.value
Object.keys(Visibility).map((key, index) => {
const target = Visibility[key]
@@ -105,20 +101,19 @@ const NewToot = {
commit('changeVisibilityValue', value)
},
openModal ({ dispatch, commit, state, rootState }) {
- commit('changeModal', true)
if (!state.replyToMessage && state.pinedHashtag) {
- commit('updateStatus', state.hashtags.map(t => ` #${t.name}`).join())
+ commit('updateInitialStatus', state.hashtags.map(t => ` #${t.name}`).join())
}
+ commit('changeModal', true)
dispatch('fetchVisibility')
},
closeModal ({ commit }) {
commit('changeModal', false)
- commit('updateStatus', '')
+ commit('updateInitialStatus', '')
commit('setReplyTo', null)
commit('changeBlockSubmit', false)
commit('clearAttachedMedias')
commit('changeSensitive', false)
- commit('updateSpoiler', '')
commit('changeVisibilityValue', Visibility.Public.value)
},
uploadImage ({ state, commit, rootState }, image) {