From dcb7e1ecf479a72c904dd882c05f1c446dbe2fe4 Mon Sep 17 00:00:00 2001
From: scarlett <nia@netbsd.org>
Date: Tue, 4 Sep 2018 00:32:25 +0100
Subject: Add option for disabling counts (followers, statuses) in user
 profiles.

---
 src/components/settings/settings.vue | 4 ++++
 1 file changed, 4 insertions(+)

(limited to 'src/components/settings/settings.vue')

diff --git a/src/components/settings/settings.vue b/src/components/settings/settings.vue
index c106b79c..2cf62200 100644
--- a/src/components/settings/settings.vue
+++ b/src/components/settings/settings.vue
@@ -122,6 +122,10 @@
               <i class="icon-down-open"/>
             </label>
           </div>
+          <div>
+            <input type="checkbox" id="hideUserStats" v-model="hideUserStatsLocal">
+            <label for="hideUserStats">{{$t('settings.hide_user_stats')}}</label>
+          </div>
         </div>
         <div class="setting-item">
           <p>{{$t('settings.filtering_explanation')}}</p>
-- 
cgit v1.2.3-70-g09d2


From bdcbd110e42a5deb46116f3ba631118143f71a69 Mon Sep 17 00:00:00 2001
From: scarlett <nia@netbsd.org>
Date: Tue, 4 Sep 2018 00:41:37 +0100
Subject: Add option for hiding post statistics (e.g. repeats, favs)

---
 src/components/favorite_button/favorite_button.js  | 1 +
 src/components/favorite_button/favorite_button.vue | 4 ++--
 src/components/retweet_button/retweet_button.js    | 1 +
 src/components/retweet_button/retweet_button.vue   | 4 ++--
 src/components/settings/settings.js                | 4 ++++
 src/components/settings/settings.vue               | 4 ++++
 src/i18n/messages.js                               | 1 +
 src/main.js                                        | 1 +
 src/modules/config.js                              | 1 +
 9 files changed, 17 insertions(+), 4 deletions(-)

(limited to 'src/components/settings/settings.vue')

diff --git a/src/components/favorite_button/favorite_button.js b/src/components/favorite_button/favorite_button.js
index 1266be90..80893719 100644
--- a/src/components/favorite_button/favorite_button.js
+++ b/src/components/favorite_button/favorite_button.js
@@ -2,6 +2,7 @@ const FavoriteButton = {
   props: ['status', 'loggedIn'],
   data () {
     return {
+      hidePostStatsLocal: this.$store.state.config.hidePostStats,
       animated: false
     }
   },
diff --git a/src/components/favorite_button/favorite_button.vue b/src/components/favorite_button/favorite_button.vue
index 1e1a6970..71cb875e 100644
--- a/src/components/favorite_button/favorite_button.vue
+++ b/src/components/favorite_button/favorite_button.vue
@@ -1,11 +1,11 @@
 <template>
   <div v-if="loggedIn">
     <i :class='classes' class='favorite-button fav-active' @click.prevent='favorite()'/>
-    <span v-if='status.fave_num > 0'>{{status.fave_num}}</span>
+    <span v-if='!hidePostStatsLocal && status.fave_num > 0'>{{status.fave_num}}</span>
   </div>
   <div v-else>
     <i :class='classes' class='favorite-button'/>
-    <span v-if='status.fave_num > 0'>{{status.fave_num}}</span>
+    <span v-if='!hidePostStatsLocal && status.fave_num > 0'>{{status.fave_num}}</span>
   </div>
 </template>
 
diff --git a/src/components/retweet_button/retweet_button.js b/src/components/retweet_button/retweet_button.js
index cafa9cbc..ef2f271a 100644
--- a/src/components/retweet_button/retweet_button.js
+++ b/src/components/retweet_button/retweet_button.js
@@ -2,6 +2,7 @@ const RetweetButton = {
   props: ['status', 'loggedIn', 'visibility'],
   data () {
     return {
+      hidePostStatsLocal: this.$store.state.config.hidePostStats,
       animated: false
     }
   },
diff --git a/src/components/retweet_button/retweet_button.vue b/src/components/retweet_button/retweet_button.vue
index ee5722bd..5b1e64b8 100644
--- a/src/components/retweet_button/retweet_button.vue
+++ b/src/components/retweet_button/retweet_button.vue
@@ -2,7 +2,7 @@
   <div v-if="loggedIn">
     <template v-if="visibility !== 'private' && visibility !== 'direct'">
       <i :class='classes' class='icon-retweet rt-active' v-on:click.prevent='retweet()'></i>
-      <span v-if='status.repeat_num > 0'>{{status.repeat_num}}</span>
+      <span v-if='!hidePostStatsLocal && status.repeat_num > 0'>{{status.repeat_num}}</span>
     </template>
     <template v-else>
       <i :class='classes' class='icon-lock' :title="$t('timeline.no_retweet_hint')"></i>
@@ -10,7 +10,7 @@
   </div>
   <div v-else-if="!loggedIn">
     <i :class='classes' class='icon-retweet'></i>
-    <span v-if='status.repeat_num > 0'>{{status.repeat_num}}</span>
+    <span v-if='!hidePostStatsLocal && status.repeat_num > 0'>{{status.repeat_num}}</span>
   </div>
 </template>
 
diff --git a/src/components/settings/settings.js b/src/components/settings/settings.js
index 088e19d3..1dd53ab2 100644
--- a/src/components/settings/settings.js
+++ b/src/components/settings/settings.js
@@ -10,6 +10,7 @@ const settings = {
       hideAttachmentsLocal: this.$store.state.config.hideAttachments,
       hideAttachmentsInConvLocal: this.$store.state.config.hideAttachmentsInConv,
       hideNsfwLocal: this.$store.state.config.hideNsfw,
+      hidePostStatsLocal: this.$store.state.config.hidePostStats,
       hideUserStatsLocal: this.$store.state.config.hideUserStats,
       notificationVisibilityLocal: this.$store.state.config.notificationVisibility,
       replyVisibilityLocal: this.$store.state.config.replyVisibility,
@@ -48,6 +49,9 @@ const settings = {
     hideAttachmentsInConvLocal (value) {
       this.$store.dispatch('setOption', { name: 'hideAttachmentsInConv', value })
     },
+    hidePostStatsLocal (value) {
+      this.$store.dispatch('setOption', { name: 'hidePostStats', value })
+    },
     hideUserStatsLocal (value) {
       this.$store.dispatch('setOption', { name: 'hideUserStats', value })
     },
diff --git a/src/components/settings/settings.vue b/src/components/settings/settings.vue
index 2cf62200..18e8e244 100644
--- a/src/components/settings/settings.vue
+++ b/src/components/settings/settings.vue
@@ -122,6 +122,10 @@
               <i class="icon-down-open"/>
             </label>
           </div>
+          <div>
+            <input type="checkbox" id="hidePostStats" v-model="hidePostStatsLocal">
+            <label for="hidePostStats">{{$t('settings.hide_post_stats')}}</label>
+          </div>
           <div>
             <input type="checkbox" id="hideUserStats" v-model="hideUserStatsLocal">
             <label for="hideUserStats">{{$t('settings.hide_user_stats')}}</label>
diff --git a/src/i18n/messages.js b/src/i18n/messages.js
index 42b1dd40..56cc7b49 100644
--- a/src/i18n/messages.js
+++ b/src/i18n/messages.js
@@ -328,6 +328,7 @@ const en = {
     loop_video_silent_only: 'Loop only videos without sound (i.e. Mastodon\'s "gifs")',
     reply_link_preview: 'Enable reply-link preview on mouse hover',
     replies_in_timeline: 'Replies in timeline',
+    hide_post_stats: 'Hide post statistics (e.g. repeat and favorite counts)',
     hide_user_stats: 'Hide user statistics (e.g. status and follower counts)',
     reply_visibility_all: 'Show all replies',
     reply_visibility_following: 'Only show replies directed at me or users I\'m following',
diff --git a/src/main.js b/src/main.js
index d05ecba8..132029dc 100644
--- a/src/main.js
+++ b/src/main.js
@@ -48,6 +48,7 @@ const persistedStateOptions = {
     'config.collapseMessageWithSubject',
     'config.hideAttachments',
     'config.hideAttachmentsInConv',
+    'config.hidePostStats',
     'config.hideUserStats',
     'config.hideNsfw',
     'config.replyVisibility',
diff --git a/src/modules/config.js b/src/modules/config.js
index 24665e95..dae58eb1 100644
--- a/src/modules/config.js
+++ b/src/modules/config.js
@@ -9,6 +9,7 @@ const defaultState = {
   collapseMessageWithSubject: false,
   hideAttachments: false,
   hideAttachmentsInConv: false,
+  hidePostStats: false,
   hideUserStats: false,
   hideNsfw: true,
   loopVideo: true,
-- 
cgit v1.2.3-70-g09d2

