Restore click events on `Button`s using `on_mouse_down`

Marshall Bowers created

Change summary

crates/ui2/src/elements/button.rs | 21 ++++++---------------
1 file changed, 6 insertions(+), 15 deletions(-)

Detailed changes

crates/ui2/src/elements/button.rs 🔗

@@ -1,7 +1,7 @@
 use std::marker::PhantomData;
 use std::sync::Arc;
 
-use gpui3::{DefiniteLength, Hsla, WindowContext};
+use gpui3::{DefiniteLength, Hsla, Interactive, MouseButton, WindowContext};
 
 use crate::prelude::*;
 use crate::{h_stack, theme, Icon, IconColor, IconElement, Label, LabelColor, LabelSize};
@@ -195,20 +195,11 @@ impl<S: 'static + Send + Sync + Clone> Button<S> {
             el = el.w(width).justify_center();
         }
 
-        // el.when_some(self.handlers.click.clone(), |el, click_handler| {
-        //     el.id(0)
-        //         .on_click(MouseButton::Left, move |state, event, cx| {
-        //             click_handler(state, cx);
-        //         })
-        // });
-
-        // if let Some(click_handler) = self.handlers.click.clone() {
-        //     el = el
-        //         .id(0)
-        //         .on_click(MouseButton::Left, move |state, event, cx| {
-        //             click_handler(state, cx);
-        //         });
-        // }
+        if let Some(click_handler) = self.handlers.click.clone() {
+            el = el.on_mouse_down(MouseButton::Left, move |state, event, cx| {
+                click_handler(state, cx);
+            });
+        }
 
         el
     }