diff --git a/crates/gpui/src/app.rs b/crates/gpui/src/app.rs index ee12b8bc6a..d5a7a2f3ab 100644 --- a/crates/gpui/src/app.rs +++ b/crates/gpui/src/app.rs @@ -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 { any_handle: AnyWeakViewHandle, view_type: PhantomData, } +impl Debug for WeakViewHandle { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + f.debug_struct(&format!("WeakViewHandle<{}>", type_name::())) + .field("any_handle", &self.any_handle) + .finish() + } +} + impl WeakHandle for WeakViewHandle { fn id(&self) -> usize { self.view_id diff --git a/crates/workspace/src/workspace.rs b/crates/workspace/src/workspace.rs index a57cea526b..e1d4d3c8ac 100644 --- a/crates/workspace/src/workspace.rs +++ b/crates/workspace/src/workspace.rs @@ -1600,8 +1600,9 @@ 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) {