- prompter.set_text (prompt);
- prompter.touch (); // shows popup
- learning_connection = controllable.LearningFinished.connect (mem_fun (*this, &BindingProxy::learning_finished));
+ if (prompter == 0) {
+ prompter = new PopUp (Gtk::WIN_POS_MOUSE, 30000, false);
+ prompter->signal_unmap_event().connect (mem_fun (*this, &BindingProxy::prompter_hiding));
+ }
+ prompter->set_text (prompt);
+ prompter->touch (); // shows popup
+ controllable->LearningFinished.connect_same_thread (learning_connection, boost::bind (&BindingProxy::learning_finished, this));