From 73dc37fef8ed9b479684df6c8ab0645274290693 Mon Sep 17 00:00:00 2001 From: truewhile <62226914+truewhile@users.noreply.github.com> Date: Wed, 2 Sep 2026 11:43:39 +0800 Subject: [PATCH] Remove obsolete file manager organize options (#12) Remove UI options for features that no longer exist: - qB download auto-organize - downloader smart classification - seeding (keep seeding) Also remove related warning banners and simplify move transfer labels. Co-authored-by: Cursor Agent Co-authored-by: truewhile --- web/src/pages/AutoOrganizeSettingsPanel.tsx | 3 --- web/src/pages/AutoOrganizeSettingsTabs.tsx | 14 +------------- web/src/pages/FileManagerPage.tsx | 5 ----- web/src/pages/ManualOrganizePanel.tsx | 10 +--------- web/src/pages/autoOrganizeModel.ts | 12 ------------ web/src/pages/useAutoOrganizeSettings.ts | 8 +------- web/src/pages/useManualOrganize.ts | 4 ---- 7 files changed, 3 insertions(+), 53 deletions(-) diff --git a/web/src/pages/AutoOrganizeSettingsPanel.tsx b/web/src/pages/AutoOrganizeSettingsPanel.tsx index 21d426b..83f232b 100644 --- a/web/src/pages/AutoOrganizeSettingsPanel.tsx +++ b/web/src/pages/AutoOrganizeSettingsPanel.tsx @@ -18,7 +18,6 @@ type AutoOrganizeSettingsPanelProps = { loading: boolean saving: boolean running: boolean - moveKeepsSeeding: boolean onRefresh: () => void onSave: () => void onRunNow: () => void @@ -40,7 +39,6 @@ export function AutoOrganizeSettingsPanel({ loading, saving, running, - moveKeepsSeeding, onRefresh, onSave, onRunNow, @@ -108,7 +106,6 @@ export function AutoOrganizeSettingsPanel({ )} diff --git a/web/src/pages/AutoOrganizeSettingsTabs.tsx b/web/src/pages/AutoOrganizeSettingsTabs.tsx index f5a4158..be017f1 100644 --- a/web/src/pages/AutoOrganizeSettingsTabs.tsx +++ b/web/src/pages/AutoOrganizeSettingsTabs.tsx @@ -13,11 +13,9 @@ type AutoOrganizeTabProps = { export function AutoOrganizeBasicTab({ config, currentDir, - moveKeepsSeeding, onConfigChange, }: AutoOrganizeTabProps & { currentDir: string - moveKeepsSeeding: boolean }) { return ( <> @@ -68,7 +66,7 @@ export function AutoOrganizeBasicTab({ onChange={(event) => onConfigChange('transferMode', event.target.value)} > - + @@ -85,20 +83,10 @@ export function AutoOrganizeBasicTab({ - {moveKeepsSeeding && ( -
- 当前同时选择了“移动”和“保种”。为避免 qB 做种源文件被删除,后端会实际使用硬链接;Docker / NAS - 多挂载或不同子卷下可能报 invalid cross-device link。需要真正移动时请关闭“保种”,需要保种但硬链接失败时请选择“复制”。 -
- )} -
- - -
) diff --git a/web/src/pages/FileManagerPage.tsx b/web/src/pages/FileManagerPage.tsx index fa14add..46c758e 100644 --- a/web/src/pages/FileManagerPage.tsx +++ b/web/src/pages/FileManagerPage.tsx @@ -4,7 +4,6 @@ import { ChevronUp, Home } from 'lucide-react' import { filesAPI, type FileEntry, type FileListing } from '../api/files' import { libraryAPI } from '../api/library' import type { Library } from '../types' -import { settingOn } from './autoOrganizeModel' import { AutoOrganizeSettingsPanel } from './AutoOrganizeSettingsPanel' import { FileBrowserRoots } from './FileBrowserRoots' import { FileEntriesTable } from './FileEntriesTable' @@ -36,7 +35,6 @@ export function FileManagerPage() { () => libraries.filter((library) => !isCloudLibraryPath(library.path)), [libraries], ) - const autoMoveKeepsSeeding = autoOrganize.moveKeepsSeeding const refresh = useCallback(() => { setLoading(true) @@ -68,7 +66,6 @@ export function FileManagerPage() { selectedPath: fileOperations.selected?.path, selectedPaths: fileOperations.selectedPaths, scrapeAfter, - keepSeeding: settingOn(autoOrganize.config.keepSeeding), onScrapeAfterChange: setScrapeAfter, onClearSelected: () => fileOperations.setSelectedPaths([]), refresh, @@ -102,7 +99,6 @@ export function FileManagerPage() { loading={autoOrganize.loading} saving={autoOrganize.saving} running={autoOrganize.running} - moveKeepsSeeding={autoMoveKeepsSeeding} onRefresh={autoOrganize.refresh} onSave={() => void autoOrganize.save()} onRunNow={autoOrganize.runNow} @@ -119,7 +115,6 @@ export function FileManagerPage() { organizeDestPath={manualOrganize.organizeDestPath} organizeMediaType={manualOrganize.organizeMediaType} organizeTransferMode={manualOrganize.organizeTransferMode} - manualMoveKeepsSeeding={manualOrganize.manualMoveKeepsSeeding} scanAfter={manualOrganize.scanAfter} scrapeAfter={scrapeAfter} organizeReady={manualOrganize.organizeReady} diff --git a/web/src/pages/ManualOrganizePanel.tsx b/web/src/pages/ManualOrganizePanel.tsx index 907cef1..5c9f47d 100644 --- a/web/src/pages/ManualOrganizePanel.tsx +++ b/web/src/pages/ManualOrganizePanel.tsx @@ -15,7 +15,6 @@ type ManualOrganizePanelProps = { organizeDestPath: string organizeMediaType: string organizeTransferMode: string - manualMoveKeepsSeeding: boolean scanAfter: boolean scrapeAfter: boolean organizeReady: boolean @@ -40,7 +39,6 @@ export function ManualOrganizePanel({ organizeDestPath, organizeMediaType, organizeTransferMode, - manualMoveKeepsSeeding, scanAfter, scrapeAfter, organizeReady, @@ -119,19 +117,13 @@ export function ManualOrganizePanel({ 整理方式 - {manualMoveKeepsSeeding && ( -
- “保种”已开启,选择“移动”时后端会改用硬链接以保留下载源。要执行真正移动,请先在上方自动整理设置里关闭“保种”并保存。 -
- )} -