diff --git a/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java b/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java index 5ffa48d54..e31766a04 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java +++ b/mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java @@ -7,6 +7,7 @@ public class GlobalUserPreferences{ public static boolean playGifs; public static boolean useCustomTabs; public static boolean trueBlackTheme; + public static boolean loadNewPosts; public static ThemePreference theme; private static SharedPreferences getPrefs(){ @@ -18,6 +19,7 @@ public class GlobalUserPreferences{ playGifs=prefs.getBoolean("playGifs", true); useCustomTabs=prefs.getBoolean("useCustomTabs", true); trueBlackTheme=prefs.getBoolean("trueBlackTheme", false); + loadNewPosts=prefs.getBoolean("loadNewPosts", true); theme=ThemePreference.values()[prefs.getInt("theme", 0)]; } @@ -25,6 +27,7 @@ public class GlobalUserPreferences{ getPrefs().edit() .putBoolean("playGifs", playGifs) .putBoolean("useCustomTabs", useCustomTabs) + .putBoolean("loadNewPosts", loadNewPosts) .putBoolean("trueBlackTheme", trueBlackTheme) .putInt("theme", theme.ordinal()) .apply(); diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java index 31c302218..b8a3bd129 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java @@ -24,6 +24,7 @@ import android.widget.Toolbar; import com.squareup.otto.Subscribe; import org.joinmastodon.android.E; +import org.joinmastodon.android.GlobalUserPreferences; import org.joinmastodon.android.R; import org.joinmastodon.android.api.requests.timelines.GetHomeTimeline; import org.joinmastodon.android.api.session.AccountSessionManager; @@ -154,6 +155,7 @@ public class HomeTimelineFragment extends StatusListFragment{ } private void loadNewPosts(){ + if (!GlobalUserPreferences.loadNewPosts) return; dataLoading=true; // The idea here is that we request the timeline such that if there are fewer than `limit` posts, // we'll get the currently topmost post as last in the response. This way we know there's no gap diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java index 8b1590595..132501004 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/SettingsFragment.java @@ -102,6 +102,10 @@ public class SettingsFragment extends MastodonToolbarFragment{ GlobalUserPreferences.useCustomTabs=i.checked; GlobalUserPreferences.save(); })); + items.add(new SwitchItem(R.string.settings_load_new_posts, R.drawable.ic_fluent_arrow_up_24_regular, GlobalUserPreferences.loadNewPosts, i->{ + GlobalUserPreferences.loadNewPosts=i.checked; + GlobalUserPreferences.save(); + })); items.add(new HeaderItem(R.string.settings_notifications)); items.add(notificationPolicyItem=new NotificationPolicyItem()); diff --git a/mastodon/src/main/res/drawable/ic_fluent_arrow_up_24_regular.xml b/mastodon/src/main/res/drawable/ic_fluent_arrow_up_24_regular.xml new file mode 100644 index 000000000..5f33adbc2 --- /dev/null +++ b/mastodon/src/main/res/drawable/ic_fluent_arrow_up_24_regular.xml @@ -0,0 +1,3 @@ + + + diff --git a/mastodon/src/main/res/values-de-rDE/strings.xml b/mastodon/src/main/res/values-de-rDE/strings.xml index 0c19347fb..5891e59f5 100644 --- a/mastodon/src/main/res/values-de-rDE/strings.xml +++ b/mastodon/src/main/res/values-de-rDE/strings.xml @@ -236,6 +236,7 @@ Dunkel AMOLED-Modus App-Verhalten + Automatisch neue Beiträge laden Spiele animierte GIFs, Avatare und Emojis ab In-App-Browser verwenden Benachrichtigungen diff --git a/mastodon/src/main/res/values/strings.xml b/mastodon/src/main/res/values/strings.xml index 2ee4d9975..de6d73236 100644 --- a/mastodon/src/main/res/values/strings.xml +++ b/mastodon/src/main/res/values/strings.xml @@ -242,6 +242,7 @@ Dark True black mode Behavior + Automatically load new posts Play animated avatars and emoji Use in-app browser Notifications