ignore dbl-clicks on mute/solo/rec-enable buttons since they make the user-experience...
[ardour.git] / gtk2_ardour / route_ui.cc
index afc9089c01c3250b85643aff3eab4d8cfd4a89b9..6e4a8645c4b3efb0b53d7f9c49bc8a4d166d79cd 100644 (file)
@@ -124,6 +124,10 @@ RouteUI::~RouteUI()
 bool
 RouteUI::mute_press(GdkEventButton* ev)
 {
+       if (ev->type == GDK_2BUTTON_PRESS) {
+               return true;
+       }
+
        if (!ignore_toggle) {
 
                if (Keyboard::is_context_menu_event (ev)) {
@@ -201,6 +205,12 @@ RouteUI::mute_release(GdkEventButton* ev)
 bool
 RouteUI::solo_press(GdkEventButton* ev)
 {
+       /* ignore double clicks */
+
+       if (ev->type == GDK_2BUTTON_PRESS) {
+               return true;
+       }
+
        if (!ignore_toggle) {
 
                if (Keyboard::is_context_menu_event (ev)) {
@@ -270,7 +280,6 @@ RouteUI::solo_press(GdkEventButton* ev)
                                } else {
 
                                        /* click: solo this route */
-                                       
                                        reversibly_apply_route_boolean ("solo change", &Route::set_solo, !_route->soloed(), this);
                                }
                        }
@@ -299,6 +308,10 @@ RouteUI::solo_release(GdkEventButton* ev)
 bool
 RouteUI::rec_enable_press(GdkEventButton* ev)
 {
+       if (ev->type == GDK_2BUTTON_PRESS) {
+               return true;
+       }
+
        if (!_session.engine().connected()) {
                MessageDialog msg (_("Not connected to JACK - cannot engage record"));
                msg.run ();
@@ -367,7 +380,7 @@ RouteUI::update_solo_display ()
                ignore_toggle = true;
                solo_button->set_active(x);
                ignore_toggle = false;
-       }
+       } 
        
        if (_route->solo_safe()) {
                solo_button->set_visual_state (2);