From 6087f92c91bf35f096cb2c0a1833474bef706a63 Mon Sep 17 00:00:00 2001 From: miraikumiko Date: Fri, 18 Apr 2025 11:25:42 +0200 Subject: [PATCH 1/5] feat(frontend): add option Settings->Preferences->Other->When losing connection to the server->Disable --- packages/frontend/src/boot/main-boot.ts | 26 ++++++++++--------- .../src/pages/settings/preferences.vue | 1 + packages/frontend/src/preferences/def.ts | 2 +- packages/frontend/src/store.ts | 2 +- 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/packages/frontend/src/boot/main-boot.ts b/packages/frontend/src/boot/main-boot.ts index fad6ce3825..d76fbeb28a 100644 --- a/packages/frontend/src/boot/main-boot.ts +++ b/packages/frontend/src/boot/main-boot.ts @@ -83,19 +83,21 @@ export async function mainBoot() { let reloadDialogShowing = false; stream.on('_disconnected_', async () => { - if (prefer.s.serverDisconnectedBehavior === 'reload') { - window.location.reload(); - } else if (prefer.s.serverDisconnectedBehavior === 'dialog') { - if (reloadDialogShowing) return; - reloadDialogShowing = true; - const { canceled } = await confirm({ - type: 'warning', - title: i18n.ts.disconnectedFromServer, - text: i18n.ts.reloadConfirm, - }); - reloadDialogShowing = false; - if (!canceled) { + if (prefer.s.serverDisconnectedBehavior !== 'disabled') { + if (prefer.s.serverDisconnectedBehavior === 'reload') { window.location.reload(); + } else if (prefer.s.serverDisconnectedBehavior === 'dialog') { + if (reloadDialogShowing) return; + reloadDialogShowing = true; + const { canceled } = await confirm({ + type: 'warning', + title: i18n.ts.disconnectedFromServer, + text: i18n.ts.reloadConfirm, + }); + reloadDialogShowing = false; + if (!canceled) { + window.location.reload(); + } } } }); diff --git a/packages/frontend/src/pages/settings/preferences.vue b/packages/frontend/src/pages/settings/preferences.vue index f96accf68a..472c227f28 100644 --- a/packages/frontend/src/pages/settings/preferences.vue +++ b/packages/frontend/src/pages/settings/preferences.vue @@ -647,6 +647,7 @@ SPDX-License-Identifier: AGPL-3.0-only + diff --git a/packages/frontend/src/preferences/def.ts b/packages/frontend/src/preferences/def.ts index ac8996058f..1154dc6e6d 100644 --- a/packages/frontend/src/preferences/def.ts +++ b/packages/frontend/src/preferences/def.ts @@ -155,7 +155,7 @@ export const PREF_DEF = { }[], }, serverDisconnectedBehavior: { - default: 'quiet' as 'quiet' | 'reload' | 'dialog', + default: 'quiet' as 'quiet' | 'reload' | 'dialog' | 'disabled', }, nsfw: { default: 'respect' as 'respect' | 'force' | 'ignore', diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts index 456006e7ff..3f5b6357fb 100644 --- a/packages/frontend/src/store.ts +++ b/packages/frontend/src/store.ts @@ -212,7 +212,7 @@ export const store = markRaw(new Pizzax('base', { }, serverDisconnectedBehavior: { where: 'device', - default: 'quiet' as 'quiet' | 'reload' | 'dialog', + default: 'quiet' as 'quiet' | 'reload' | 'dialog' | 'disabled', }, nsfw: { where: 'device', From b6ca4d4e6336044a34be8332309eef28d9f7da02 Mon Sep 17 00:00:00 2001 From: miraikumiko Date: Sun, 20 Apr 2025 03:36:10 +0200 Subject: [PATCH 2/5] feat(frontend): add option Settings->Preferences->Other->When losing connection to the server->Disable --- packages/frontend/src/boot/main-boot.ts | 26 ++++++++++++------------- packages/frontend/src/store.ts | 2 +- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/packages/frontend/src/boot/main-boot.ts b/packages/frontend/src/boot/main-boot.ts index d76fbeb28a..fad6ce3825 100644 --- a/packages/frontend/src/boot/main-boot.ts +++ b/packages/frontend/src/boot/main-boot.ts @@ -83,21 +83,19 @@ export async function mainBoot() { let reloadDialogShowing = false; stream.on('_disconnected_', async () => { - if (prefer.s.serverDisconnectedBehavior !== 'disabled') { - if (prefer.s.serverDisconnectedBehavior === 'reload') { + if (prefer.s.serverDisconnectedBehavior === 'reload') { + window.location.reload(); + } else if (prefer.s.serverDisconnectedBehavior === 'dialog') { + if (reloadDialogShowing) return; + reloadDialogShowing = true; + const { canceled } = await confirm({ + type: 'warning', + title: i18n.ts.disconnectedFromServer, + text: i18n.ts.reloadConfirm, + }); + reloadDialogShowing = false; + if (!canceled) { window.location.reload(); - } else if (prefer.s.serverDisconnectedBehavior === 'dialog') { - if (reloadDialogShowing) return; - reloadDialogShowing = true; - const { canceled } = await confirm({ - type: 'warning', - title: i18n.ts.disconnectedFromServer, - text: i18n.ts.reloadConfirm, - }); - reloadDialogShowing = false; - if (!canceled) { - window.location.reload(); - } } } }); diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts index 3f5b6357fb..b6ee6947b7 100644 --- a/packages/frontend/src/store.ts +++ b/packages/frontend/src/store.ts @@ -212,7 +212,7 @@ export const store = markRaw(new Pizzax('base', { }, serverDisconnectedBehavior: { where: 'device', - default: 'quiet' as 'quiet' | 'reload' | 'dialog' | 'disabled', + default: 'disabled' as 'quiet' | 'reload' | 'dialog' | 'disabled', }, nsfw: { where: 'device', From 33b1b3f139ee9de6356dc0b5d2bb51a15bdac0fd Mon Sep 17 00:00:00 2001 From: miraikumiko Date: Sun, 20 Apr 2025 03:42:16 +0200 Subject: [PATCH 3/5] feat(frontend): add option Settings->Preferences->Other->When losing connection to the server->Disable --- packages/frontend/src/store.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts index b6ee6947b7..9260df9b6d 100644 --- a/packages/frontend/src/store.ts +++ b/packages/frontend/src/store.ts @@ -212,7 +212,7 @@ export const store = markRaw(new Pizzax('base', { }, serverDisconnectedBehavior: { where: 'device', - default: 'disabled' as 'quiet' | 'reload' | 'dialog' | 'disabled', + default: 'disabled' as 'quiet' | 'dialog' | 'disabled', }, nsfw: { where: 'device', From 7ec3c8cc8b6bf86a03702f052432f7900a8d6c9b Mon Sep 17 00:00:00 2001 From: miraikumiko Date: Sun, 20 Apr 2025 03:45:49 +0200 Subject: [PATCH 4/5] feat(frontend): add option Settings->Preferences->Other->When losing connection to the server->Disable --- packages/frontend/src/preferences/def.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/frontend/src/preferences/def.ts b/packages/frontend/src/preferences/def.ts index 1154dc6e6d..8de31db25a 100644 --- a/packages/frontend/src/preferences/def.ts +++ b/packages/frontend/src/preferences/def.ts @@ -155,7 +155,7 @@ export const PREF_DEF = { }[], }, serverDisconnectedBehavior: { - default: 'quiet' as 'quiet' | 'reload' | 'dialog' | 'disabled', + default: 'disabled' as 'quiet' | 'reload' | 'dialog', }, nsfw: { default: 'respect' as 'respect' | 'force' | 'ignore', From a47466817104376c0efdb95a68971c9ac0116924 Mon Sep 17 00:00:00 2001 From: miraikumiko Date: Sun, 20 Apr 2025 03:49:18 +0200 Subject: [PATCH 5/5] feat(frontend): add option Settings->Preferences->Other->When losing connection to the server->Disable --- packages/frontend/src/preferences/def.ts | 2 +- packages/frontend/src/store.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/frontend/src/preferences/def.ts b/packages/frontend/src/preferences/def.ts index 8de31db25a..1154dc6e6d 100644 --- a/packages/frontend/src/preferences/def.ts +++ b/packages/frontend/src/preferences/def.ts @@ -155,7 +155,7 @@ export const PREF_DEF = { }[], }, serverDisconnectedBehavior: { - default: 'disabled' as 'quiet' | 'reload' | 'dialog', + default: 'quiet' as 'quiet' | 'reload' | 'dialog' | 'disabled', }, nsfw: { default: 'respect' as 'respect' | 'force' | 'ignore', diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts index 9260df9b6d..3f5b6357fb 100644 --- a/packages/frontend/src/store.ts +++ b/packages/frontend/src/store.ts @@ -212,7 +212,7 @@ export const store = markRaw(new Pizzax('base', { }, serverDisconnectedBehavior: { where: 'device', - default: 'disabled' as 'quiet' | 'dialog' | 'disabled', + default: 'quiet' as 'quiet' | 'reload' | 'dialog' | 'disabled', }, nsfw: { where: 'device',