From 3daceb1859c20de1bf4d22209ab7092dfb3c1023 Mon Sep 17 00:00:00 2001 From: ngfchl Date: Sun, 19 Jul 2026 12:18:28 +0800 Subject: [PATCH] limit media commands to management view --- lib/pages/media_library_page.dart | 6 ++++-- lib/pages/workspace_tools_page.dart | 5 ++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/pages/media_library_page.dart b/lib/pages/media_library_page.dart index df48085..3f52f27 100644 --- a/lib/pages/media_library_page.dart +++ b/lib/pages/media_library_page.dart @@ -65,11 +65,13 @@ Widget _tmdbDirectFallback({ class MediaLibraryPage extends ConsumerStatefulWidget { final bool showLibrarySidebar; + final bool showManagementToolbar; final String? searchTitle; const MediaLibraryPage({ super.key, this.showLibrarySidebar = true, + this.showManagementToolbar = false, this.searchTitle, }); @@ -475,7 +477,7 @@ class _MediaLibraryPageState extends ConsumerState { leading: const Icon(Icons.manage_search_rounded, size: 16), child: const Text('手动匹配'), ), - ] else ...[ + ] else if (widget.showManagementToolbar) ...[ ShadButton.outline( size: ShadButtonSize.sm, onPressed: () => _showCreateLibraryDialog(context, ref), @@ -557,7 +559,7 @@ class _MediaLibraryPageState extends ConsumerState { leading: const Icon(Icons.manage_search_rounded, size: 16), child: const Text('手动匹配'), ), - ] else ...[ + ] else if (widget.showManagementToolbar) ...[ ShadButton.outline( onPressed: () => _showCreateLibraryDialog(context, ref), leading: const Icon(Icons.add_rounded, size: 16), diff --git a/lib/pages/workspace_tools_page.dart b/lib/pages/workspace_tools_page.dart index c57da38..e52b3ad 100644 --- a/lib/pages/workspace_tools_page.dart +++ b/lib/pages/workspace_tools_page.dart @@ -67,7 +67,10 @@ class WorkspaceToolsPage extends StatelessWidget { WorkspaceTool.scan => const _FileScanTool(), WorkspaceTool.rename => const _BatchRenameTool(), WorkspaceTool.fastTransfer => const _FastTransferTool(), - WorkspaceTool.tmdb => const MediaLibraryPage(showLibrarySidebar: true), + WorkspaceTool.tmdb => const MediaLibraryPage( + showLibrarySidebar: true, + showManagementToolbar: true, + ), WorkspaceTool.categories => const _CategoryManagementTool(), }; return Column(