diff --git a/src-tauri/src/commands/files.rs b/src-tauri/src/commands/files.rs index 8a40a59..84e50e0 100644 --- a/src-tauri/src/commands/files.rs +++ b/src-tauri/src/commands/files.rs @@ -10,7 +10,7 @@ pub struct FileItem { #[tauri::command] pub fn scan_directory(target: String) -> Result, String> { - WalkDir::new(target) + let mut file_items = WalkDir::new(target) .into_iter() .filter_map(|f| f.ok()) .filter(|f| f.path().is_file()) @@ -32,5 +32,8 @@ pub fn scan_directory(target: String) -> Result, String> { }) }) .collect::, anyhow::Error>>() - .map_err(|e| e.to_string()) + .map_err(|e| e.to_string())?; + file_items.sort_by(|a, b| a.filename.partial_cmp(&b.filename).unwrap()); + + Ok(file_items) }