From d72a0583ff8bab4668d63ab82c88e3447f4ee7d6 Mon Sep 17 00:00:00 2001 From: Elias Projahn Date: Sat, 6 Feb 2021 17:39:11 +0100 Subject: [PATCH] Make file choosers modal --- crates/musicus/src/import/source_selector.rs | 2 ++ crates/musicus/src/preferences/mod.rs | 2 ++ crates/musicus/src/screens/welcome.rs | 2 ++ 3 files changed, 6 insertions(+) diff --git a/crates/musicus/src/import/source_selector.rs b/crates/musicus/src/import/source_selector.rs index 7f87d29..7045fa2 100644 --- a/crates/musicus/src/import/source_selector.rs +++ b/crates/musicus/src/import/source_selector.rs @@ -56,6 +56,8 @@ impl Screen<(), ()> for SourceSelector { (&gettext("Select"), gtk::ResponseType::Accept), ]); + dialog.set_modal(true); + dialog.connect_response(clone!(@weak this => move |dialog, response| { this.stack.set_visible_child_name("loading"); dialog.hide(); diff --git a/crates/musicus/src/preferences/mod.rs b/crates/musicus/src/preferences/mod.rs index 81972db..530b24d 100644 --- a/crates/musicus/src/preferences/mod.rs +++ b/crates/musicus/src/preferences/mod.rs @@ -60,6 +60,8 @@ impl Preferences { (&gettext("Select"), gtk::ResponseType::Accept), ]); + dialog.set_modal(true); + dialog.connect_response(clone!(@strong this => move |dialog, response| { if let gtk::ResponseType::Accept = response { if let Some(file) = dialog.get_file() { diff --git a/crates/musicus/src/screens/welcome.rs b/crates/musicus/src/screens/welcome.rs index 55e7f23..926bd7a 100644 --- a/crates/musicus/src/screens/welcome.rs +++ b/crates/musicus/src/screens/welcome.rs @@ -56,6 +56,8 @@ impl Screen<(), ()> for WelcomeScreen { (&gettext("Select"), gtk::ResponseType::Accept), ]); + dialog.set_modal(true); + dialog.connect_response(clone!(@weak this => move |dialog, response| { if let gtk::ResponseType::Accept = response { if let Some(file) = dialog.get_file() {