pane: Serialize pinned tab state (#17670)

Release Notes:

- Tab pin state is now persisted across Zed runs.
This commit is contained in:
Piotr Osiewicz 2024-09-10 19:19:21 -04:00 committed by GitHub
parent d1a47faeb7
commit f374038da0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 49 additions and 11 deletions

View file

@ -4025,7 +4025,7 @@ impl Workspace {
};
fn serialize_pane_handle(pane_handle: &View<Pane>, cx: &WindowContext) -> SerializedPane {
let (items, active) = {
let (items, active, pinned_count) = {
let pane = pane_handle.read(cx);
let active_item_id = pane.active_item().map(|item| item.item_id());
(
@ -4042,10 +4042,11 @@ impl Workspace {
})
.collect::<Vec<_>>(),
pane.has_focus(cx),
pane.pinned_count(),
)
};
SerializedPane::new(items, active)
SerializedPane::new(items, active, pinned_count)
}
fn build_serialized_pane_group(