From 7ad42e425569016df809b7cf9bf7a8fa84bc3fe3 Mon Sep 17 00:00:00 2001 From: absidue <48293849+absidue@users.noreply.github.com> Date: Tue, 29 Oct 2024 01:37:55 +0100 Subject: [PATCH] Fix settings password handling (#5988) --- src/renderer/views/Settings/Settings.js | 30 +++++++++++++++++------- src/renderer/views/Settings/Settings.vue | 2 +- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/src/renderer/views/Settings/Settings.js b/src/renderer/views/Settings/Settings.js index d9568df05bb93..f6aa58bbf447a 100644 --- a/src/renderer/views/Settings/Settings.js +++ b/src/renderer/views/Settings/Settings.js @@ -170,14 +170,8 @@ export default defineComponent({ } }, mounted: function () { - this.handleResize() - window.addEventListener('resize', this.handleResize) - document.addEventListener('scroll', this.markScrolledToSectionAsActive) - - // mark first section as active before any scrolling has taken place - if (this.settingsSectionComponents.length > 0) { - const firstSection = document.getElementById(this.settingsSectionComponents[0].type) - firstSection.classList.add(ACTIVE_CLASS_NAME) + if (this.unlocked) { + this.handleMounted() } }, beforeDestroy: function () { @@ -185,6 +179,26 @@ export default defineComponent({ window.removeEventListener('resize', this.handleResize) }, methods: { + handleMounted: function () { + this.handleResize() + window.addEventListener('resize', this.handleResize) + document.addEventListener('scroll', this.markScrolledToSectionAsActive) + + // mark first section as active before any scrolling has taken place + if (this.settingsSectionComponents.length > 0) { + const firstSection = document.getElementById(this.settingsSectionComponents[0].type) + firstSection.classList.add(ACTIVE_CLASS_NAME) + } + }, + + handleUnlock: function () { + this.unlocked = true + + nextTick(() => { + this.handleMounted() + }) + }, + navigateToSection: function(sectionType) { if (this.isInDesktopView) { nextTick(() => { diff --git a/src/renderer/views/Settings/Settings.vue b/src/renderer/views/Settings/Settings.vue index dee56f5ef5165..8829059645c00 100644 --- a/src/renderer/views/Settings/Settings.vue +++ b/src/renderer/views/Settings/Settings.vue @@ -47,7 +47,7 @@