- entry.signal_changed().connect (sigc::mem_fun (*this, &FloatingTextEntry::changed));
- entry.signal_activate().connect (sigc::mem_fun (*this, &FloatingTextEntry::activated));
- entry.signal_key_press_event().connect (sigc::mem_fun (*this, &FloatingTextEntry::key_press));
- entry.signal_button_press_event().connect (sigc::mem_fun (*this, &FloatingTextEntry::button_press));
+ _connections.push_back (entry.signal_changed().connect (sigc::mem_fun (*this, &FloatingTextEntry::changed)));
+ _connections.push_back (entry.signal_activate().connect (sigc::mem_fun (*this, &FloatingTextEntry::activated)));
+ _connections.push_back (entry.signal_key_press_event().connect (sigc::mem_fun (*this, &FloatingTextEntry::key_press), false));
+ _connections.push_back (entry.signal_key_release_event().connect (sigc::mem_fun (*this, &FloatingTextEntry::key_release), false));
+ _connections.push_back (entry.signal_button_press_event().connect (sigc::mem_fun (*this, &FloatingTextEntry::button_press)));
+
+ entry.select_region (0, -1);