From b48d964c2c053573440b287279db93433fd5d7d7 Mon Sep 17 00:00:00 2001 From: Qing Date: Tue, 21 Mar 2023 21:12:27 +0800 Subject: [PATCH] FileManager add layout switch button;store searchText --- .../components/FileManager/FileManager.tsx | 44 ++++++++++++++++--- .../app/src/components/shared/Modal.tsx | 2 +- lama_cleaner/app/src/store/Atoms.tsx | 11 +++++ 3 files changed, 51 insertions(+), 6 deletions(-) diff --git a/lama_cleaner/app/src/components/FileManager/FileManager.tsx b/lama_cleaner/app/src/components/FileManager/FileManager.tsx index 2a848e9..6c73789 100644 --- a/lama_cleaner/app/src/components/FileManager/FileManager.tsx +++ b/lama_cleaner/app/src/components/FileManager/FileManager.tsx @@ -11,7 +11,11 @@ import * as Tabs from '@radix-ui/react-tabs' import { useRecoilState, useSetRecoilState } from 'recoil' import PhotoAlbum from 'react-photo-album' import { BarsArrowDownIcon, BarsArrowUpIcon } from '@heroicons/react/24/outline' -import { MagnifyingGlassIcon } from '@radix-ui/react-icons' +import { + MagnifyingGlassIcon, + ViewHorizontalIcon, + ViewGridIcon, +} from '@radix-ui/react-icons' import { useDebounce } from 'react-use' import { Id, Index, IndexSearchResult } from 'flexsearch' import * as ScrollArea from '@radix-ui/react-scroll-area' @@ -19,6 +23,7 @@ import Modal from '../shared/Modal' import Flex from '../shared/Layout' import { fileManagerLayout, + fileManagerSearchText, fileManagerSortBy, fileManagerSortOrder, SortBy, @@ -74,10 +79,11 @@ export default function FileManager(props: Props) { const [sortBy, setSortBy] = useRecoilState(fileManagerSortBy) const [sortOrder, setSortOrder] = useRecoilState(fileManagerSortOrder) const [layout, setLayout] = useRecoilState(fileManagerLayout) - + const [debouncedSearchText, setDebouncedSearchText] = useRecoilState( + fileManagerSearchText + ) const ref = useRef(null) - const [searchText, setSearchText] = useState('') - const [debouncedSearchText, setDebouncedSearchText] = useState('') + const [searchText, setSearchText] = useState(debouncedSearchText) const [tab, setTab] = useState(IMAGE_TAB) const [photos, setPhotos] = useState([]) @@ -163,11 +169,39 @@ export default function FileManager(props: Props) { onPhotoClick(tab, photos[index].name) } + const renderTitle = () => { + return ( + +
{`Images (${photos.length})`}
+ +