diff options
Diffstat (limited to 'crates/vcs_actions')
| -rw-r--r-- | crates/vcs_actions/src/actions/local_actions.rs | 4 | ||||
| -rw-r--r-- | crates/vcs_actions/src/actions/sheet_actions.rs | 8 | ||||
| -rw-r--r-- | crates/vcs_actions/src/actions/virtual_file_actions.rs | 6 |
3 files changed, 16 insertions, 2 deletions
diff --git a/crates/vcs_actions/src/actions/local_actions.rs b/crates/vcs_actions/src/actions/local_actions.rs index e1c7dd9..9bd50c7 100644 --- a/crates/vcs_actions/src/actions/local_actions.rs +++ b/crates/vcs_actions/src/actions/local_actions.rs @@ -14,6 +14,7 @@ use vcs_data::{ config::LocalConfig, latest_file_data::LatestFileData, latest_info::{LatestInfo, SheetInfo}, + vault_modified::sign_vault_modified, }, member::MemberId, sheet::{SheetData, SheetName}, @@ -448,6 +449,9 @@ pub async fn update_to_latest_info_action( } } + if ctx.is_proc_on_local() { + sign_vault_modified(false).await; + } Ok(UpdateToLatestInfoResult::Success) } diff --git a/crates/vcs_actions/src/actions/sheet_actions.rs b/crates/vcs_actions/src/actions/sheet_actions.rs index e529642..ff467d9 100644 --- a/crates/vcs_actions/src/actions/sheet_actions.rs +++ b/crates/vcs_actions/src/actions/sheet_actions.rs @@ -3,7 +3,7 @@ use std::io::ErrorKind; use action_system::{action::ActionContext, macros::action_gen}; use serde::{Deserialize, Serialize}; use tcp_connection::error::TcpTargetError; -use vcs_data::data::sheet::SheetName; +use vcs_data::data::{local::vault_modified::sign_vault_modified, sheet::SheetName}; use crate::{ actions::{auth_member, check_connection_instance, try_get_local_workspace, try_get_vault}, @@ -82,6 +82,9 @@ pub async fn make_sheet_action( .await .read::<MakeSheetActionResult>() .await?; + if matches!(result, MakeSheetActionResult::Success) { + sign_vault_modified(true).await; + } return Ok(result); } @@ -188,6 +191,9 @@ pub async fn drop_sheet_action( .await .read::<DropSheetActionResult>() .await?; + if matches!(result, DropSheetActionResult::Success) { + sign_vault_modified(true).await; + } return Ok(result); } diff --git a/crates/vcs_actions/src/actions/virtual_file_actions.rs b/crates/vcs_actions/src/actions/virtual_file_actions.rs index 3760444..2e6a452 100644 --- a/crates/vcs_actions/src/actions/virtual_file_actions.rs +++ b/crates/vcs_actions/src/actions/virtual_file_actions.rs @@ -12,7 +12,7 @@ use tokio::sync::Mutex; use vcs_data::data::{ local::{ cached_sheet::CachedSheet, file_status::AnalyzeResult, latest_file_data::LatestFileData, - local_sheet::LocalMappingMetadata, + local_sheet::LocalMappingMetadata, vault_modified::sign_vault_modified, }, member::MemberId, sheet::SheetName, @@ -264,6 +264,10 @@ pub async fn track_file_action( Err(e) => return Err(e), }; + if success_create.len() + success_update.len() > 0 { + sign_vault_modified(true).await; + } + return Ok(TrackFileActionResult::Done { created: success_create, updated: success_update, |
