Add dismiss on escape

Mikayla created

Change summary

crates/collab_ui/src/collab_panel/channel_modal.rs  | 5 +++++
crates/collab_ui/src/collab_panel/contact_finder.rs | 5 +++++
2 files changed, 10 insertions(+)

Detailed changes

crates/collab_ui/src/collab_panel/channel_modal.rs 🔗

@@ -27,6 +27,7 @@ pub fn init(cx: &mut AppContext) {
     cx.add_action(ChannelModal::toggle_mode);
     cx.add_action(ChannelModal::toggle_member_admin);
     cx.add_action(ChannelModal::remove_member);
+    cx.add_action(ChannelModal::dismiss);
 }
 
 pub struct ChannelModal {
@@ -131,6 +132,10 @@ impl ChannelModal {
             picker.delegate_mut().remove_selected_member(cx);
         });
     }
+
+    fn dismiss(&mut self, _: &menu::Cancel, cx: &mut ViewContext<Self>) {
+        cx.emit(PickerEvent::Dismiss);
+    }
 }
 
 impl Entity for ChannelModal {

crates/collab_ui/src/collab_panel/contact_finder.rs 🔗

@@ -9,6 +9,7 @@ use workspace::Modal;
 
 pub fn init(cx: &mut AppContext) {
     Picker::<ContactFinderDelegate>::init(cx);
+    cx.add_action(ContactFinder::dismiss)
 }
 
 pub struct ContactFinder {
@@ -43,6 +44,10 @@ impl ContactFinder {
             picker.set_query(query, cx);
         });
     }
+
+    fn dismiss(&mut self, _: &menu::Cancel, cx: &mut ViewContext<Self>) {
+        cx.emit(PickerEvent::Dismiss);
+    }
 }
 
 impl Entity for ContactFinder {