window: i18n for filter name and add 'all files'

Part-of: <https://gitlab.gnome.org/Incubator/loupe/-/merge_requests/195>
This commit is contained in:
Sophie Herold 2023-04-21 16:53:12 +02:00
parent 8cbe670498
commit 9d5dfd8728
2 changed files with 19 additions and 15 deletions

View file

@ -415,16 +415,25 @@ impl LpWindow {
}
async fn pick_file(&self) {
let filter_store = gio::ListStore::new(gtk::FileFilter::static_type());
let filter_list = gio::ListStore::new(gtk::FileFilter::static_type());
let filter = gtk::FileFilter::new();
filter.set_property("name", &String::from("Supported image files"));
filter.add_mime_type("image/*");
filter_store.append(&filter);
let filter_supported_formats = gtk::FileFilter::new();
filter_supported_formats.set_name(Some(&gettext("Supported image formats")));
filter_supported_formats.add_mime_type("image/*");
// Manual support for Farbfeld since it has no mime type
filter_supported_formats.add_suffix("ff");
let filter_all_files = gtk::FileFilter::new();
filter_all_files.set_name(Some(&gettext("All files")));
filter_all_files.add_pattern("*");
filter_list.append(&filter_supported_formats);
filter_list.append(&filter_all_files);
let chooser = gtk::FileDialog::builder()
.title(gettext("Open Image"))
.filters(&filter_store)
.filters(&filter_list)
.default_filter(&filter_supported_formats)
.modal(true)
.build();