From 06dab978f762cb15dd0bb449221532e8dc8ed8cd Mon Sep 17 00:00:00 2001 From: fullex <0xfullex@gmail.com> Date: Sun, 10 Aug 2025 02:09:52 +0800 Subject: [PATCH] feat(migration): update migration UI and enhance user experience This commit modifies the migration window dimensions and properties for improved usability, allowing for resizing and maximizing. It also introduces new icons for different migration stages, updates localized messages for clarity, and enhances the overall layout of the migration interface, including adjustments to the alert messages and step indicators for better user guidance during the migration process. --- .../DataRefactorMigrateService.ts | 12 +-- .../dataRefactorMigrate/MigrateApp.tsx | 82 ++++++++++--------- 2 files changed, 49 insertions(+), 45 deletions(-) diff --git a/src/main/data/migrate/dataRefactor/DataRefactorMigrateService.ts b/src/main/data/migrate/dataRefactor/DataRefactorMigrateService.ts index 1f4d4f6d46..dfc7aa432c 100644 --- a/src/main/data/migrate/dataRefactor/DataRefactorMigrateService.ts +++ b/src/main/data/migrate/dataRefactor/DataRefactorMigrateService.ts @@ -375,14 +375,14 @@ class DataRefactorMigrateService { this.registerMigrationIpcHandlers() this.migrateWindow = new BrowserWindow({ - width: 600, - height: 500, - resizable: false, - maximizable: false, - minimizable: false, + width: 800, + height: 650, + resizable: true, + maximizable: true, + minimizable: true, show: false, autoHideMenuBar: true, - titleBarStyle: 'hidden', + titleBarStyle: 'default', webPreferences: { preload: join(__dirname, '../preload/index.js'), sandbox: false, diff --git a/src/renderer/src/windows/dataRefactorMigrate/MigrateApp.tsx b/src/renderer/src/windows/dataRefactorMigrate/MigrateApp.tsx index fdad3fb9b4..1b9bec4973 100644 --- a/src/renderer/src/windows/dataRefactorMigrate/MigrateApp.tsx +++ b/src/renderer/src/windows/dataRefactorMigrate/MigrateApp.tsx @@ -1,4 +1,4 @@ -import { AppLogo } from '@renderer/config/env' +import { CheckCircleOutlined, CloudUploadOutlined, LoadingOutlined, RocketOutlined } from '@ant-design/icons' import { IpcChannel } from '@shared/IpcChannel' import { Alert, Button, Card, Progress, Space, Steps, Typography } from 'antd' import React, { useEffect, useMemo, useState } from 'react' @@ -126,6 +126,26 @@ const MigrateApp: React.FC = () => { } } + const getCurrentStepIcon = () => { + switch (progress.stage) { + case 'introduction': + return + case 'backup_required': + case 'backup_progress': + return + case 'backup_confirmed': + return + case 'migration': + return + case 'completed': + return + case 'error': + return
⚠️
+ default: + return + } + } + const renderActionButtons = () => { switch (progress.stage) { case 'introduction': @@ -133,7 +153,7 @@ const MigrateApp: React.FC = () => { ) @@ -183,24 +203,23 @@ const MigrateApp: React.FC = () => { - - Cherry Studio Data Migration + <Title level={4} style={{ margin: 0, fontWeight: 'normal' }}> + 数据迁移向导 } bordered={false}> - - Cherry Studio - - -
+
+
{getCurrentStepIcon()}
+ {progress.stage !== 'introduction' && progress.stage !== 'error' && ( { {progress.stage === 'introduction' && ( { {progress.stage === 'backup_required' && ( { {progress.stage === 'backup_confirmed' && ( { {progress.stage === 'error' && ( { {progress.stage === 'completed' && (