feat(remote): 实现文件下载真实进度显示

- 下载改用流式读取,计算真实进度百分比
- 通过 IPC 事件实时推送进度到前端
- 支持 Content-Length 计算下载进度
This commit is contained in:
2026-03-10 14:59:11 +08:00
parent 40f99f0c49
commit 433db24688
8 changed files with 100 additions and 21 deletions

View File

@@ -14,6 +14,7 @@ export interface ElectronAPI {
onRemoteClipboardSyncToRemote: (callback: () => void) => () => void
onRemoteClipboardSyncFromRemote: (callback: () => void) => () => void
onRemoteClipboardAutoSync: (callback: (text: string) => void) => () => void
onDownloadProgress: (callback: (data: { progress: number; id: string }) => void) => () => void
clipboardReadText: () => Promise<{ success: boolean; text?: string; error?: string }>
clipboardWriteText: (text: string) => Promise<{ success: boolean; error?: string }>
remoteFetchDrives: (serverHost: string, port: number, password?: string) => Promise<{
@@ -30,7 +31,7 @@ export interface ElectronAPI {
success: boolean
error?: string
}>
remoteDownloadFile: (serverHost: string, port: number, fileName: string, remotePath: string, localPath: string, password?: string) => Promise<{
remoteDownloadFile: (id: string, serverHost: string, port: number, fileName: string, remotePath: string, localPath: string, password?: string) => Promise<{
success: boolean
filePath?: string
error?: string