fix: declining TOS no longer skips onboarding

This commit is contained in:
LynithDev 2026-09-05 23:42:57 +02:00
parent 37001e7a7c
commit 3f66e14db3
3 changed files with 7 additions and 6 deletions

View file

@ -318,7 +318,6 @@ impl Actions {
settings.declined_tos = true;
settings.accepted_tos_version = 0;
settings.accepted_privacy_version = 0;
settings.seen_onboarding = true;
}) {
self.persist(updated);
}

View file

@ -102,12 +102,13 @@ impl Component for OnboardingTerms {
.into_element();
let accept_dispatch = dispatch.clone();
let accept_next = next.clone();
let nav = terms_nav(
back,
!loading,
move || {
accept_dispatch.accept_tos(terms_version, privacy_version);
let _ = RouterContext::get().replace(next.clone());
let _ = RouterContext::get().replace(accept_next.clone());
},
move || {
let mut confirming = confirming_decline;
@ -116,9 +117,10 @@ impl Component for OnboardingTerms {
);
let modal = confirming_decline.read().then(|| {
let next = next.clone();
decline_modal(confirming_decline, move || {
dispatch.decline_tos();
let _ = RouterContext::get().replace(Route::Home {});
let _ = RouterContext::get().replace(next.clone());
})
});

View file

@ -105,10 +105,10 @@ impl Component for Startup {
let stale = settings.settings.accepted_tos_version < required_terms
|| settings.settings.accepted_privacy_version < required_privacy;
let destination = if settings.settings.declined_tos {
Route::Home {}
} else if !settings.settings.seen_onboarding {
let destination = if !settings.settings.seen_onboarding {
Route::OnboardingWelcome {}
} else if settings.settings.declined_tos {
Route::Home {}
} else if stale {
Route::OnboardingTerms {}
} else {