diff --git a/nym-connect/desktop/src/context/main.tsx b/nym-connect/desktop/src/context/main.tsx index 2f553b5153..9e8f5f21af 100644 --- a/nym-connect/desktop/src/context/main.tsx +++ b/nym-connect/desktop/src/context/main.tsx @@ -36,8 +36,8 @@ export type TClientContext = { setConnectionStats: (connectionStats: ConnectionStatsItem[] | undefined) => void; setConnectedSince: (connectedSince: DateTime | undefined) => void; setShowInfoModal: (show: boolean) => void; - setServiceProvider: () => void; - setGateway: () => void; + setServiceProvider: () => Promise; + setGateway: () => Promise; startConnecting: () => Promise; startDisconnecting: () => Promise; setUserDefinedGateway: React.Dispatch>; @@ -239,6 +239,13 @@ export const ClientContextProvider: FCWithChildren = ({ children }) => { const setPrivacyLevel = async (value: PrivacyLevel) => { await invoke('set_privacy_level', { privacyLevel: value }); + // refresh service providers list + const fetchedServices = await invoke('get_services'); + setServiceProviders(fetchedServices); + // reset any previously selected SP + await invoke('set_selected_sp', { + serviceProvider: { is_active: false }, + }); // refresh user data await getUserData(); }; diff --git a/nym-connect/desktop/src/context/mocks/main.tsx b/nym-connect/desktop/src/context/mocks/main.tsx index 02de84aa69..2da2661939 100644 --- a/nym-connect/desktop/src/context/mocks/main.tsx +++ b/nym-connect/desktop/src/context/mocks/main.tsx @@ -21,8 +21,8 @@ const mockValues: TClientContext = { setConnectionStatus: () => {}, startConnecting: async () => {}, startDisconnecting: async () => {}, - setServiceProvider: () => {}, - setGateway: () => {}, + setServiceProvider: async () => {}, + setGateway: async () => {}, setUserDefinedGateway: () => {}, setUserDefinedSPAddress: () => {}, setMonitoring: async () => {},