diff options
| author | Oskar <oskar@mullvad.net> | 2025-10-08 14:57:44 +0200 |
|---|---|---|
| committer | Oskar <oskar@mullvad.net> | 2025-10-09 13:21:11 +0200 |
| commit | d7b9501d9e5e2c54e5f3552c1016b5c62f454be3 (patch) | |
| tree | 2ff215496ff1a136c734efebc83fca6574e454d8 | |
| parent | b1bcdcd96e21e152f56bcd5316fd26197c0b56a1 (diff) | |
| download | mullvadvpn-d7b9501d9e5e2c54e5f3552c1016b5c62f454be3.tar.xz mullvadvpn-d7b9501d9e5e2c54e5f3552c1016b5c62f454be3.zip | |
Prevent navigation reset on mount
| -rw-r--r-- | desktop/packages/mullvad-vpn/src/renderer/components/StateTriggeredNavigation.tsx | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/desktop/packages/mullvad-vpn/src/renderer/components/StateTriggeredNavigation.tsx b/desktop/packages/mullvad-vpn/src/renderer/components/StateTriggeredNavigation.tsx index 3a275e2f61..3ecc36c60b 100644 --- a/desktop/packages/mullvad-vpn/src/renderer/components/StateTriggeredNavigation.tsx +++ b/desktop/packages/mullvad-vpn/src/renderer/components/StateTriggeredNavigation.tsx @@ -1,4 +1,4 @@ -import { useEffect, useMemo } from 'react'; +import { useEffect, useMemo, useRef } from 'react'; import { RoutePath } from '../../shared/routes'; import { useScheduler } from '../../shared/scheduler'; @@ -15,6 +15,7 @@ export default function StateTriggeredNavigation() { const delayScheduler = useScheduler(); + const prevPath = useRef<RoutePath>(getNavigationBase(connectedToDaemon, loginState)); const nextPath = useMemo( () => getNavigationBase(connectedToDaemon, loginState), [connectedToDaemon, loginState], @@ -42,7 +43,10 @@ export default function StateTriggeredNavigation() { }); useEffect(() => { - updatePath(nextPath); + if (nextPath !== prevPath.current) { + prevPath.current = nextPath; + updatePath(nextPath); + } // eslint-disable-next-line react-compiler/react-compiler // eslint-disable-next-line react-hooks/exhaustive-deps }, [nextPath]); |
