summaryrefslogtreecommitdiff
path: root/libs/gtkmm2ext/binding_proxy.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-07-10 20:01:47 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-07-10 20:01:47 +0000
commit26843b34fdd62e6f80630868c5eb3f8fee0c17f1 (patch)
treefe4001528aa6e4e360ec6392c7b1120ca75e0aa9 /libs/gtkmm2ext/binding_proxy.cc
parent05f8fcd189ca714c2c18b9fb174d5813140849df (diff)
modification to make generic MIDI actually work again
git-svn-id: svn://localhost/ardour2/trunk@673 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/gtkmm2ext/binding_proxy.cc')
-rw-r--r--libs/gtkmm2ext/binding_proxy.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/libs/gtkmm2ext/binding_proxy.cc b/libs/gtkmm2ext/binding_proxy.cc
index a29cb41632..3a2f5bbbc8 100644
--- a/libs/gtkmm2ext/binding_proxy.cc
+++ b/libs/gtkmm2ext/binding_proxy.cc
@@ -62,7 +62,8 @@ BindingProxy::button_press_handler (GdkEventButton *ev)
if (Controllable::StartLearning (&controllable)) {
string prompt = _("operate controller now");
prompter.set_text (prompt);
- prompter.show_all ();
+ prompter.touch (); // shows popup
+ learning_connection = controllable.LearningFinished.connect (mem_fun (*this, &BindingProxy::learning_finished));
}
return true;
}
@@ -70,9 +71,18 @@ BindingProxy::button_press_handler (GdkEventButton *ev)
return false;
}
+void
+BindingProxy::learning_finished ()
+{
+ learning_connection.disconnect ();
+ prompter.touch (); // hides popup
+}
+
+
bool
BindingProxy::prompter_hiding (GdkEventAny *ev)
{
+ learning_connection.disconnect ();
Controllable::StopLearning (&controllable);
return false;
}