summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOskar <oskar@mullvad.net>2025-10-08 14:57:44 +0200
committerOskar <oskar@mullvad.net>2025-10-09 13:21:11 +0200
commitd7b9501d9e5e2c54e5f3552c1016b5c62f454be3 (patch)
tree2ff215496ff1a136c734efebc83fca6574e454d8
parentb1bcdcd96e21e152f56bcd5316fd26197c0b56a1 (diff)
downloadmullvadvpn-d7b9501d9e5e2c54e5f3552c1016b5c62f454be3.tar.xz
mullvadvpn-d7b9501d9e5e2c54e5f3552c1016b5c62f454be3.zip
Prevent navigation reset on mount
-rw-r--r--desktop/packages/mullvad-vpn/src/renderer/components/StateTriggeredNavigation.tsx8
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]);