commit: 7c0f3ea666a866a3bb1f2e8da161ae69901e519b
parent: 0e1ab69c33f155865adc27d940a2542ffdcec30a
Author: Roger Braun <roger@rogerbraun.net>
Date: Thu, 23 Feb 2017 00:04:47 +0100
Add setting to hide all attachments.
Diffstat:
6 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/src/components/settings/settings.js b/src/components/settings/settings.js
@@ -1,8 +1,18 @@
import StyleSwitcher from '../style_switcher/style_switcher.vue'
const settings = {
+ data () {
+ return {
+ hideAttachmentsLocal: this.$store.state.config.hideAttachments
+ }
+ },
components: {
StyleSwitcher
+ },
+ watch: {
+ hideAttachmentsLocal (value) {
+ this.$store.dispatch('setOption', { name: 'hideAttachments', value })
+ }
}
}
diff --git a/src/components/settings/settings.vue b/src/components/settings/settings.vue
@@ -8,6 +8,11 @@
<h2>Theme</h2>
<style-switcher></style-switcher>
</div>
+ <div class="setting-item">
+ <h2>Attachments</h2>
+ <input type="checkbox" id="hideAttachments" v-model="hideAttachmentsLocal">
+ <label for="hideAttachments">Hide Attachments</label>
+ </div>
</div>
</div>
</template>
diff --git a/src/components/status/status.js b/src/components/status/status.js
@@ -17,6 +17,7 @@ const Status = {
userExpanded: false
}),
computed: {
+ hideAttachments () { return this.$store.state.config.hideAttachments },
retweet () { return !!this.statusoid.retweeted_status },
retweeter () { return this.statusoid.user.name },
status () {
diff --git a/src/components/status/status.vue b/src/components/status/status.vue
@@ -57,7 +57,7 @@
<div @click.prevent="linkClicked" class="status-content" v-html="status.statusnet_html"></div>
<div v-if='status.attachments' class='attachments'>
- <attachment :status-id="status.id" :nsfw="status.nsfw" :attachment="attachment" v-for="attachment in status.attachments">
+ <attachment v-if="!hideAttachments" :status-id="status.id" :nsfw="status.nsfw" :attachment="attachment" v-for="attachment in status.attachments">
</attachment>
</div>
</div>
diff --git a/src/main.js b/src/main.js
@@ -29,7 +29,7 @@ Vue.use(VueTimeago, {
})
const persistedStateOptions = {
- paths: ['users.users', 'statuses.notifications']
+ paths: ['users.users', 'statuses.notifications', 'config.hideAttachments']
}
const store = new Vuex.Store({
diff --git a/src/modules/config.js b/src/modules/config.js
@@ -3,7 +3,8 @@ import StyleSetter from '../services/style_setter/style_setter.js'
const defaultState = {
name: 'Pleroma FE',
- colors: {}
+ colors: {},
+ hideAttachments: false
}
const config = {