diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2018-05-01 14:43:08 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2018-05-01 14:43:08 +0200 |
commit | 2b3f22361da0c1d8e6ce70d71352821758186db7 (patch) | |
tree | 5d10633b47369b3aa52a05bf889ede0dbe5ee108 /src/folders/FoldersPage.vala | |
parent | 211da5fc3048ca2b6ccee2166b0aaaade55cb84f (diff) | |
parent | dc6c76eb04dfe3d4262a1806808f0bc0bf523238 (diff) |
Merge branch 'feature/upstream' into develop
Diffstat (limited to 'src/folders/FoldersPage.vala')
-rw-r--r-- | src/folders/FoldersPage.vala | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/folders/FoldersPage.vala b/src/folders/FoldersPage.vala new file mode 100644 index 0000000..6145c95 --- /dev/null +++ b/src/folders/FoldersPage.vala @@ -0,0 +1,41 @@ +/* Copyright 2016 Software Freedom Conservancy Inc. + * + * This software is licensed under the GNU Lesser General Public License + * (version 2.1 or later). See the COPYING file in this distribution. + */ + +public class Folders.Page : CollectionPage { + private class FolderViewManager : CollectionViewManager { + public File dir; + + public FolderViewManager(Folders.Page owner, File dir) { + base (owner); + + this.dir = dir; + } + + public override bool include_in_view(DataSource source) { + return ((MediaSource) source).get_file().has_prefix(dir); + } + } + + private FolderViewManager view_manager; + + public Page(File dir) { + base (dir.get_path()); + + view_manager = new FolderViewManager(this, dir); + + foreach (MediaSourceCollection sources in MediaCollectionRegistry.get_instance().get_all()) + get_view().monitor_source_collection(sources, view_manager, null); + } + + protected override void get_config_photos_sort(out bool sort_order, out int sort_by) { + Config.Facade.get_instance().get_library_photos_sort(out sort_order, out sort_by); + } + + protected override void set_config_photos_sort(bool sort_order, int sort_by) { + Config.Facade.get_instance().set_library_photos_sort(sort_order, sort_by); + } +} + |