Use layers to correct mouse event handling too

This commit is contained in:
Conrad Irwin 2023-11-28 00:07:26 -07:00
parent 17b5f9294c
commit ca0dcf741f
3 changed files with 72 additions and 36 deletions

View file

@ -46,7 +46,6 @@ impl ModalLayer {
previous_focus_handle: cx.focused(),
focus_handle: cx.focus_handle(),
});
dbg!("focusing");
cx.focus_view(&new_modal);
cx.notify();
}
@ -96,10 +95,6 @@ impl Render for ModalLayer {
.track_focus(&active_modal.focus_handle)
.child(
h_stack()
// needed to prevent mouse events leaking to the
// UI below. // todo! for gpui3.
.on_any_mouse_down(|_, cx| cx.stop_propagation())
.on_any_mouse_up(|_, cx| cx.stop_propagation())
.on_mouse_down_out(cx.listener(|this, _, cx| {
this.hide_modal(cx);
}))