diff --git a/src/main/java/org/quantumbadger/redreader/common/PrefsUtility.java b/src/main/java/org/quantumbadger/redreader/common/PrefsUtility.java
index e6146608a..0fd2fc27a 100644
--- a/src/main/java/org/quantumbadger/redreader/common/PrefsUtility.java
+++ b/src/main/java/org/quantumbadger/redreader/common/PrefsUtility.java
@@ -1150,6 +1150,19 @@ public static boolean pref_behaviour_hide_read_posts() {
false);
}
+ // How many comments a post should have to be shown?
+ public static long pref_behavior_hide_with_few_comments() {
+ final String value = getString(
+ R.string.pref_behaviour_hide_posts_min_comments_key,
+ "-1");
+ try {
+ return Long.parseLong(value);
+ } catch(final Throwable e) {
+ // The preference is unset, set to "", or somehow set to not-a-number
+ return -1;
+ }
+ }
+
public enum SharingDomain {
STANDARD_REDDIT("reddit.com"),
SHORT_REDDIT("redd.it"),
diff --git a/src/main/java/org/quantumbadger/redreader/fragments/PostListingFragment.java b/src/main/java/org/quantumbadger/redreader/fragments/PostListingFragment.java
index 610797727..14f0638b5 100644
--- a/src/main/java/org/quantumbadger/redreader/fragments/PostListingFragment.java
+++ b/src/main/java/org/quantumbadger/redreader/fragments/PostListingFragment.java
@@ -836,7 +836,12 @@ public void onDataStreamComplete(
&& blockedSubreddits.contains(
new SubredditCanonicalId(post.getSubreddit().getDecoded()));
+ final long minCommentsOrHide =
+ PrefsUtility.pref_behavior_hide_with_few_comments();
+
if(!isPostBlocked
+ && (minCommentsOrHide <= 0
+ || post.getNum_comments() >= minCommentsOrHide)
&& (!post.getOver_18() || isNsfwAllowed)
&& mPostIds.add(post.getIdAlone())) {
diff --git a/src/main/java/org/quantumbadger/redreader/settings/SettingsFragment.java b/src/main/java/org/quantumbadger/redreader/settings/SettingsFragment.java
index 86b2b167e..3006a3567 100644
--- a/src/main/java/org/quantumbadger/redreader/settings/SettingsFragment.java
+++ b/src/main/java/org/quantumbadger/redreader/settings/SettingsFragment.java
@@ -184,6 +184,7 @@ public void onCreatePreferences(
final int[] editTextPrefsToUpdate = {
R.string.pref_behaviour_comment_min_key,
+ R.string.pref_behaviour_hide_posts_min_comments_key,
R.string.pref_reddit_client_id_override_key
};
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index 63acf6062..05a3b9cce 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -82,6 +82,10 @@
pref_behaviour_nsfw
Show NSFW content
+ pref_behaviour_hide_posts_few_comments
+ Hide posts with few comments
+ Hide posts with fewer than those comments (blank or -1 to show all)
+
Cache Pruning
diff --git a/src/main/res/xml/prefs_behaviour.xml b/src/main/res/xml/prefs_behaviour.xml
index b0b883486..726dfda23 100644
--- a/src/main/res/xml/prefs_behaviour.xml
+++ b/src/main/res/xml/prefs_behaviour.xml
@@ -175,6 +175,13 @@
android:key="@string/pref_behaviour_hide_read_posts_key"
android:defaultValue="false"/>
+
+