diff --git a/.changeset/four-dolls-report.md b/.changeset/four-dolls-report.md new file mode 100644 index 00000000000..96963bafe06 --- /dev/null +++ b/.changeset/four-dolls-report.md @@ -0,0 +1,5 @@ +--- +"ledger-live-desktop": minor +--- + +Fix LIVE-12571 where some users can't unlock LLD when they have set up a password diff --git a/apps/ledger-live-desktop/src/renderer/hooks/useRecoverRestoreOnboarding.ts b/apps/ledger-live-desktop/src/renderer/hooks/useRecoverRestoreOnboarding.ts index 8e2268194dc..d099b857024 100644 --- a/apps/ledger-live-desktop/src/renderer/hooks/useRecoverRestoreOnboarding.ts +++ b/apps/ledger-live-desktop/src/renderer/hooks/useRecoverRestoreOnboarding.ts @@ -5,6 +5,7 @@ import { useFeature } from "@ledgerhq/live-common/featureFlags/index"; import { saveSettings } from "~/renderer/actions/settings"; import { useDispatch, useSelector } from "react-redux"; import { useLocation } from "react-router-dom"; +import { isLocked as isLockedSelector } from "~/renderer/reducers/application"; import { hasCompletedOnboardingSelector } from "~/renderer/reducers/settings"; import { useCustomPath } from "@ledgerhq/live-common/hooks/recoverFeatureFlag"; @@ -13,6 +14,7 @@ const ONBOARDED_VIA_RECOVER_RESTORE_USER_PREFIX = "ONBOARDED_VIA_RECOVER_RESTORE export const useRecoverRestoreOnboarding = (seedPathStatus?: string) => { const { pathname } = useLocation(); const dispatch = useDispatch(); + const isLocked = useSelector(isLockedSelector); const recoverServices = useFeature("protectServicesDesktop"); const recoverStoreId = recoverServices?.params?.protectId ?? ""; const hasCompletedOnboarding = useSelector(hasCompletedOnboardingSelector); @@ -29,13 +31,14 @@ export const useRecoverRestoreOnboarding = (seedPathStatus?: string) => { const hasCompletedOnboardingViaRestore = status === "true"; setOnboardedViaRecoverRestore(hasCompletedOnboardingViaRestore); - - dispatch( - saveSettings({ - hasCompletedOnboarding: onboardedViaRecoverRestore, - }), - ); - }, [dispatch, onboardedViaRecoverRestore, recoverStoreId]); + if (!isLocked) { + dispatch( + saveSettings({ + hasCompletedOnboarding: onboardedViaRecoverRestore, + }), + ); + } + }, [dispatch, isLocked, onboardedViaRecoverRestore, recoverStoreId]); useEffect(() => { const userIsOnboardingOrSettingUp =