mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-09-18 21:50:56 +00:00
Refactor readingadapter to (hopefully) support fragment re-use.
This commit is contained in:
parent
b5f2b43a50
commit
2d93a6d518
5 changed files with 10 additions and 10 deletions
|
@ -36,7 +36,7 @@ public class FeedReading extends Reading {
|
|||
feedCursor.close();
|
||||
setTitle(feed.title);
|
||||
|
||||
readingAdapter = new FeedReadingAdapter(getFragmentManager(), feed, classifier, defaultFeedView);
|
||||
readingAdapter = new FeedReadingAdapter(fragmentManager, feed, classifier, defaultFeedView);
|
||||
|
||||
getLoaderManager().initLoader(0, null, this);
|
||||
}
|
||||
|
|
|
@ -127,7 +127,6 @@ public abstract class Reading extends NbActivity implements OnPageChangeListener
|
|||
} else {
|
||||
passedPosition = getIntent().getIntExtra(EXTRA_POSITION, 0);
|
||||
}
|
||||
|
||||
if ((savedInstanceBundle != null) && savedInstanceBundle.containsKey(BUNDLE_STARTING_UNREAD)) {
|
||||
startingUnreadCount = savedInstanceBundle.getInt(BUNDLE_STARTING_UNREAD);
|
||||
}
|
||||
|
|
|
@ -34,7 +34,11 @@ public abstract class ReadingAdapter extends FragmentStatePagerAdapter {
|
|||
if (stories == null || stories.getCount() == 0 || position >= stories.getCount()) {
|
||||
return new LoadingFragment();
|
||||
} else {
|
||||
return getReadingItemFragment(position);
|
||||
stories.moveToPosition(position);
|
||||
Story story = Story.fromCursor(stories);
|
||||
String tag = this.getClass().getName() + story.storyHash;
|
||||
ReadingItemFragment frag = getReadingItemFragment(story);
|
||||
return frag;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -57,7 +61,7 @@ public abstract class ReadingAdapter extends FragmentStatePagerAdapter {
|
|||
this.stories = cursor;
|
||||
}
|
||||
|
||||
protected abstract ReadingItemFragment getReadingItemFragment(int position);
|
||||
protected abstract ReadingItemFragment getReadingItemFragment(Story story);
|
||||
|
||||
@Override
|
||||
public synchronized int getCount() {
|
||||
|
|
|
@ -23,9 +23,8 @@ public class FeedReadingAdapter extends ReadingAdapter {
|
|||
}
|
||||
|
||||
@Override
|
||||
protected synchronized ReadingItemFragment getReadingItemFragment(int position) {
|
||||
stories.moveToPosition(position);
|
||||
return ReadingItemFragment.newInstance(Story.fromCursor(stories), feed.title, feed.faviconColor, feed.faviconFade, feed.faviconBorder, feed.faviconText, feed.faviconUrl, classifier, false, defaultFeedView, sourceUserId);
|
||||
protected synchronized ReadingItemFragment getReadingItemFragment(Story story) {
|
||||
return ReadingItemFragment.newInstance(story, feed.title, feed.faviconColor, feed.faviconFade, feed.faviconBorder, feed.faviconText, feed.faviconUrl, classifier, false, defaultFeedView, sourceUserId);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -22,9 +22,7 @@ public class MixedFeedsReadingAdapter extends ReadingAdapter {
|
|||
}
|
||||
|
||||
@Override
|
||||
protected synchronized ReadingItemFragment getReadingItemFragment(int position) {
|
||||
stories.moveToPosition(position);
|
||||
Story story = Story.fromCursor(stories);
|
||||
protected synchronized ReadingItemFragment getReadingItemFragment(Story story) {
|
||||
String feedTitle = stories.getString(stories.getColumnIndex(DatabaseConstants.FEED_TITLE));
|
||||
String feedFaviconColor = stories.getString(stories.getColumnIndex(DatabaseConstants.FEED_FAVICON_COLOR));
|
||||
String feedFaviconFade = stories.getString(stories.getColumnIndex(DatabaseConstants.FEED_FAVICON_FADE));
|
||||
|
|
Loading…
Add table
Reference in a new issue