diff --git a/mobile/app/index.tsx b/mobile/app/index.tsx index 4746aae..2279aec 100644 --- a/mobile/app/index.tsx +++ b/mobile/app/index.tsx @@ -101,7 +101,7 @@ export function HomeScreen() { const insets = useSafeAreaInsets(); const [page, setPage] = useState(1); const { data, isLoading, error, isFetching, refetch } = useFiles(null, page, PAGE_SIZE); - const { hasPermission, requestPermission, pickDirectory, pickAndScanRecursive, folders, refreshFolders, discovered } = useLocalFiles(); + const { hasPermission, requestPermission, pickAndScanRecursive, folders, refreshFolders, discovered } = useLocalFiles(); const freeLocalSpace = useFreeLocalSpace(); const queryClient = useQueryClient(); const [searchQuery, setSearchQuery] = useState(''); @@ -388,11 +388,6 @@ export function HomeScreen() { setRemoveFolderConfirmId(null); }, [removeFolderConfirmId, refreshFolders]); - const handleAddFolder = useCallback(async () => { - setSettingsModalVisible(false); - await pickDirectory(); - }, [pickDirectory]); - const handleAddFolderRecursive = useCallback(async () => { setSettingsModalVisible(false); await pickAndScanRecursive(); @@ -673,7 +668,6 @@ export function HomeScreen() { folders={folders} onToggleVisibility={handleToggleFolderVisibility} onRemoveFolder={handleRemoveFolder} - onAddFolder={handleAddFolder} onAddFolderRecursive={handleAddFolderRecursive} onUpdateSyncMode={handleUpdateSyncMode} onUpdateSyncCellular={handleUpdateSyncCellular} diff --git a/mobile/components/SettingsModal.tsx b/mobile/components/SettingsModal.tsx index f5b1fd4..cf9011b 100644 --- a/mobile/components/SettingsModal.tsx +++ b/mobile/components/SettingsModal.tsx @@ -19,8 +19,7 @@ interface SettingsModalProps { folders: StoredFolder[]; onToggleVisibility: (folderId: string) => void; onRemoveFolder: (folderId: string) => void; - onAddFolder: () => void; - onAddFolderRecursive?: () => void; + onAddFolderRecursive: () => void; onUpdateSyncMode: (folderId: string, mode: SyncMode) => void; onUpdateSyncCellular: (folderId: string, enabled: boolean) => void; globalSyncMode: SyncGlobalMode; @@ -47,7 +46,6 @@ export function SettingsModal({ folders, onToggleVisibility, onRemoveFolder, - onAddFolder, onAddFolderRecursive, onUpdateSyncMode, onUpdateSyncCellular, @@ -106,7 +104,6 @@ export function SettingsModal({ onBack={() => setView('menu')} onToggleVisibility={onToggleVisibility} onRemoveFolder={handleRemoveFolder} - onAddFolder={onAddFolder} onAddFolderRecursive={onAddFolderRecursive} /> )} @@ -190,15 +187,13 @@ function FoldersView({ onBack, onToggleVisibility, onRemoveFolder, - onAddFolder, onAddFolderRecursive, }: { folders: StoredFolder[]; onBack: () => void; onToggleVisibility: (id: string) => void; onRemoveFolder: (folder: StoredFolder) => void; - onAddFolder: () => void; - onAddFolderRecursive?: () => void; + onAddFolderRecursive: () => void; }) { return ( @@ -241,17 +236,10 @@ function FoldersView({ }) )} - + Ajouter un dossier - - {onAddFolderRecursive && ( - - - Ajouter (scan récursif) - - )} ); } @@ -538,16 +526,6 @@ const styles = StyleSheet.create({ marginTop: 16, gap: 8, }, - scanRootBtn: { - flexDirection: 'row', - alignItems: 'center', - justifyContent: 'center', - backgroundColor: '#8E24AA', - borderRadius: 10, - paddingVertical: 12, - marginTop: 10, - gap: 8, - }, addBtnText: { fontSize: 15, color: '#fff', diff --git a/mobile/hooks/useDeviceFiles.ts b/mobile/hooks/useDeviceFiles.ts index 9929d1f..7b7dffb 100644 --- a/mobile/hooks/useDeviceFiles.ts +++ b/mobile/hooks/useDeviceFiles.ts @@ -251,31 +251,6 @@ export function useDeviceFiles() { }); }, []); - const pickDirectory = useCallback(async () => { - try { - const result = await FileSystem.StorageAccessFramework.requestDirectoryPermissionsAsync(); - if (!result.granted) return false; - const dirUri = result.directoryUri; - const parts = dirUri.split('/'); - const dirName = decodeURIComponent(parts[parts.length - 1] ?? 'Dossier'); - safDirectory.addFolder(dirUri, dirName); - setFolders(safDirectory.getAll()); - - const folderFiles = await scanSafFolder({ id: 'new', uri: dirUri, name: dirName, visible: true, syncMode: 'none', syncCellular: false, source: 'saf' }); - setFiles((prev) => { - const existing = new Set(prev.map((f) => f.id)); - const merged = [...prev]; - for (const f of folderFiles) { - if (!existing.has(f.id)) merged.push(f); - } - return merged; - }); - return true; - } catch (err) { - return false; - } - }, []); - const pickAndScanRecursive = useCallback(async (): Promise<{ addedFolders: number }> => { try { const result = await FileSystem.StorageAccessFramework.requestDirectoryPermissionsAsync(); @@ -371,7 +346,7 @@ export function useDeviceFiles() { return { files, isLoading, hasPermission, requestPermission, rescan, - pickDirectory, pickAndScanRecursive, + pickAndScanRecursive, folders, refreshFolders, discovered, discoverMediaAlbums, }; diff --git a/mobile/hooks/useLocalFiles.ts b/mobile/hooks/useLocalFiles.ts index 1954d28..151a78c 100644 --- a/mobile/hooks/useLocalFiles.ts +++ b/mobile/hooks/useLocalFiles.ts @@ -4,7 +4,7 @@ import { fileStore } from '../services/fileStore'; import { UnifiedFileItem } from '../types'; export function useLocalFiles() { - const { files: deviceFiles, isLoading: deviceLoading, hasPermission, requestPermission, rescan, pickDirectory, pickAndScanRecursive, folders, refreshFolders, discovered, discoverMediaAlbums } = useDeviceFiles(); + const { files: deviceFiles, isLoading: deviceLoading, hasPermission, requestPermission, rescan, pickAndScanRecursive, folders, refreshFolders, discovered, discoverMediaAlbums } = useDeviceFiles(); const lastDeviceCount = useRef(0); useEffect(() => { @@ -75,7 +75,6 @@ export function useLocalFiles() { hasPermission, requestPermission, rescan, - pickDirectory, pickAndScanRecursive, folders, refreshFolders,