diff --git a/src/dialogs/preferences.rs b/src/dialogs/preferences.rs index ccb94ed..9ac4153 100644 --- a/src/dialogs/preferences.rs +++ b/src/dialogs/preferences.rs @@ -66,6 +66,8 @@ impl Preferences { } } } + + dialog.hide(); })); dialog.show(); diff --git a/src/window.rs b/src/window.rs index b71bcd7..9530b6c 100644 --- a/src/window.rs +++ b/src/window.rs @@ -65,15 +65,17 @@ impl Window { result.window.set_application(Some(app)); select_music_library_path_button.connect_clicked(clone!(@strong result => move |_| { - let dialog = gtk::FileChooserNative::new( + let dialog = gtk::FileChooserDialog::new( Some(&gettext("Select music library folder")), Some(&result.window), gtk::FileChooserAction::SelectFolder, - None, - None); + &[ + (&gettext("Cancel"), gtk::ResponseType::Cancel), + (&gettext("Select"), gtk::ResponseType::Accept), + ]); dialog.connect_response(clone!(@strong result => move |dialog, response| { - if response == gtk::ResponseType::Accept { + if let gtk::ResponseType::Accept = response { if let Some(file) = dialog.get_file() { if let Some(path) = file.get_path() { let context = glib::MainContext::default(); @@ -84,6 +86,8 @@ impl Window { } } } + + dialog.hide(); })); dialog.show();