localOnlyを記憶できるように

This commit is contained in:
syuilo 2020-02-05 09:42:58 +09:00
parent 7eb30a351a
commit d87960e29f
3 changed files with 17 additions and 3 deletions

View file

@ -177,6 +177,12 @@ export default Vue.extend({
}
},
watch: {
localOnly() {
this.$store.commit('device/setLocalOnly', this.localOnly);
}
},
mounted() {
if (this.initialText) {
this.text = this.initialText;
@ -209,7 +215,9 @@ export default Vue.extend({
}
//
this.applyVisibility(this.$store.state.settings.rememberNoteVisibility ? (this.$store.state.device.visibility || this.$store.state.settings.defaultNoteVisibility) : this.$store.state.settings.defaultNoteVisibility);
this.applyVisibility(this.$store.state.settings.rememberNoteVisibility ? this.$store.state.device.visibility : this.$store.state.settings.defaultNoteVisibility);
this.localOnly = this.$store.state.settings.rememberNoteVisibility ? this.$store.state.device.localOnly : false;
//
if (this.reply && ['home', 'followers', 'specified'].includes(this.reply.visibility)) {

View file

@ -6,13 +6,13 @@
<mk-switch v-model="autoAcceptFollowed" :disabled="!isLocked" @change="save()">{{ $t('autoAcceptFollowed') }}</mk-switch>
</div>
<div class="_content">
<mk-select v-model="defaultNoteVisibility" style="margin-top: 8px;">
<mk-switch v-model="rememberNoteVisibility" @change="save()">{{ $t('rememberNoteVisibility') }}</mk-switch>
<mk-select v-model="defaultNoteVisibility" style="margin-bottom: 8px;" v-if="!rememberNoteVisibility">
<template #label>{{ $t('defaultNoteVisibility') }}</template>
<option value="public">{{ $t('_visibility.public') }}</option>
<option value="followers">{{ $t('_visibility.followers') }}</option>
<option value="specified">{{ $t('_visibility.specified') }}</option>
</mk-select>
<mk-switch v-model="rememberNoteVisibility" @change="save()">{{ $t('rememberNoteVisibility') }}</mk-switch>
</div>
</section>
</template>

View file

@ -24,6 +24,8 @@ const defaultDeviceSettings = {
useOsDefaultEmojis: false,
accounts: [],
recentEmojis: [],
visibility: 'public',
localOnly: false,
themes: [],
theme: 'light',
};
@ -110,6 +112,10 @@ export default (os: MiOS) => new Vuex.Store({
setVisibility(state, visibility) {
state.visibility = visibility;
},
setLocalOnly(state, localOnly) {
state.localOnly = localOnly;
},
}
},