From 8b3b92b405ebc96416ec300ad3f6260bd8354864 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Wed, 5 Nov 2025 16:45:30 +0800 Subject: Add sheet restoration and drop functionality - Add write_and_return macro for common result handling pattern - Extend make_sheet_action to restore sheets with no holder - Implement drop_sheet_action for releasing sheet ownership - Register new drop_sheet_action in client and server registries --- crates/vcs_actions/src/registry/client_registry.rs | 3 ++- crates/vcs_actions/src/registry/server_registry.rs | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'crates/vcs_actions/src/registry') diff --git a/crates/vcs_actions/src/registry/client_registry.rs b/crates/vcs_actions/src/registry/client_registry.rs index a0b87a6..95c0939 100644 --- a/crates/vcs_actions/src/registry/client_registry.rs +++ b/crates/vcs_actions/src/registry/client_registry.rs @@ -13,7 +13,7 @@ use crate::{ local_actions::{ register_set_upstream_vault_action, register_update_to_latest_info_action, }, - sheet_actions::register_make_sheet_action, + sheet_actions::{register_drop_sheet_action, register_make_sheet_action}, }, connection::protocol::RemoteActionInvoke, }; @@ -27,6 +27,7 @@ fn register_actions(pool: &mut ActionPool) { // Sheet Actions register_make_sheet_action(pool); + register_drop_sheet_action(pool); } pub fn client_action_pool() -> ActionPool { diff --git a/crates/vcs_actions/src/registry/server_registry.rs b/crates/vcs_actions/src/registry/server_registry.rs index eade391..b99d697 100644 --- a/crates/vcs_actions/src/registry/server_registry.rs +++ b/crates/vcs_actions/src/registry/server_registry.rs @@ -2,7 +2,7 @@ use action_system::action_pool::ActionPool; use crate::actions::{ local_actions::{register_set_upstream_vault_action, register_update_to_latest_info_action}, - sheet_actions::register_make_sheet_action, + sheet_actions::{register_drop_sheet_action, register_make_sheet_action}, }; pub fn server_action_pool() -> ActionPool { @@ -14,6 +14,7 @@ pub fn server_action_pool() -> ActionPool { // Sheet Actions register_make_sheet_action(&mut pool); + register_drop_sheet_action(&mut pool); pool } -- cgit