Pass default story view into Reading activity. Add menus entry for all stories, feeds and folders.

This commit is contained in:
Mark Anderson 2014-01-10 22:58:17 +00:00
parent 3108a123ef
commit 444c937cdc
19 changed files with 117 additions and 21 deletions

View file

@ -9,4 +9,7 @@
<item android:id="@+id/menu_read_filter"
android:title="@string/menu_read_filter"
android:showAsAction="never" />
<item android:id="@+id/menu_default_view"
android:title="@string/menu_default_view"
android:showAsAction="never" />
</menu>

View file

@ -12,4 +12,7 @@
<item android:id="@+id/menu_read_filter"
android:title="@string/menu_read_filter"
android:showAsAction="never" />
<item android:id="@+id/menu_default_view"
android:title="@string/menu_default_view"
android:showAsAction="never" />
</menu>

View file

@ -9,4 +9,7 @@
<item android:id="@+id/menu_read_filter"
android:title="@string/menu_read_filter"
android:showAsAction="never" />
<item android:id="@+id/menu_default_view"
android:title="@string/menu_default_view"
android:showAsAction="never" />
</menu>

View file

@ -172,6 +172,7 @@
<string name="all_stories">All Stories</string>
<string name="unread_only">Unread Only</string>
<string name="menu_read_filter">Read Filter</string>
<string name="menu_default_view">Default View</string>
<string name="settings">Preferences</string>
<string name="settings_default_story_order">Default Story Order</string>

View file

@ -12,6 +12,7 @@ import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.fragment.AllSharedStoriesItemListFragment;
import com.newsblur.fragment.FeedItemListFragment;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.FeedUtils;
import com.newsblur.util.PrefConstants;
import com.newsblur.util.PrefsUtils;
@ -38,7 +39,7 @@ public class AllSharedStoriesItemsList extends ItemsList {
itemListFragment = (AllSharedStoriesItemListFragment) fragmentManager.findFragmentByTag(AllSharedStoriesItemListFragment.class.getName());
if (itemListFragment == null) {
itemListFragment = AllSharedStoriesItemListFragment.newInstance(currentState, getStoryOrder());
itemListFragment = AllSharedStoriesItemListFragment.newInstance(currentState, getStoryOrder(), getDefaultFeedView());
itemListFragment.setRetainInstance(true);
FragmentTransaction listTransaction = fragmentManager.beginTransaction();
listTransaction.add(R.id.activity_itemlist_container, itemListFragment, AllSharedStoriesItemListFragment.class.getName());
@ -79,4 +80,9 @@ public class AllSharedStoriesItemsList extends ItemsList {
protected ReadFilter getReadFilter() {
return PrefsUtils.getReadFilterForFolder(this, PrefConstants.ALL_SHARED_STORIES_FOLDER_NAME);
}
@Override
protected DefaultFeedView getDefaultFeedView() {
return PrefsUtils.getDefaultFeedViewForFolder(this, PrefConstants.ALL_SHARED_STORIES_FOLDER_NAME);
}
}

View file

@ -23,6 +23,7 @@ import com.newsblur.fragment.MarkAllReadDialogFragment;
import com.newsblur.fragment.MarkAllReadDialogFragment.MarkAllReadDialogListener;
import com.newsblur.network.APIManager;
import com.newsblur.util.AppConstants;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.FeedUtils;
import com.newsblur.util.PrefConstants;
import com.newsblur.util.PrefsUtils;
@ -45,7 +46,7 @@ public class AllStoriesItemsList extends ItemsList implements MarkAllReadDialogL
itemListFragment = (AllStoriesItemListFragment) fragmentManager.findFragmentByTag(AllStoriesItemListFragment.class.getName());
if (itemListFragment == null) {
itemListFragment = AllStoriesItemListFragment.newInstance(currentState, getStoryOrder());
itemListFragment = AllStoriesItemListFragment.newInstance(currentState, getStoryOrder(), getDefaultFeedView());
itemListFragment.setRetainInstance(true);
FragmentTransaction listTransaction = fragmentManager.beginTransaction();
listTransaction.add(R.id.activity_itemlist_container, itemListFragment, AllStoriesItemListFragment.class.getName());
@ -110,6 +111,11 @@ public class AllStoriesItemsList extends ItemsList implements MarkAllReadDialogL
return PrefsUtils.getReadFilterForFolder(this, PrefConstants.ALL_STORIES_FOLDER_NAME);
}
@Override
protected DefaultFeedView getDefaultFeedView() {
return PrefsUtils.getDefaultFeedViewForFolder(this, PrefConstants.ALL_STORIES_FOLDER_NAME);
}
@Override
public void onMarkAllRead() {
new AsyncTask<Void, Void, Boolean>() {

View file

@ -20,6 +20,7 @@ import com.newsblur.fragment.DeleteFeedFragment;
import com.newsblur.fragment.FeedItemListFragment;
import com.newsblur.network.APIManager;
import com.newsblur.network.MarkFeedAsReadTask;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.FeedUtils;
import com.newsblur.util.PrefsUtils;
import com.newsblur.util.ReadFilter;
@ -54,7 +55,7 @@ public class FeedItemsList extends ItemsList {
itemListFragment = (FeedItemListFragment) fragmentManager.findFragmentByTag(FeedItemListFragment.class.getName());
if (itemListFragment == null) {
itemListFragment = FeedItemListFragment.newInstance(feedId, currentState, getStoryOrder());
itemListFragment = FeedItemListFragment.newInstance(feedId, currentState, getStoryOrder(), getDefaultFeedView());
itemListFragment.setRetainInstance(true);
FragmentTransaction listTransaction = fragmentManager.beginTransaction();
listTransaction.add(R.id.activity_itemlist_container, itemListFragment, FeedItemListFragment.class.getName());
@ -138,4 +139,9 @@ public class FeedItemsList extends ItemsList {
protected ReadFilter getReadFilter() {
return PrefsUtils.getReadFilterForFeed(this, feedId);
}
@Override
protected DefaultFeedView getDefaultFeedView() {
return PrefsUtils.getDefaultFeedViewForFeed(this, feedId);
}
}

View file

@ -14,13 +14,13 @@ import com.actionbarsherlock.view.MenuInflater;
import com.newsblur.R;
import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.fragment.FeedItemListFragment;
import com.newsblur.fragment.FolderItemListFragment;
import com.newsblur.fragment.MarkAllReadDialogFragment;
import com.newsblur.fragment.MarkAllReadDialogFragment.MarkAllReadDialogListener;
import com.newsblur.network.APIManager;
import com.newsblur.network.MarkFolderAsReadTask;
import com.newsblur.util.AppConstants;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.FeedUtils;
import com.newsblur.util.PrefsUtils;
import com.newsblur.util.ReadFilter;
@ -53,7 +53,7 @@ public class FolderItemsList extends ItemsList implements MarkAllReadDialogListe
itemListFragment = (FolderItemListFragment) fragmentManager.findFragmentByTag(FolderItemListFragment.class.getName());
if (itemListFragment == null) {
itemListFragment = FolderItemListFragment.newInstance(feedIds, folderName, currentState, getStoryOrder());
itemListFragment = FolderItemListFragment.newInstance(feedIds, folderName, currentState, getStoryOrder(), getDefaultFeedView());
itemListFragment.setRetainInstance(true);
FragmentTransaction listTransaction = fragmentManager.beginTransaction();
listTransaction.add(R.id.activity_itemlist_container, itemListFragment, FolderItemListFragment.class.getName());
@ -106,6 +106,11 @@ public class FolderItemsList extends ItemsList implements MarkAllReadDialogListe
return PrefsUtils.getReadFilterForFolder(this, folderName);
}
@Override
protected DefaultFeedView getDefaultFeedView() {
return PrefsUtils.getDefaultFeedViewForFolder(this, folderName);
}
@Override
public void onMarkAllRead() {
new MarkFolderAsReadTask(apiManager, getContentResolver()) {

View file

@ -9,9 +9,11 @@ import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
import com.actionbarsherlock.view.Window;
import com.newsblur.R;
import com.newsblur.fragment.DefaultFeedViewDialogFragment;
import com.newsblur.fragment.ItemListFragment;
import com.newsblur.fragment.ReadFilterDialogFragment;
import com.newsblur.fragment.StoryOrderDialogFragment;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.FeedUtils;
import com.newsblur.util.FeedUtils.ActionCompletionListener;
import com.newsblur.util.ReadFilter;
@ -29,6 +31,7 @@ public abstract class ItemsList extends NbFragmentActivity implements ActionComp
public static final String EXTRA_BLURBLOG_TITLE = "blurblogTitle";
private static final String STORY_ORDER = "storyOrder";
private static final String READ_FILTER = "readFilter";
private static final String DEFAULT_FEED_VIEW = "defaultFeedView";
protected ItemListFragment itemListFragment;
protected FragmentManager fragmentManager;
@ -80,6 +83,11 @@ public abstract class ItemsList extends NbFragmentActivity implements ActionComp
ReadFilterDialogFragment readFilter = ReadFilterDialogFragment.newInstance(currentValue);
readFilter.show(getSupportFragmentManager(), READ_FILTER);
return true;
} else if (item.getItemId() == R.id.menu_default_view) {
DefaultFeedView currentValue = getDefaultFeedView();
DefaultFeedViewDialogFragment readFilter = DefaultFeedViewDialogFragment.newInstance(currentValue);
readFilter.show(getSupportFragmentManager(), DEFAULT_FEED_VIEW);
return true;
}
return false;
@ -88,6 +96,8 @@ public abstract class ItemsList extends NbFragmentActivity implements ActionComp
protected abstract StoryOrder getStoryOrder();
protected abstract ReadFilter getReadFilter();
protected abstract DefaultFeedView getDefaultFeedView();
@Override
public void actionCompleteCallback(boolean noMoreData) {

View file

@ -122,7 +122,7 @@ public abstract class Reading extends NbFragmentActivity implements OnPageChange
passedPosition = getIntent().getIntExtra(EXTRA_POSITION, 0);
currentState = getIntent().getIntExtra(ItemsList.EXTRA_STATE, 0);
defaultFeedView = DefaultFeedView.STORY;//(DefaultFeedView)getIntent().getSerializableExtra(EXTRA_DEFAULT_FEED_VIEW);
defaultFeedView = (DefaultFeedView)getIntent().getSerializableExtra(EXTRA_DEFAULT_FEED_VIEW);
currentFeedView = defaultFeedView;
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

View file

@ -18,6 +18,7 @@ import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.fragment.SavedStoriesItemListFragment;
import com.newsblur.fragment.FeedItemListFragment;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.FeedUtils;
import com.newsblur.util.PrefConstants;
import com.newsblur.util.PrefsUtils;
@ -38,7 +39,7 @@ public class SavedStoriesItemsList extends ItemsList {
itemListFragment = (SavedStoriesItemListFragment) fragmentManager.findFragmentByTag(SavedStoriesItemListFragment.class.getName());
if (itemListFragment == null) {
itemListFragment = SavedStoriesItemListFragment.newInstance();
itemListFragment = SavedStoriesItemListFragment.newInstance(getDefaultFeedView());
itemListFragment.setRetainInstance(true);
FragmentTransaction listTransaction = fragmentManager.beginTransaction();
listTransaction.add(R.id.activity_itemlist_container, itemListFragment, SavedStoriesItemListFragment.class.getName());
@ -87,4 +88,9 @@ public class SavedStoriesItemsList extends ItemsList {
protected ReadFilter getReadFilter() {
return PrefsUtils.getReadFilterForFolder(this, PrefConstants.ALL_STORIES_FOLDER_NAME);
}
@Override
protected DefaultFeedView getDefaultFeedView() {
return PrefsUtils.getDefaultFeedViewForFolder(this, PrefConstants.SAVED_STORIES_FOLDER_NAME);
}
}

View file

@ -12,7 +12,9 @@ import com.newsblur.fragment.FeedItemListFragment;
import com.newsblur.fragment.SocialFeedItemListFragment;
import com.newsblur.network.APIManager;
import com.newsblur.network.MarkSocialFeedAsReadTask;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.FeedUtils;
import com.newsblur.util.PrefConstants;
import com.newsblur.util.PrefsUtils;
import com.newsblur.util.ReadFilter;
import com.newsblur.util.StoryOrder;
@ -36,7 +38,7 @@ public class SocialFeedItemsList extends ItemsList {
setTitle(title);
if (itemListFragment == null) {
itemListFragment = SocialFeedItemListFragment.newInstance(userId, username, currentState, getStoryOrder());
itemListFragment = SocialFeedItemListFragment.newInstance(userId, username, currentState, getStoryOrder(), getDefaultFeedView());
itemListFragment.setRetainInstance(true);
FragmentTransaction listTransaction = fragmentManager.beginTransaction();
listTransaction.add(R.id.activity_itemlist_container, itemListFragment, SocialFeedItemListFragment.class.getName());
@ -96,4 +98,9 @@ public class SocialFeedItemsList extends ItemsList {
protected ReadFilter getReadFilter() {
return PrefsUtils.getReadFilterForFeed(this, userId);
}
@Override
protected DefaultFeedView getDefaultFeedView() {
return PrefsUtils.getDefaultFeedViewForFeed(this, userId);
}
}

View file

@ -21,10 +21,12 @@ import com.newsblur.R;
import com.newsblur.activity.AllSharedStoriesReading;
import com.newsblur.activity.FeedReading;
import com.newsblur.activity.ItemsList;
import com.newsblur.activity.Reading;
import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.database.MultipleFeedItemsAdapter;
import com.newsblur.util.AppConstants;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.NetworkUtils;
import com.newsblur.util.StoryOrder;
import com.newsblur.view.SocialItemViewBinder;
@ -40,12 +42,14 @@ public class AllSharedStoriesItemListFragment extends ItemListFragment implement
private String[] groupFrom;
private int[] groupTo;
private StoryOrder storyOrder;
private DefaultFeedView defaultFeedView;
@Override
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
currentState = getArguments().getInt("currentState");
storyOrder = (StoryOrder)getArguments().getSerializable("storyOrder");
defaultFeedView = (DefaultFeedView)getArguments().getSerializable("defaultFeedView");
}
@Override
@ -89,11 +93,12 @@ public class AllSharedStoriesItemListFragment extends ItemListFragment implement
hasUpdated();
}
public static ItemListFragment newInstance(int currentState, StoryOrder storyOrder) {
public static ItemListFragment newInstance(int currentState, StoryOrder storyOrder, DefaultFeedView defaultFeedView) {
ItemListFragment everythingFragment = new AllSharedStoriesItemListFragment();
Bundle arguments = new Bundle();
arguments.putInt("currentState", currentState);
arguments.putSerializable("storyOrder", storyOrder);
arguments.putSerializable("defaultFeedView", defaultFeedView);
everythingFragment.setArguments(arguments);
return everythingFragment;
@ -104,6 +109,7 @@ public class AllSharedStoriesItemListFragment extends ItemListFragment implement
Intent i = new Intent(getActivity(), AllSharedStoriesReading.class);
i.putExtra(FeedReading.EXTRA_POSITION, position);
i.putExtra(ItemsList.EXTRA_STATE, currentState);
i.putExtra(Reading.EXTRA_DEFAULT_FEED_VIEW, defaultFeedView);
startActivity(i);
}

View file

@ -19,10 +19,12 @@ import com.newsblur.R;
import com.newsblur.activity.AllStoriesReading;
import com.newsblur.activity.FeedReading;
import com.newsblur.activity.ItemsList;
import com.newsblur.activity.Reading;
import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.database.MultipleFeedItemsAdapter;
import com.newsblur.database.StoryItemsAdapter;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.NetworkUtils;
import com.newsblur.util.StoryOrder;
import com.newsblur.view.SocialItemViewBinder;
@ -35,12 +37,15 @@ public class AllStoriesItemListFragment extends StoryItemListFragment implements
private StoryOrder storyOrder;
public static int ITEMLIST_LOADER = 0x01;
@Override
private DefaultFeedView defaultFeedView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
currentState = getArguments().getInt("currentState");
storyOrder = (StoryOrder)getArguments().getSerializable("storyOrder");
defaultFeedView = (DefaultFeedView)getArguments().getSerializable("defaultFeedView");
}
@Override
@ -86,11 +91,12 @@ public class AllStoriesItemListFragment extends StoryItemListFragment implements
hasUpdated();
}
public static ItemListFragment newInstance(int currentState, StoryOrder storyOrder) {
public static ItemListFragment newInstance(int currentState, StoryOrder storyOrder, DefaultFeedView defaultFeedView) {
ItemListFragment everythingFragment = new AllStoriesItemListFragment();
Bundle arguments = new Bundle();
arguments.putInt("currentState", currentState);
arguments.putSerializable("storyOrder", storyOrder);
arguments.putSerializable("defaultFeedView", defaultFeedView);
everythingFragment.setArguments(arguments);
return everythingFragment;
@ -101,6 +107,7 @@ public class AllStoriesItemListFragment extends StoryItemListFragment implements
Intent i = new Intent(getActivity(), AllStoriesReading.class);
i.putExtra(FeedReading.EXTRA_POSITION, position);
i.putExtra(ItemsList.EXTRA_STATE, currentState);
i.putExtra(Reading.EXTRA_DEFAULT_FEED_VIEW, defaultFeedView);
startActivity(i);
}

View file

@ -26,6 +26,7 @@ import com.newsblur.database.FeedItemsAdapter;
import com.newsblur.database.FeedProvider;
import com.newsblur.database.StoryItemsAdapter;
import com.newsblur.domain.Feed;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.NetworkUtils;
import com.newsblur.util.StoryOrder;
import com.newsblur.view.FeedItemViewBinder;
@ -38,14 +39,16 @@ public class FeedItemListFragment extends StoryItemListFragment implements Loade
public static int ITEMLIST_LOADER = 0x01;
private StoryOrder storyOrder;
private DefaultFeedView defaultFeedView;
public static FeedItemListFragment newInstance(String feedId, int currentState, StoryOrder storyOrder) {
public static FeedItemListFragment newInstance(String feedId, int currentState, StoryOrder storyOrder, DefaultFeedView defaultFeedView) {
FeedItemListFragment feedItemFragment = new FeedItemListFragment();
Bundle args = new Bundle();
args.putInt("currentState", currentState);
args.putString("feedId", feedId);
args.putSerializable("storyOrder", storyOrder);
args.putSerializable("defaultFeedView", defaultFeedView);
feedItemFragment.setArguments(args);
return feedItemFragment;
@ -57,6 +60,7 @@ public class FeedItemListFragment extends StoryItemListFragment implements Loade
currentState = getArguments().getInt("currentState");
feedId = getArguments().getString("feedId");
storyOrder = (StoryOrder)getArguments().getSerializable("storyOrder");
defaultFeedView = (DefaultFeedView)getArguments().getSerializable("defaultFeedView");
}
@Override
@ -128,6 +132,7 @@ public class FeedItemListFragment extends StoryItemListFragment implements Loade
i.putExtra(Reading.EXTRA_FEED, feedId);
i.putExtra(FeedReading.EXTRA_POSITION, position);
i.putExtra(ItemsList.EXTRA_STATE, currentState);
i.putExtra(Reading.EXTRA_DEFAULT_FEED_VIEW, defaultFeedView);
startActivity(i);
}

View file

@ -22,11 +22,13 @@ import com.newsblur.R;
import com.newsblur.activity.FeedReading;
import com.newsblur.activity.FolderReading;
import com.newsblur.activity.ItemsList;
import com.newsblur.activity.Reading;
import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.database.MultipleFeedItemsAdapter;
import com.newsblur.database.StoryItemsAdapter;
import com.newsblur.domain.Folder;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.NetworkUtils;
import com.newsblur.util.StoryOrder;
import com.newsblur.view.FeedItemViewBinder;
@ -41,10 +43,12 @@ public class FolderItemListFragment extends StoryItemListFragment implements Loa
private StoryOrder storyOrder;
private DefaultFeedView defaultFeedView;
public static int ITEMLIST_LOADER = 0x01;
public static FolderItemListFragment newInstance(ArrayList<String> feedIds, String folderName, int currentState, StoryOrder storyOrder) {
public static FolderItemListFragment newInstance(ArrayList<String> feedIds, String folderName, int currentState, StoryOrder storyOrder, DefaultFeedView defaultFeedView) {
FolderItemListFragment feedItemFragment = new FolderItemListFragment();
Bundle args = new Bundle();
@ -52,6 +56,7 @@ public class FolderItemListFragment extends StoryItemListFragment implements Loa
args.putStringArrayList("feedIds", feedIds);
args.putString("folderName", folderName);
args.putSerializable("storyOrder", storyOrder);
args.putSerializable("defaultFeedView", defaultFeedView);
feedItemFragment.setArguments(args);
return feedItemFragment;
@ -63,6 +68,7 @@ public class FolderItemListFragment extends StoryItemListFragment implements Loa
currentState = getArguments().getInt("currentState");
folderName = getArguments().getString("folderName");
storyOrder = (StoryOrder)getArguments().getSerializable("storyOrder");
defaultFeedView = (DefaultFeedView)getArguments().getSerializable("defaultFeedView");
ArrayList<String> feedIdArrayList = getArguments().getStringArrayList("feedIds");
feedIds = new String[feedIdArrayList.size()];
feedIdArrayList.toArray(feedIds);
@ -122,6 +128,7 @@ public class FolderItemListFragment extends StoryItemListFragment implements Loa
i.putExtra(FeedReading.EXTRA_POSITION, position);
i.putExtra(FeedReading.EXTRA_FOLDERNAME, folderName);
i.putExtra(ItemsList.EXTRA_STATE, currentState);
i.putExtra(Reading.EXTRA_DEFAULT_FEED_VIEW, defaultFeedView);
startActivity(i);
}

View file

@ -17,12 +17,14 @@ import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import com.newsblur.R;
import com.newsblur.activity.Reading;
import com.newsblur.activity.SavedStoriesReading;
import com.newsblur.activity.FeedReading;
import com.newsblur.activity.ItemsList;
import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.database.MultipleFeedItemsAdapter;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.NetworkUtils;
import com.newsblur.util.StoryOrder;
import com.newsblur.view.SocialItemViewBinder;
@ -32,10 +34,13 @@ public class SavedStoriesItemListFragment extends ItemListFragment implements Lo
private ContentResolver contentResolver;
public static int ITEMLIST_LOADER = 0x01;
@Override
private DefaultFeedView defaultFeedView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
defaultFeedView = (DefaultFeedView)getArguments().getSerializable("defaultFeedView");
}
@Override
@ -81,8 +86,11 @@ public class SavedStoriesItemListFragment extends ItemListFragment implements Lo
; // This fragment ignores state
}
public static ItemListFragment newInstance() {
public static ItemListFragment newInstance(DefaultFeedView defaultFeedView) {
ItemListFragment fragment = new SavedStoriesItemListFragment();
Bundle args = new Bundle();
args.putSerializable("defaultFeedView", defaultFeedView);
fragment.setArguments(args);
return fragment;
}
@ -90,6 +98,7 @@ public class SavedStoriesItemListFragment extends ItemListFragment implements Lo
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent i = new Intent(getActivity(), SavedStoriesReading.class);
i.putExtra(FeedReading.EXTRA_POSITION, position);
i.putExtra(Reading.EXTRA_DEFAULT_FEED_VIEW, defaultFeedView);
startActivity(i);
}

View file

@ -25,6 +25,7 @@ import com.newsblur.database.DatabaseConstants;
import com.newsblur.database.FeedProvider;
import com.newsblur.database.MultipleFeedItemsAdapter;
import com.newsblur.domain.SocialFeed;
import com.newsblur.util.DefaultFeedView;
import com.newsblur.util.StoryOrder;
import com.newsblur.view.SocialItemViewBinder;
@ -42,14 +43,16 @@ public class SocialFeedItemListFragment extends ItemListFragment implements Load
private int[] groupTos;
private ListView itemList;
private StoryOrder storyOrder;
private DefaultFeedView defaultFeedView;
@Override
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
currentState = getArguments().getInt("currentState");
userId = getArguments().getString("userId");
username = getArguments().getString("username");
storyOrder = (StoryOrder)getArguments().getSerializable("storyOrder");
defaultFeedView = (DefaultFeedView)getArguments().getSerializable("defaultFeedView");
contentResolver = getActivity().getContentResolver();
storiesUri = FeedProvider.SOCIALFEED_STORIES_URI.buildUpon().appendPath(userId).build();
@ -73,13 +76,14 @@ public class SocialFeedItemListFragment extends ItemListFragment implements Load
socialFeed = SocialFeed.fromCursor(contentResolver.query(socialFeedUri, null, null, null, null));
}
public static SocialFeedItemListFragment newInstance(final String userId, final String username, final int currentState, final StoryOrder storyOrder) {
public static SocialFeedItemListFragment newInstance(final String userId, final String username, final int currentState, final StoryOrder storyOrder, final DefaultFeedView defaultFeedView) {
SocialFeedItemListFragment fragment = new SocialFeedItemListFragment();
Bundle args = new Bundle();
args.putInt("currentState", currentState);
args.putString("userId", userId);
args.putString("username", username);
args.putSerializable("storyOrder", storyOrder);
args.putSerializable("defaultFeedView", defaultFeedView);
fragment.setArguments(args);
return fragment;
}
@ -124,6 +128,7 @@ public class SocialFeedItemListFragment extends ItemListFragment implements Load
i.putExtra(Reading.EXTRA_USERNAME, username);
i.putExtra(Reading.EXTRA_POSITION, position);
i.putExtra(ItemsList.EXTRA_STATE, currentState);
i.putExtra(Reading.EXTRA_DEFAULT_FEED_VIEW, defaultFeedView);
startActivity(i);
}

View file

@ -41,5 +41,6 @@ public class PrefConstants {
public static final String FEED_DEFAULT_FEED_VIEW_PREFIX = "feed_default_feed_view_";
public static final String FOLDER_DEFAULT_FEED_VIEW_PREFIX = "folder_default_feed_view_";
public static final String DEFAULT_FEED_VIEW = "default_feed_view";
public static final String SAVED_STORIES_FOLDER_NAME = "saved_stories";
}