diff --git a/src/renderer/features/titlebar/components/app-menu.tsx b/src/renderer/features/titlebar/components/app-menu.tsx index aa00bb095..b37f15196 100644 --- a/src/renderer/features/titlebar/components/app-menu.tsx +++ b/src/renderer/features/titlebar/components/app-menu.tsx @@ -21,7 +21,7 @@ import { Settings } from '@/renderer/features/settings'; import { usePermissions } from '@/renderer/features/shared'; import { UserList } from '@/renderer/features/users'; import { EditUserForm } from '@/renderer/features/users/components/edit-user-form'; -import { useAuthStore } from '@/renderer/store'; +import { useAppStore, useAuthStore } from '@/renderer/store'; export const AppMenu = () => { const queryClient = useQueryClient(); @@ -30,6 +30,7 @@ export const AppMenu = () => { const currentServer = useAuthStore((state) => state.currentServer); const setCurrentServer = useAuthStore((state) => state.setCurrentServer); const serverCredentials = useAuthStore((state) => state.serverCredentials); + const resetServerDefaults = useAppStore((state) => state.resetServerDefaults); const permissions = usePermissions(); const { data: servers } = useServerList(); const userId = useAuthStore((state) => state.permissions.id); @@ -94,6 +95,7 @@ export const AppMenu = () => { const server = servers?.data.find((s) => s.id === serverId); if (!server) return; setCurrentServer(server); + resetServerDefaults(); queryClient.invalidateQueries(queryKeys.server.root(serverId)); }; diff --git a/src/renderer/store/app.store.ts b/src/renderer/store/app.store.ts index db0f0c82d..72bc48f1f 100644 --- a/src/renderer/store/app.store.ts +++ b/src/renderer/store/app.store.ts @@ -74,6 +74,7 @@ const DEFAULT_ADVANCED_FILTERS = { }; export interface AppSlice extends AppState { + resetServerDefaults: () => void; setAppStore: (data: Partial) => void; setPage: (page: 'albums', options: Partial) => void; setSidebar: (options: Partial) => void; @@ -104,6 +105,19 @@ export const useAppStore = create()( }, isReorderingQueue: false, platform: Platform.WINDOWS, + resetServerDefaults: () => { + set((state) => { + state.albums.list = { + ...state.albums.list, + filter: { + ...state.albums.list.filter, + serverFolderId: [], + }, + gridScrollOffset: 0, + listScrollOffset: 0, + }; + }); + }, setAppStore: (data) => { set({ ...get(), ...data }); },