diff --git a/frontend/src/App.css b/frontend/src/App.css index 609c22cfc..c402b8407 100644 --- a/frontend/src/App.css +++ b/frontend/src/App.css @@ -212,3 +212,10 @@ -ms-user-select: none; /* IE10+/Edge */ user-select: none; /* Standard */ } + +/* Hide native search cancel button */ +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; + appearance: none; + display: none; +} diff --git a/frontend/src/components/Navigation/Navbar/Navbar.tsx b/frontend/src/components/Navigation/Navbar/Navbar.tsx index 53a39f9a0..d351f8017 100644 --- a/frontend/src/components/Navigation/Navbar/Navbar.tsx +++ b/frontend/src/components/Navigation/Navbar/Navbar.tsx @@ -1,6 +1,6 @@ import { Input } from '@/components/ui/input'; import { ThemeSelector } from '@/components/ThemeToggle'; -import { Search, Heart, ArrowRight } from 'lucide-react'; +import { Search, Heart, ArrowRight, X } from 'lucide-react'; import { useDispatch, useSelector } from 'react-redux'; import { selectAvatar, selectName } from '@/features/onboardingSelectors'; import { clearSearch } from '@/features/searchSlice'; @@ -133,30 +133,44 @@ export function Navbar() { /> {isSearchActive && ( )} )} {/* Input */} - setIsExpanded(true)} - onClick={() => setIsExpanded(true)} - value={searchQuery} - onChange={(e) => setSearchQuery(e.target.value)} - onKeyDown={(e) => { - if (e.key === 'Enter') handleSearchSubmit(); - }} - /> +
+ setIsExpanded(true)} + onClick={() => setIsExpanded(true)} + value={searchQuery} + onChange={(e) => setSearchQuery(e.target.value)} + onKeyDown={(e) => { + if (e.key === 'Enter') handleSearchSubmit(); + }} + /> + {searchQuery && ( + + )} +
{/* FaceSearch Dialog */}