summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-04-07 00:29:02 +0200
committerRobin Gareus <robin@gareus.org>2017-04-07 00:29:21 +0200
commitbcab83205b07559f6eb404b03c3be43acb5fbbf9 (patch)
tree5c45b06490051e0fa0fc452d802ae27935596b3d
parentb38e81d2617f8c50ca8bdc7181d0bb355b7d306c (diff)
Keep the RhythmFerret dialog window around after using an action.
Since 5.8-245-g3e43585fa, a response hides the dialog Window in ArdourDialog::on_response (to prevent dialogs windows staying around unresponsive while Ardour does background work). The RF is special, and also the only dialog using explicit add_action_widget().
-rw-r--r--gtk2_ardour/ardour_dialog.h2
-rw-r--r--gtk2_ardour/rhythm_ferret.cc6
-rw-r--r--gtk2_ardour/rhythm_ferret.h1
3 files changed, 8 insertions, 1 deletions
diff --git a/gtk2_ardour/ardour_dialog.h b/gtk2_ardour/ardour_dialog.h
index c65eaa5a09..990d86024f 100644
--- a/gtk2_ardour/ardour_dialog.h
+++ b/gtk2_ardour/ardour_dialog.h
@@ -47,7 +47,7 @@ public:
bool on_delete_event (GdkEventAny*);
void on_unmap ();
void on_show ();
- void on_response (int);
+ virtual void on_response (int);
private:
WM::ProxyTemporary* proxy;
diff --git a/gtk2_ardour/rhythm_ferret.cc b/gtk2_ardour/rhythm_ferret.cc
index 2106f487d2..aa4a8c908a 100644
--- a/gtk2_ardour/rhythm_ferret.cc
+++ b/gtk2_ardour/rhythm_ferret.cc
@@ -173,6 +173,12 @@ RhythmFerret::RhythmFerret (Editor& e)
}
void
+RhythmFerret::on_response (int response_id)
+{
+ Gtk::Dialog::on_response (response_id);
+}
+
+void
RhythmFerret::analysis_mode_changed ()
{
bool const perc = get_analysis_mode() == PercussionOnset;
diff --git a/gtk2_ardour/rhythm_ferret.h b/gtk2_ardour/rhythm_ferret.h
index f091916882..d302226dd9 100644
--- a/gtk2_ardour/rhythm_ferret.h
+++ b/gtk2_ardour/rhythm_ferret.h
@@ -59,6 +59,7 @@ class RhythmFerret : public ArdourDialog {
RhythmFerret (Editor&);
void set_session (ARDOUR::Session*);
+ void on_response (int);
protected:
void on_hide ();