From 9c363ff045ebc8252677848ea07e909a8ea7691c Mon Sep 17 00:00:00 2001 From: syuilo Date: Thu, 28 Feb 2019 12:29:04 +0900 Subject: Improve usability --- .../app/desktop/views/components/settings.vue | 26 ++++++++++++++++++--- src/client/app/mobile/views/pages/settings.vue | 27 +++++++++++++++++++--- 2 files changed, 47 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/client/app/desktop/views/components/settings.vue b/src/client/app/desktop/views/components/settings.vue index fb67f52e50..9e61dba503 100644 --- a/src/client/app/desktop/views/components/settings.vue +++ b/src/client/app/desktop/views/components/settings.vue @@ -463,17 +463,26 @@ export default Vue.extend({ circleIcons: { get() { return this.$store.state.settings.circleIcons; }, - set(value) { this.$store.dispatch('settings/set', { key: 'circleIcons', value }); } + set(value) { + this.$store.dispatch('settings/set', { key: 'circleIcons', value }); + this.reload(); + } }, contrastedAcct: { get() { return this.$store.state.settings.contrastedAcct; }, - set(value) { this.$store.dispatch('settings/set', { key: 'contrastedAcct', value }); } + set(value) { + this.$store.dispatch('settings/set', { key: 'contrastedAcct', value }); + this.reload(); + } }, showFullAcct: { get() { return this.$store.state.settings.showFullAcct; }, - set(value) { this.$store.dispatch('settings/set', { key: 'showFullAcct', value }); } + set(value) { + this.$store.dispatch('settings/set', { key: 'showFullAcct', value }); + this.reload(); + } }, showVia: { @@ -517,6 +526,17 @@ export default Vue.extend({ }); }, methods: { + reload() { + this.$root.dialog({ + type: 'warning', + text: this.$t('@.reload-to-apply-the-setting'), + showCancelButton: true + }).then(({ canceled }) => { + if (!canceled) { + location.reload(); + } + }); + }, customizeHome() { location.href = '/?customize'; }, diff --git a/src/client/app/mobile/views/pages/settings.vue b/src/client/app/mobile/views/pages/settings.vue index 5371c300ee..aec06adee5 100644 --- a/src/client/app/mobile/views/pages/settings.vue +++ b/src/client/app/mobile/views/pages/settings.vue @@ -308,7 +308,10 @@ export default Vue.extend({ circleIcons: { get() { return this.$store.state.settings.circleIcons; }, - set(value) { this.$store.dispatch('settings/set', { key: 'circleIcons', value }); } + set(value) { + this.$store.dispatch('settings/set', { key: 'circleIcons', value }); + this.reload(); + } }, lineWidth: { @@ -318,12 +321,18 @@ export default Vue.extend({ contrastedAcct: { get() { return this.$store.state.settings.contrastedAcct; }, - set(value) { this.$store.dispatch('settings/set', { key: 'contrastedAcct', value }); } + set(value) { + this.$store.dispatch('settings/set', { key: 'contrastedAcct', value }); + this.reload(); + } }, showFullAcct: { get() { return this.$store.state.settings.showFullAcct; }, - set(value) { this.$store.dispatch('settings/set', { key: 'showFullAcct', value }); } + set(value) { + this.$store.dispatch('settings/set', { key: 'showFullAcct', value }); + this.reload(); + } }, showVia: { @@ -396,6 +405,18 @@ export default Vue.extend({ this.$root.signout(); }, + reload() { + this.$root.dialog({ + type: 'warning', + text: this.$t('@.reload-to-apply-the-setting'), + showCancelButton: true + }).then(({ canceled }) => { + if (!canceled) { + location.reload(); + } + }); + }, + checkForUpdate() { this.checkingForUpdate = true; checkForUpdate(this.$root, true, true).then(newer => { -- cgit v1.2.3-freya