diff --git a/src/views/Chores/MyChores.jsx b/src/views/Chores/MyChores.jsx index 6db1256..d800c93 100644 --- a/src/views/Chores/MyChores.jsx +++ b/src/views/Chores/MyChores.jsx @@ -368,8 +368,6 @@ const MyChores = () => { // Read and apply filters from URL parameters useEffect(() => { - if (!chores.length || !savedFilters.length) return - // Check for filterId (camelCase) or filter_id (snake_case) for advanced filters const rawFilterId = searchParams.get('filterId') || searchParams.get('filter_id') @@ -378,6 +376,14 @@ const MyChores = () => { const oldFilter = searchParams.get('filter') + // If filterId is no longer in URL but filter is still active in state, clear it + if (!filterId && !oldFilter && activeFilterId) { + clearActiveFilter() + return + } + + if (!chores.length || !savedFilters.length) return + // Handle advanced filter parameter if (filterId && !activeFilterId) { const filter = savedFilters.find(f => f.id === filterId) @@ -416,6 +422,7 @@ const MyChores = () => { activeFilterId, savedFilters, applyCustomFilter, + clearActiveFilter, selectedProject, projectFilteredChores, setSearchFilter,