mirror of
https://github.com/zed-industries/zed.git
synced 2024-12-26 10:40:54 +00:00
Close remote project windows when leaving a call
This commit is contained in:
parent
385dfe1661
commit
b34477458e
3 changed files with 11 additions and 0 deletions
|
@ -275,6 +275,7 @@ impl Room {
|
|||
if let Some(project) = project.upgrade(cx) {
|
||||
project.update(cx, |project, cx| {
|
||||
project.disconnected_from_host(cx);
|
||||
project.close(cx);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
@ -175,6 +175,7 @@ pub enum Event {
|
|||
},
|
||||
RemoteIdChanged(Option<u64>),
|
||||
DisconnectedFromHost,
|
||||
Closed,
|
||||
CollaboratorUpdated {
|
||||
old_peer_id: proto::PeerId,
|
||||
new_peer_id: proto::PeerId,
|
||||
|
@ -1172,6 +1173,10 @@ impl Project {
|
|||
}
|
||||
}
|
||||
|
||||
pub fn close(&mut self, cx: &mut ModelContext<Self>) {
|
||||
cx.emit(Event::Closed);
|
||||
}
|
||||
|
||||
pub fn is_read_only(&self) -> bool {
|
||||
match &self.client_state {
|
||||
Some(ProjectClientState::Remote {
|
||||
|
|
|
@ -598,6 +598,11 @@ impl Workspace {
|
|||
cx.blur();
|
||||
}
|
||||
|
||||
project::Event::Closed => {
|
||||
let window_id = cx.window_id();
|
||||
cx.remove_window(window_id);
|
||||
}
|
||||
|
||||
_ => {}
|
||||
}
|
||||
cx.notify()
|
||||
|
|
Loading…
Reference in a new issue