Change summary
crates/gpui/src/app.rs | 19 ++++++++++++++++++-
crates/workspace/src/persistence/model.rs | 2 +-
crates/workspace/src/workspace.rs | 4 ++--
3 files changed, 21 insertions(+), 4 deletions(-)
Detailed changes
@@ -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 {
model_id: usize,
model_type: TypeId,
@@ -4072,12 +4081,20 @@ impl AnyWeakModelHandle {
}
}
-#[derive(Debug, Copy)]
+#[derive(Copy)]
pub struct WeakViewHandle<T> {
any_handle: AnyWeakViewHandle,
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> {
fn id(&self) -> usize {
self.view_id
@@ -197,7 +197,7 @@ impl SerializedPane {
let pane_handle = pane_handle
.upgrade(cx)
.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(())
})??;
}
@@ -1601,7 +1601,7 @@ impl Workspace {
self.active_item_path_changed(cx);
if &pane == self.dock_pane() {
- Dock::show(self, true, cx);
+ Dock::show(self, false, cx);
} else {
self.last_active_center_pane = Some(pane.downgrade());
if self.dock.is_anchored_at(DockAnchor::Expanded) {
@@ -2609,7 +2609,7 @@ impl Workspace {
Dock::set_dock_position(
workspace,
serialized_workspace.dock_position,
- true,
+ false,
cx,
);
});