diff --git a/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java b/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java index 1c54b13cf..1acf57cf7 100644 --- a/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java +++ b/clients/android/NewsBlur/src/com/newsblur/database/FolderListAdapter.java @@ -6,20 +6,12 @@ import java.util.Comparator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Set; import java.util.TreeMap; import android.app.Activity; -import android.content.ContentResolver; import android.content.Context; import android.content.Intent; -import android.database.ContentObserver; import android.database.Cursor; -import android.database.DataSetObserver; -import android.net.Uri; -import android.os.Handler; import android.text.TextUtils; import android.util.Log; import android.view.LayoutInflater; @@ -65,10 +57,11 @@ public class FolderListAdapter extends BaseExpandableListAdapter { private LayoutInflater inflater; private ImageLoader imageLoader; - private StateFilter currentState = StateFilter.SOME; + private StateFilter currentState; - public FolderListAdapter(Context context) { + public FolderListAdapter(Context context, StateFilter currentState) { this.context = context; + this.currentState = currentState; imageLoader = ((NewsBlurApplication) context.getApplicationContext()).getImageLoader(); this.inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } diff --git a/clients/android/NewsBlur/src/com/newsblur/fragment/FolderListFragment.java b/clients/android/NewsBlur/src/com/newsblur/fragment/FolderListFragment.java index cb626ac22..5280c6457 100644 --- a/clients/android/NewsBlur/src/com/newsblur/fragment/FolderListFragment.java +++ b/clients/android/NewsBlur/src/com/newsblur/fragment/FolderListFragment.java @@ -37,6 +37,7 @@ import com.newsblur.util.AppConstants; import com.newsblur.util.FeedSet; import com.newsblur.util.FeedUtils; import com.newsblur.util.PrefConstants; +import com.newsblur.util.PrefsUtils; import com.newsblur.util.StateFilter; import com.newsblur.util.UIUtils; @@ -55,7 +56,8 @@ public class FolderListFragment extends NbFragment implements OnGroupClickListen @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - adapter = new FolderListAdapter(getActivity()); + currentState = PrefsUtils.getStateFilter(getActivity()); + adapter = new FolderListAdapter(getActivity(), currentState); } @Override @@ -224,6 +226,7 @@ public class FolderListFragment extends NbFragment implements OnGroupClickListen public void changeState(StateFilter state) { currentState = state; + PrefsUtils.setStateFilter(getActivity(), state); adapter.changeState(state); hasUpdated(); } diff --git a/clients/android/NewsBlur/src/com/newsblur/util/PrefConstants.java b/clients/android/NewsBlur/src/com/newsblur/util/PrefConstants.java index f8bd0b3d7..f48e73f13 100644 --- a/clients/android/NewsBlur/src/com/newsblur/util/PrefConstants.java +++ b/clients/android/NewsBlur/src/com/newsblur/util/PrefConstants.java @@ -57,4 +57,5 @@ public class PrefConstants { public static final String THEME = "theme"; + public static final String STATE_FILTER = "state_filter"; } diff --git a/clients/android/NewsBlur/src/com/newsblur/util/PrefsUtils.java b/clients/android/NewsBlur/src/com/newsblur/util/PrefsUtils.java index 90b128f01..61413ed33 100644 --- a/clients/android/NewsBlur/src/com/newsblur/util/PrefsUtils.java +++ b/clients/android/NewsBlur/src/com/newsblur/util/PrefsUtils.java @@ -8,7 +8,6 @@ import java.net.URL; import java.net.URLConnection; import java.util.Date; import java.util.HashSet; -import java.util.Map; import java.util.Set; import android.app.Activity; @@ -465,4 +464,15 @@ public class PrefsUtils { return theme.equals("light"); } + public static StateFilter getStateFilter(Context context) { + SharedPreferences prefs = context.getSharedPreferences(PrefConstants.PREFERENCES, 0); + return StateFilter.valueOf(prefs.getString(PrefConstants.STATE_FILTER, StateFilter.SOME.toString())); + } + + public static void setStateFilter(Context context, StateFilter newValue) { + SharedPreferences prefs = context.getSharedPreferences(PrefConstants.PREFERENCES, 0); + Editor editor = prefs.edit(); + editor.putString(PrefConstants.STATE_FILTER, newValue.toString()); + editor.commit(); + } }