mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-08-31 21:41:33 +00:00
Clean up story sync tracking. Factor out unused methods. Squash bugs.
This commit is contained in:
parent
8467896b4d
commit
c39289f549
19 changed files with 19 additions and 138 deletions
|
@ -83,10 +83,6 @@ public class AllSharedStoriesItemsList extends ItemsList {
|
|||
@Override
|
||||
public void markItemListAsRead() { }
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
|
||||
@Override
|
||||
protected StoryOrder getStoryOrder() {
|
||||
return PrefsUtils.getStoryOrderForFolder(this, PrefConstants.ALL_SHARED_STORIES_FOLDER_NAME);
|
||||
|
|
|
@ -37,11 +37,6 @@ public class AllSharedStoriesReading extends Reading {
|
|||
addStoryToMarkAsRead(readingAdapter.getStory(passedPosition));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh() {
|
||||
triggerRefresh(1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkStoryCount(int position) {
|
||||
if (position == stories.getCount() - 1 && !stopLoading && !requestingPage) {
|
||||
|
@ -76,12 +71,4 @@ public class AllSharedStoriesReading extends Reading {
|
|||
super.updateAfterSync();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setNothingMoreToUpdate() {
|
||||
stopLoading = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
}
|
||||
|
|
|
@ -114,10 +114,6 @@ public class AllStoriesItemsList extends ItemsList implements MarkAllReadDialogL
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
|
||||
@Override
|
||||
protected StoryOrder getStoryOrder() {
|
||||
return PrefsUtils.getStoryOrderForFolder(this, PrefConstants.ALL_STORIES_FOLDER_NAME);
|
||||
|
|
|
@ -38,11 +38,6 @@ public class AllStoriesReading extends Reading {
|
|||
addStoryToMarkAsRead(readingAdapter.getStory(passedPosition));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh() {
|
||||
triggerRefresh(1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkStoryCount(int position) {
|
||||
if (position == stories.getCount() - 1 && !stopLoading && !requestedPage) {
|
||||
|
@ -77,12 +72,4 @@ public class AllStoriesReading extends Reading {
|
|||
super.updateAfterSync();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setNothingMoreToUpdate() {
|
||||
stopLoading = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
}
|
||||
|
|
|
@ -138,11 +138,6 @@ public class FeedItemsList extends ItemsList {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() {
|
||||
finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected StoryOrder getStoryOrder() {
|
||||
return PrefsUtils.getStoryOrderForFeed(this, feedId);
|
||||
|
|
|
@ -21,7 +21,6 @@ public class FeedReading extends Reading {
|
|||
String feedId;
|
||||
private Feed feed;
|
||||
private int currentPage;
|
||||
private boolean stopLoading = false;
|
||||
private boolean requestedPage = false;
|
||||
|
||||
@Override
|
||||
|
@ -76,11 +75,6 @@ public class FeedReading extends Reading {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh() {
|
||||
triggerRefresh(1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh(int page) {
|
||||
if (!stopLoading) {
|
||||
|
@ -98,12 +92,4 @@ public class FeedReading extends Reading {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setNothingMoreToUpdate() {
|
||||
stopLoading = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
}
|
||||
|
|
|
@ -106,10 +106,6 @@ public class FolderItemsList extends ItemsList implements MarkAllReadDialogListe
|
|||
dialog.show(fragmentManager, "dialog");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
|
||||
@Override
|
||||
protected StoryOrder getStoryOrder() {
|
||||
return PrefsUtils.getStoryOrderForFolder(this, folderName);
|
||||
|
|
|
@ -14,7 +14,7 @@ public class FolderReading extends Reading {
|
|||
|
||||
private String[] feedIds;
|
||||
private String folderName;
|
||||
private boolean stopLoading = false;
|
||||
private boolean stopLoading = false; // will go high iff we are out of pages
|
||||
private boolean requestedPage;
|
||||
private int currentPage;
|
||||
|
||||
|
@ -37,11 +37,6 @@ public class FolderReading extends Reading {
|
|||
addStoryToMarkAsRead(readingAdapter.getStory(passedPosition));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh() {
|
||||
triggerRefresh(1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh(int page) {
|
||||
setSupportProgressBarIndeterminateVisibility(true);
|
||||
|
@ -74,12 +69,4 @@ public class FolderReading extends Reading {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setNothingMoreToUpdate() {
|
||||
stopLoading = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
}
|
||||
|
|
|
@ -181,8 +181,4 @@ public class Main extends NbFragmentActivity implements StateChangedListener, Sy
|
|||
@Override
|
||||
public void setNothingMoreToUpdate() { }
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() {
|
||||
updateAfterSync();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -66,6 +66,7 @@ public abstract class Reading extends NbFragmentActivity implements OnPageChange
|
|||
private APIManager apiManager;
|
||||
protected SyncUpdateFragment syncFragment;
|
||||
protected Cursor stories;
|
||||
protected boolean stopLoading = false;
|
||||
private Set<Story> storiesToMarkAsRead;
|
||||
|
||||
// subclasses may set this to a nonzero value to enable the unread count overlay
|
||||
|
@ -114,6 +115,10 @@ public abstract class Reading extends NbFragmentActivity implements OnPageChange
|
|||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets up the local pager widget. Should be called from onCreate() after both the cursor and
|
||||
* adapter are created.
|
||||
*/
|
||||
protected void setupPager() {
|
||||
syncFragment = (SyncUpdateFragment) fragmentManager.findFragmentByTag(SyncUpdateFragment.TAG);
|
||||
if (syncFragment == null) {
|
||||
|
@ -128,7 +133,6 @@ public abstract class Reading extends NbFragmentActivity implements OnPageChange
|
|||
|
||||
pager.setAdapter(readingAdapter);
|
||||
pager.setCurrentItem(passedPosition);
|
||||
readingAdapter.setCurrentItem(passedPosition);
|
||||
this.enableOverlays();
|
||||
}
|
||||
|
||||
|
@ -261,16 +265,25 @@ public abstract class Reading extends NbFragmentActivity implements OnPageChange
|
|||
setSupportProgressBarIndeterminateVisibility(false);
|
||||
stories.requery();
|
||||
readingAdapter.notifyDataSetChanged();
|
||||
checkStoryCount(pager.getCurrentItem());
|
||||
this.enableOverlays();
|
||||
checkStoryCount(pager.getCurrentItem());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updatePartialSync() {
|
||||
stories.requery();
|
||||
readingAdapter.notifyDataSetChanged();
|
||||
checkStoryCount(pager.getCurrentItem());
|
||||
this.enableOverlays();
|
||||
checkStoryCount(pager.getCurrentItem());
|
||||
}
|
||||
|
||||
/**
|
||||
* Lets us know that there are no more pages of stories to load, ever, and will cause
|
||||
* us to stop requesting them.
|
||||
*/
|
||||
@Override
|
||||
public void setNothingMoreToUpdate() {
|
||||
this.stopLoading = true;
|
||||
}
|
||||
|
||||
public abstract void checkStoryCount(int position);
|
||||
|
@ -280,7 +293,6 @@ public abstract class Reading extends NbFragmentActivity implements OnPageChange
|
|||
setSupportProgressBarIndeterminateVisibility(syncRunning);
|
||||
}
|
||||
|
||||
public abstract void triggerRefresh();
|
||||
public abstract void triggerRefresh(int page);
|
||||
|
||||
@Override
|
||||
|
|
|
@ -14,9 +14,7 @@ import com.newsblur.fragment.ReadingItemFragment;
|
|||
public abstract class ReadingAdapter extends FragmentStatePagerAdapter {
|
||||
|
||||
protected Cursor stories;
|
||||
private String TAG = "ReadingAdapter";
|
||||
protected LoadingFragment loadingFragment;
|
||||
private int currentPosition = 0;
|
||||
|
||||
public ReadingAdapter(FragmentManager fm, Cursor stories) {
|
||||
super(fm);
|
||||
|
@ -26,11 +24,6 @@ public abstract class ReadingAdapter extends FragmentStatePagerAdapter {
|
|||
@Override
|
||||
public abstract Fragment getItem(int position);
|
||||
|
||||
@Override
|
||||
public void setPrimaryItem(ViewGroup container, int position, Object object) {
|
||||
super.setPrimaryItem(container, position, object);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCount() {
|
||||
if (stories != null && stories.getCount() > 0) {
|
||||
|
@ -49,10 +42,6 @@ public abstract class ReadingAdapter extends FragmentStatePagerAdapter {
|
|||
}
|
||||
}
|
||||
|
||||
public void setTextSize(float textSize) {
|
||||
((ReadingItemFragment) getItem(currentPosition)).changeTextSize(textSize);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemPosition(Object object) {
|
||||
if (object instanceof LoadingFragment) {
|
||||
|
@ -62,8 +51,4 @@ public abstract class ReadingAdapter extends FragmentStatePagerAdapter {
|
|||
}
|
||||
}
|
||||
|
||||
public void setCurrentItem(int passedPosition) {
|
||||
this.currentPosition = passedPosition;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -86,9 +86,6 @@ public class SavedStoriesItemsList extends ItemsList {
|
|||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
// Note: the following four methods are required by our parent spec but are not
|
||||
// relevant since saved stories have no read/unread status nor ordering.
|
||||
|
||||
|
|
|
@ -13,7 +13,6 @@ import com.newsblur.service.SyncService;
|
|||
public class SavedStoriesReading extends Reading {
|
||||
|
||||
private int currentPage;
|
||||
private boolean stopLoading = false;
|
||||
private boolean requestedPage = false;
|
||||
|
||||
@Override
|
||||
|
@ -29,11 +28,6 @@ public class SavedStoriesReading extends Reading {
|
|||
setupPager();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh() {
|
||||
triggerRefresh(1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void checkStoryCount(int position) {
|
||||
if (position == stories.getCount() - 1 && !stopLoading && !requestedPage) {
|
||||
|
@ -63,12 +57,4 @@ public class SavedStoriesReading extends Reading {
|
|||
super.updateAfterSync();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setNothingMoreToUpdate() {
|
||||
stopLoading = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
}
|
||||
|
|
|
@ -98,10 +98,6 @@ public class SocialFeedItemsList extends ItemsList {
|
|||
}.execute(userId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
|
||||
@Override
|
||||
protected StoryOrder getStoryOrder() {
|
||||
return PrefsUtils.getStoryOrderForFeed(this, userId);
|
||||
|
|
|
@ -22,7 +22,6 @@ public class SocialFeedReading extends Reading {
|
|||
private String username;
|
||||
private SocialFeed socialFeed;
|
||||
private boolean requestedPage;
|
||||
private boolean stopLoading = false;
|
||||
private int currentPage;
|
||||
|
||||
@Override
|
||||
|
@ -50,11 +49,6 @@ public class SocialFeedReading extends Reading {
|
|||
addStoryToMarkAsRead(readingAdapter.getStory(passedPosition));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh() {
|
||||
triggerRefresh(0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void triggerRefresh(int page) {
|
||||
setSupportProgressBarIndeterminateVisibility(true);
|
||||
|
@ -78,12 +72,4 @@ public class SocialFeedReading extends Reading {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setNothingMoreToUpdate() {
|
||||
stopLoading = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeAfterUpdate() { }
|
||||
|
||||
}
|
||||
|
|
|
@ -87,6 +87,7 @@ public class FeedItemListFragment extends StoryItemListFragment implements Loade
|
|||
// feed list until we have a better understanding of how to prevent this.
|
||||
Log.w(this.getClass().getName(), "Feed not found in DB, can't create item list.");
|
||||
getActivity().finish();
|
||||
return v;
|
||||
}
|
||||
|
||||
feedCursor.moveToFirst();
|
||||
|
|
|
@ -48,12 +48,6 @@ public class SyncUpdateFragment extends Fragment implements Receiver {
|
|||
((SyncUpdateFragmentInterface) getActivity()).updatePartialSync();
|
||||
}
|
||||
break;
|
||||
case STATUS_FINISHED_CLOSE:
|
||||
syncRunning = false;
|
||||
if (getActivity() != null) {
|
||||
((SyncUpdateFragmentInterface) getActivity()).closeAfterUpdate();
|
||||
}
|
||||
break;
|
||||
case STATUS_RUNNING:
|
||||
syncRunning = true;
|
||||
break;
|
||||
|
@ -80,7 +74,6 @@ public class SyncUpdateFragment extends Fragment implements Receiver {
|
|||
public interface SyncUpdateFragmentInterface {
|
||||
public void updateAfterSync();
|
||||
public void updatePartialSync();
|
||||
public void closeAfterUpdate();
|
||||
public void setNothingMoreToUpdate();
|
||||
public void updateSyncStatus(boolean syncRunning);
|
||||
}
|
||||
|
|
|
@ -50,7 +50,6 @@ public class SyncService extends IntentService {
|
|||
STATUS_RUNNING,
|
||||
STATUS_FINISHED,
|
||||
STATUS_NO_MORE_UPDATES,
|
||||
STATUS_FINISHED_CLOSE,
|
||||
NOT_RUNNING,
|
||||
STATUS_PARTIAL_PROGRESS,
|
||||
};
|
||||
|
|
|
@ -5,7 +5,7 @@ public class AppConstants {
|
|||
// Enables high-volume logging that may be useful for debugging. This should
|
||||
// never be enabled for releases, as it not only slows down the app considerably,
|
||||
// it will log sensitive info such as passwords!
|
||||
public static final boolean VERBOSE_LOG = true;
|
||||
public static final boolean VERBOSE_LOG = false;
|
||||
|
||||
public static final int STATE_ALL = 0;
|
||||
public static final int STATE_SOME = 1;
|
||||
|
|
Loading…
Add table
Reference in a new issue