From c86d39f5f646e6948a972904eef5d6bcbbc2d7a1 Mon Sep 17 00:00:00 2001 From: Andrei Date: Sun, 14 Jun 2020 10:33:12 -0700 Subject: [PATCH] Android widget cache stories for quick retrieval --- .../src/com/newsblur/activity/AllStoriesItemsList.java | 2 +- .../NewsBlur/src/com/newsblur/activity/ItemsList.java | 4 ++-- .../NewsBlur/src/com/newsblur/activity/Reading.java | 8 -------- .../src/com/newsblur/database/StoryViewAdapter.java | 2 +- .../newsblur/fragment/ProfileActivityDetailsFragment.java | 4 ++-- .../android/NewsBlur/src/com/newsblur/util/UIUtils.java | 3 +-- .../NewsBlur/src/com/newsblur/widget/WidgetProvider.java | 1 + .../src/com/newsblur/widget/WidgetRemoteViewsFactory.java | 1 + .../NewsBlur/src/com/newsblur/widget/WidgetUtils.java | 8 +++++++- 9 files changed, 16 insertions(+), 17 deletions(-) diff --git a/clients/android/NewsBlur/src/com/newsblur/activity/AllStoriesItemsList.java b/clients/android/NewsBlur/src/com/newsblur/activity/AllStoriesItemsList.java index 493742a89..e9d5572bd 100644 --- a/clients/android/NewsBlur/src/com/newsblur/activity/AllStoriesItemsList.java +++ b/clients/android/NewsBlur/src/com/newsblur/activity/AllStoriesItemsList.java @@ -21,7 +21,7 @@ public class AllStoriesItemsList extends ItemsList { setIntent(intent); if (getIntent().getBooleanExtra(EXTRA_WIDGET_STORY, false)) { String hash = (String) getIntent().getSerializableExtra(EXTRA_STORY_HASH); - UIUtils.startReadingActivity(fs, hash, true,this); + UIUtils.startReadingActivity(fs, hash, this); } } } diff --git a/clients/android/NewsBlur/src/com/newsblur/activity/ItemsList.java b/clients/android/NewsBlur/src/com/newsblur/activity/ItemsList.java index df9eee129..1e0e59806 100644 --- a/clients/android/NewsBlur/src/com/newsblur/activity/ItemsList.java +++ b/clients/android/NewsBlur/src/com/newsblur/activity/ItemsList.java @@ -70,10 +70,10 @@ public abstract class ItemsList extends NbActivity implements StoryOrderChangedL if (getIntent().getBooleanExtra(EXTRA_WIDGET_STORY, false)) { String hash = (String) getIntent().getSerializableExtra(EXTRA_STORY_HASH); - UIUtils.startReadingActivity(fs, hash, true, this); + UIUtils.startReadingActivity(fs, hash, this); } else if (PrefsUtils.isAutoOpenFirstUnread(this)) { if (FeedUtils.dbHelper.getUnreadCount(fs, intelState) > 0) { - UIUtils.startReadingActivity(fs, Reading.FIND_FIRST_UNREAD, false,this); + UIUtils.startReadingActivity(fs, Reading.FIND_FIRST_UNREAD, this); } } diff --git a/clients/android/NewsBlur/src/com/newsblur/activity/Reading.java b/clients/android/NewsBlur/src/com/newsblur/activity/Reading.java index 9db362f44..e020e351f 100644 --- a/clients/android/NewsBlur/src/com/newsblur/activity/Reading.java +++ b/clients/android/NewsBlur/src/com/newsblur/activity/Reading.java @@ -53,7 +53,6 @@ public abstract class Reading extends NbActivity implements OnPageChangeListener public static final String EXTRA_FEEDSET = "feed_set"; public static final String EXTRA_POSITION = "feed_position"; public static final String EXTRA_STORY_HASH = "story_hash"; - public static final String EXTRA_WAIT_REFRESH = "wait_refresh"; private static final String BUNDLE_POSITION = "position"; private static final String BUNDLE_STARTING_UNREAD = "starting_unread"; private static final String BUNDLE_SELECTED_FEED_VIEW = "selectedFeedView"; @@ -105,7 +104,6 @@ public abstract class Reading extends NbActivity implements OnPageChangeListener private int lastVScrollPos = 0; private boolean unreadSearchActive = false; - private boolean waitRefresh = false; private List pageHistory; @@ -126,7 +124,6 @@ public abstract class Reading extends NbActivity implements OnPageChangeListener try { fs = (FeedSet)getIntent().getSerializableExtra(EXTRA_FEEDSET); - waitRefresh = getIntent().getBooleanExtra(EXTRA_WAIT_REFRESH, false); } catch (RuntimeException re) { // in the wild, the notification system likes to pass us an Intent that has missing or very stale // Serializable extras. @@ -318,11 +315,6 @@ public abstract class Reading extends NbActivity implements OnPageChangeListener emptyViewText.setVisibility(View.INVISIBLE); storyHash = null; return; - } else if (waitRefresh) { - // when deep linking from app widget the db might not have the latest stories - // that we're looking to read so return and wait for updated cursor - waitRefresh = false; - return; } // if the story wasn't found, try to get more stories into the cursor diff --git a/clients/android/NewsBlur/src/com/newsblur/database/StoryViewAdapter.java b/clients/android/NewsBlur/src/com/newsblur/database/StoryViewAdapter.java index 1f859643b..a2ef07712 100644 --- a/clients/android/NewsBlur/src/com/newsblur/database/StoryViewAdapter.java +++ b/clients/android/NewsBlur/src/com/newsblur/database/StoryViewAdapter.java @@ -349,7 +349,7 @@ public class StoryViewAdapter extends RecyclerView.Adapter