Browse Source

Call onboarding dialog only once

- Removed earlier call to onboarding dialog, choosing to call it only at the end to make way for any error notifications
pull/144/head
Jose Olarte III 1 day ago
parent
commit
3e6e959b19
  1. 22
      src/views/HomeView.vue

22
src/views/HomeView.vue

@ -478,6 +478,7 @@ export default class HomeView extends Vue {
selectedImageData: Blob | null = null;
isImageViewerOpen = false;
imageCache: Map<string, Blob | null> = new Map();
needsOnboarding = false;
/**
* Initializes the component on mount
@ -603,12 +604,8 @@ export default class HomeView extends Vue {
this.showShortcutBvc = !!settings.showShortcutBvc;
this.isAnyFeedFilterOn = checkIsAnyFeedFilterOn(settings);
// Check onboarding status
if (!settings.finishedOnboarding) {
(this.$refs.onboardingDialog as OnboardingDialog).open(
OnboardPage.Home,
);
}
// Check onboarding status - will be handled in checkOnboarding()
this.needsOnboarding = !settings.finishedOnboarding;
// Check registration status if needed
if (!this.isRegistered && this.activeDid) {
@ -841,11 +838,16 @@ export default class HomeView extends Vue {
* Called by mounted()
*/
private async checkOnboarding() {
let settings = await databaseUtil.retrieveSettingsForActiveAccount();
if (USE_DEXIE_DB) {
settings = await retrieveSettingsForActiveAccount();
// Only check if we haven't already determined onboarding is needed
if (!this.needsOnboarding) {
let settings = await databaseUtil.retrieveSettingsForActiveAccount();
if (USE_DEXIE_DB) {
settings = await retrieveSettingsForActiveAccount();
}
this.needsOnboarding = !settings.finishedOnboarding;
}
if (!settings.finishedOnboarding) {
if (this.needsOnboarding) {
(this.$refs.onboardingDialog as OnboardingDialog).open(OnboardPage.Home);
}
}

Loading…
Cancel
Save