Merge branch 'main' into panels

This commit is contained in:
Nathan Sobo 2023-05-09 16:35:04 -06:00
commit 6d16d2224d
3 changed files with 27 additions and 10 deletions

View file

@ -1170,7 +1170,7 @@ mod tests {
} }
fn mtime(&self) -> std::time::SystemTime { fn mtime(&self) -> std::time::SystemTime {
todo!() unimplemented!()
} }
fn path(&self) -> &Arc<Path> { fn path(&self) -> &Arc<Path> {
@ -1178,23 +1178,23 @@ mod tests {
} }
fn full_path(&self, _: &AppContext) -> PathBuf { fn full_path(&self, _: &AppContext) -> PathBuf {
todo!() unimplemented!()
} }
fn file_name<'a>(&'a self, _: &'a AppContext) -> &'a std::ffi::OsStr { fn file_name<'a>(&'a self, _: &'a AppContext) -> &'a std::ffi::OsStr {
todo!() unimplemented!()
} }
fn is_deleted(&self) -> bool { fn is_deleted(&self) -> bool {
todo!() unimplemented!()
} }
fn as_any(&self) -> &dyn std::any::Any { fn as_any(&self) -> &dyn std::any::Any {
todo!() unimplemented!()
} }
fn to_proto(&self) -> rpc::proto::File { fn to_proto(&self) -> rpc::proto::File {
todo!() unimplemented!()
} }
} }
@ -1204,7 +1204,7 @@ mod tests {
} }
fn load(&self, _: &AppContext) -> Task<Result<String>> { fn load(&self, _: &AppContext) -> Task<Result<String>> {
todo!() unimplemented!()
} }
fn buffer_reloaded( fn buffer_reloaded(
@ -1216,7 +1216,7 @@ mod tests {
_: std::time::SystemTime, _: std::time::SystemTime,
_: &mut AppContext, _: &mut AppContext,
) { ) {
todo!() unimplemented!()
} }
} }
} }

View file

@ -3963,6 +3963,15 @@ impl Drop for AnyViewHandle {
} }
} }
impl Debug for AnyViewHandle {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.debug_struct("AnyViewHandle")
.field("window_id", &self.window_id)
.field("view_id", &self.view_id)
.finish()
}
}
pub struct AnyModelHandle { pub struct AnyModelHandle {
model_id: usize, model_id: usize,
model_type: TypeId, model_type: TypeId,
@ -4072,12 +4081,20 @@ impl AnyWeakModelHandle {
} }
} }
#[derive(Debug, Copy)] #[derive(Copy)]
pub struct WeakViewHandle<T> { pub struct WeakViewHandle<T> {
any_handle: AnyWeakViewHandle, any_handle: AnyWeakViewHandle,
view_type: PhantomData<T>, view_type: PhantomData<T>,
} }
impl<T> Debug for WeakViewHandle<T> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.debug_struct(&format!("WeakViewHandle<{}>", type_name::<T>()))
.field("any_handle", &self.any_handle)
.finish()
}
}
impl<T> WeakHandle for WeakViewHandle<T> { impl<T> WeakHandle for WeakViewHandle<T> {
fn id(&self) -> usize { fn id(&self) -> usize {
self.view_id self.view_id

View file

@ -194,7 +194,7 @@ impl SerializedPane {
let pane_handle = pane_handle let pane_handle = pane_handle
.upgrade(cx) .upgrade(cx)
.ok_or_else(|| anyhow!("pane was dropped"))?; .ok_or_else(|| anyhow!("pane was dropped"))?;
Pane::add_item(workspace, &pane_handle, item_handle, false, false, None, cx); Pane::add_item(workspace, &pane_handle, item_handle, true, true, None, cx);
anyhow::Ok(()) anyhow::Ok(())
})??; })??;
} }