local_settings.dart 720 B

1234567891011121314151617181920212223242526272829
  1. import 'package:shared_preferences/shared_preferences.dart';
  2. enum AlbumSortKey {
  3. albumName,
  4. newestPhoto,
  5. oldestPhoto,
  6. lastUpdated,
  7. }
  8. class LocalSettings {
  9. LocalSettings._privateConstructor();
  10. static final LocalSettings instance = LocalSettings._privateConstructor();
  11. static const kCollectionSortPref = "collection_sort_pref";
  12. SharedPreferences _prefs;
  13. Future<void> init() async {
  14. _prefs = await SharedPreferences.getInstance();
  15. }
  16. AlbumSortKey albumSortKey() {
  17. return AlbumSortKey.values[_prefs.getInt(kCollectionSortPref) ?? 0] ??
  18. AlbumSortKey.lastUpdated;
  19. }
  20. Future<bool> setAlbumSortKey(AlbumSortKey key) {
  21. return _prefs.setInt(kCollectionSortPref, key.index);
  22. }
  23. }