Skip to content

Commit 485bbcc

Browse files
committed
fix: preserve filters on language toggle and allow language chip deselection
- LangToggle now preserves URL query params (filters) when switching between PT/EN, preventing filter state loss - Language chips now toggle off when re-clicked (consistent with label chip behavior), instead of requiring the "All" button
1 parent 36c7b0d commit 485bbcc

2 files changed

Lines changed: 3 additions & 2 deletions

File tree

src/components/lang-toggle.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ export function LangToggle() {
1111
const nextLocale = locale === "pt" ? "en" : "pt";
1212

1313
function handleToggle() {
14-
router.replace(pathname, { locale: nextLocale });
14+
const search = typeof window !== "undefined" ? window.location.search : "";
15+
router.replace(pathname + search, { locale: nextLocale });
1516
}
1617

1718
return (

src/features/search/components/language-chips.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export function LanguageChips({ active, onChange }: LanguageChipsProps) {
2222
<Chip
2323
key={lang.value}
2424
active={active === lang.value}
25-
onClick={() => onChange(lang.value)}
25+
onClick={() => onChange(active === lang.value ? "" : lang.value)}
2626
>
2727
{lang.value === "" ? t("allLangs") : lang.label}
2828
</Chip>

0 commit comments

Comments
 (0)