summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2021-03-05 13:01:16 +0100
committerByteHamster <info@bytehamster.com>2021-03-05 13:23:48 +0100
commit20f4d9739d996921c9b1e6b840df6e7fe2136b59 (patch)
treef86c3b53e52db5a663bb963bb26810c012ca1865 /app
parente86905e4c853b4caf9a1abfeafd30534f281fc4e (diff)
downloadAntennaPod-20f4d9739d996921c9b1e6b840df6e7fe2136b59.zip
Store opened folders across app launches
Diffstat (limited to 'app')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java13
1 files changed, 11 insertions, 2 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java
index bec459bed..51c8c48ad 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/NavDrawerFragment.java
@@ -56,6 +56,7 @@ import java.util.Set;
public class NavDrawerFragment extends Fragment implements SharedPreferences.OnSharedPreferenceChangeListener {
@VisibleForTesting
public static final String PREF_LAST_FRAGMENT_TAG = "prefLastFragmentTag";
+ private static final String PREF_OPEN_FOLDERS = "prefOpenFolders";
@VisibleForTesting
public static final String PREF_NAME = "NavDrawerPrefs";
public static final String TAG = "NavDrawerFragment";
@@ -84,6 +85,9 @@ public class NavDrawerFragment extends Fragment implements SharedPreferences.OnS
super.onCreateView(inflater, container, savedInstanceState);
View root = inflater.inflate(R.layout.nav_list, container, false);
+ SharedPreferences preferences = getContext().getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE);
+ openFolders = new HashSet<>(preferences.getStringSet(PREF_OPEN_FOLDERS, new HashSet<>())); // Must not modify
+
progressBar = root.findViewById(R.id.progressBar);
RecyclerView navList = root.findViewById(R.id.nav_list);
navAdapter = new NavListAdapter(itemAccess, getActivity());
@@ -93,8 +97,8 @@ public class NavDrawerFragment extends Fragment implements SharedPreferences.OnS
root.findViewById(R.id.nav_settings).setOnClickListener(v ->
startActivity(new Intent(getActivity(), PreferenceActivity.class)));
- getContext().getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE)
- .registerOnSharedPreferenceChangeListener(this);
+
+ preferences.registerOnSharedPreferenceChangeListener(this);
return root;
}
@@ -344,6 +348,11 @@ public class NavDrawerFragment extends Fragment implements SharedPreferences.OnS
openFolders.add(folder.name);
}
+ getContext().getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE)
+ .edit()
+ .putStringSet(PREF_OPEN_FOLDERS, openFolders)
+ .apply();
+
disposable = Observable.fromCallable(() -> makeFlatDrawerData(navDrawerData.items, 0))
.subscribeOn(Schedulers.computation())
.observeOn(AndroidSchedulers.mainThread())