From 1e5c1c815e9105883e519b8717ad0a153267ab33 Mon Sep 17 00:00:00 2001 From: Hikari Date: Sat, 24 Jan 2026 16:14:33 -0800 Subject: [PATCH] fix: show actual file size for picked files --- src-tauri/src/commands.rs | 7 +++++++ src-tauri/src/lib.rs | 1 + src/lib/components/InputBar.svelte | 10 +++++++++- 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src-tauri/src/commands.rs b/src-tauri/src/commands.rs index beeae08..75373db 100644 --- a/src-tauri/src/commands.rs +++ b/src-tauri/src/commands.rs @@ -373,3 +373,10 @@ pub async fn cleanup_orphaned_temp_files( let mut manager = temp_manager.lock(); manager.cleanup_orphaned_files() } + +#[tauri::command] +pub async fn get_file_size(file_path: String) -> Result { + let metadata = std::fs::metadata(&file_path) + .map_err(|e| format!("Failed to get file metadata: {}", e))?; + Ok(metadata.len()) +} diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 4103f5d..f635d4d 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -77,6 +77,7 @@ pub fn run() { cleanup_temp_files, cleanup_all_temp_files, cleanup_orphaned_temp_files, + get_file_size, ]) .run(tauri::generate_context!()) .expect("error while running tauri application"); diff --git a/src/lib/components/InputBar.svelte b/src/lib/components/InputBar.svelte index e3e73d3..cd16941 100644 --- a/src/lib/components/InputBar.svelte +++ b/src/lib/components/InputBar.svelte @@ -474,11 +474,19 @@ User: ${formattedMessage}`; const extension = filename.split(".").pop()?.toLowerCase() || ""; const fileType = getFileTypeFromExtension(extension); + // Get file size from Tauri + let fileSize = 0; + try { + fileSize = await invoke("get_file_size", { filePath }); + } catch (e) { + console.warn("Could not get file size:", e); + } + const attachment: Attachment = { id: `attachment-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`, filename, path: filePath, - size: 0, + size: fileSize, type: fileType, };