From fc244067e059bf88c69ee241e1bfc218517c917b Mon Sep 17 00:00:00 2001 From: syuilo <4439005+syuilo@users.noreply.github.com> Date: Sat, 2 Aug 2025 12:10:51 +0900 Subject: [PATCH] =?UTF-8?q?enhnace(frontend):=20=E3=83=AA=E3=83=AD?= =?UTF-8?q?=E3=83=BC=E3=83=89=E3=81=AE=E3=82=B5=E3=82=B8=E3=82=A7=E3=82=B9?= =?UTF-8?q?=E3=83=88=E3=82=92=E3=83=80=E3=82=A4=E3=82=A2=E3=83=AD=E3=82=B0?= =?UTF-8?q?=E3=81=A7=E3=81=AF=E3=81=AA=E3=81=8F=E3=83=90=E3=83=8A=E3=83=BC?= =?UTF-8?q?=E8=A1=A8=E7=A4=BA=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/frontend/src/pages/settings/deck.vue | 6 +- .../src/pages/settings/mute-block.vue | 6 +- .../frontend/src/pages/settings/navbar.vue | 1 - .../frontend/src/pages/settings/other.vue | 6 +- .../src/pages/settings/preferences.vue | 6 +- .../src/ui/_common_/PreferenceRestore.vue | 4 -- .../src/ui/_common_/ReloadSuggest.vue | 71 +++++++++++++++++++ packages/frontend/src/ui/deck.vue | 8 ++- packages/frontend/src/ui/universal.vue | 3 + packages/frontend/src/utility/reload-ask.ts | 40 ----------- .../frontend/src/utility/reload-suggest.ts | 12 ++++ 11 files changed, 105 insertions(+), 58 deletions(-) create mode 100644 packages/frontend/src/ui/_common_/ReloadSuggest.vue delete mode 100644 packages/frontend/src/utility/reload-ask.ts create mode 100644 packages/frontend/src/utility/reload-suggest.ts diff --git a/packages/frontend/src/pages/settings/deck.vue b/packages/frontend/src/pages/settings/deck.vue index ae882d1ee2..7a19b0495b 100644 --- a/packages/frontend/src/pages/settings/deck.vue +++ b/packages/frontend/src/pages/settings/deck.vue @@ -97,8 +97,8 @@ import { i18n } from '@/i18n.js'; import { definePage } from '@/page.js'; import { prefer } from '@/preferences.js'; import MkPreferenceContainer from '@/components/MkPreferenceContainer.vue'; -import { reloadAsk } from '@/utility/reload-ask.js'; import { selectFile } from '@/utility/drive.js'; +import { suggestReload } from '@/utility/reload-suggest.js'; const navWindow = prefer.model('deck.navWindow'); const useSimpleUiForNonRootPages = prefer.model('deck.useSimpleUiForNonRootPages'); @@ -109,8 +109,8 @@ const menuPosition = prefer.model('deck.menuPosition'); const navbarPosition = prefer.model('deck.navbarPosition'); const wallpaper = prefer.model('deck.wallpaper'); -watch(wallpaper, async () => { - await reloadAsk({ reason: i18n.ts.reloadToApplySetting, unison: true }); +watch(wallpaper, () => { + suggestReload(); }); function setWallpaper(ev: MouseEvent) { diff --git a/packages/frontend/src/pages/settings/mute-block.vue b/packages/frontend/src/pages/settings/mute-block.vue index 6ca313da81..57aa30226b 100644 --- a/packages/frontend/src/pages/settings/mute-block.vue +++ b/packages/frontend/src/pages/settings/mute-block.vue @@ -189,10 +189,10 @@ import { ensureSignin } from '@/i.js'; import MkInfo from '@/components/MkInfo.vue'; import MkFolder from '@/components/MkFolder.vue'; import MkSwitch from '@/components/MkSwitch.vue'; -import { reloadAsk } from '@/utility/reload-ask.js'; import { prefer } from '@/preferences.js'; import MkFeatureBanner from '@/components/MkFeatureBanner.vue'; import { Paginator } from '@/utility/paginator.js'; +import { suggestReload } from '@/utility/reload-suggest.js'; const $i = ensureSignin(); @@ -216,8 +216,8 @@ const showSoftWordMutedWord = prefer.model('showSoftWordMutedWord'); watch([ showSoftWordMutedWord, -], async () => { - await reloadAsk({ reason: i18n.ts.reloadToApplySetting, unison: true }); +], () => { + suggestReload(); }); async function unrenoteMute(user, ev) { diff --git a/packages/frontend/src/pages/settings/navbar.vue b/packages/frontend/src/pages/settings/navbar.vue index e57195c8a2..09c1199d0c 100644 --- a/packages/frontend/src/pages/settings/navbar.vue +++ b/packages/frontend/src/pages/settings/navbar.vue @@ -64,7 +64,6 @@ import MkPreferenceContainer from '@/components/MkPreferenceContainer.vue'; import * as os from '@/os.js'; import { navbarItemDef } from '@/navbar.js'; import { store } from '@/store.js'; -import { reloadAsk } from '@/utility/reload-ask.js'; import { i18n } from '@/i18n.js'; import { definePage } from '@/page.js'; import { prefer } from '@/preferences.js'; diff --git a/packages/frontend/src/pages/settings/other.vue b/packages/frontend/src/pages/settings/other.vue index ac432e9f32..e0fb9b86bb 100644 --- a/packages/frontend/src/pages/settings/other.vue +++ b/packages/frontend/src/pages/settings/other.vue @@ -155,13 +155,13 @@ import { misskeyApi } from '@/utility/misskey-api.js'; import { ensureSignin } from '@/i.js'; import { i18n } from '@/i18n.js'; import { definePage } from '@/page.js'; -import { reloadAsk } from '@/utility/reload-ask.js'; import FormSection from '@/components/form/section.vue'; import { prefer } from '@/preferences.js'; import MkRolePreview from '@/components/MkRolePreview.vue'; import { signout } from '@/signout.js'; import { migrateOldSettings } from '@/pref-migrate.js'; import { hideAllTips as _hideAllTips, resetAllTips as _resetAllTips } from '@/tips.js'; +import { suggestReload } from '@/utility/reload-suggest.js'; const $i = ensureSignin(); @@ -172,8 +172,8 @@ const devMode = prefer.model('devMode'); const stackingRouterView = prefer.model('experimental.stackingRouterView'); const enableFolderPageView = prefer.model('experimental.enableFolderPageView'); -watch(skipNoteRender, async () => { - await reloadAsk({ reason: i18n.ts.reloadToApplySetting, unison: true }); +watch(skipNoteRender, () => { + suggestReload(); }); async function deleteAccount() { diff --git a/packages/frontend/src/pages/settings/preferences.vue b/packages/frontend/src/pages/settings/preferences.vue index 0e400778aa..04f9b0512b 100644 --- a/packages/frontend/src/pages/settings/preferences.vue +++ b/packages/frontend/src/pages/settings/preferences.vue @@ -795,7 +795,6 @@ import MkInfo from '@/components/MkInfo.vue'; import { store } from '@/store.js'; import * as os from '@/os.js'; import { misskeyApi } from '@/utility/misskey-api.js'; -import { reloadAsk } from '@/utility/reload-ask.js'; import { i18n } from '@/i18n.js'; import { definePage } from '@/page.js'; import { miLocalStorage } from '@/local-storage.js'; @@ -807,6 +806,7 @@ import { claimAchievement } from '@/utility/achievements.js'; import { instance } from '@/instance.js'; import { ensureSignin } from '@/i.js'; import { genId } from '@/utility/id.js'; +import { suggestReload } from '@/utility/reload-suggest.js'; const $i = ensureSignin(); @@ -928,8 +928,8 @@ watch([ enablePullToRefresh, reduceAnimation, showAvailableReactionsFirstInNote, -], async () => { - await reloadAsk({ reason: i18n.ts.reloadToApplySetting, unison: true }); +], () => { + suggestReload(); }); const emojiIndexLangs = ['en-US', 'ja-JP', 'ja-JP_hira'] as const; diff --git a/packages/frontend/src/ui/_common_/PreferenceRestore.vue b/packages/frontend/src/ui/_common_/PreferenceRestore.vue index 5fd9f5e44b..b9d54cddc6 100644 --- a/packages/frontend/src/ui/_common_/PreferenceRestore.vue +++ b/packages/frontend/src/ui/_common_/PreferenceRestore.vue @@ -48,10 +48,6 @@ function skip() { .title { padding: 0 10px; font-weight: bold; - - &:empty { - display: none; - } } .body { diff --git a/packages/frontend/src/ui/_common_/ReloadSuggest.vue b/packages/frontend/src/ui/_common_/ReloadSuggest.vue new file mode 100644 index 0000000000..8fcfe0b12f --- /dev/null +++ b/packages/frontend/src/ui/_common_/ReloadSuggest.vue @@ -0,0 +1,71 @@ + + + + + + + diff --git a/packages/frontend/src/ui/deck.vue b/packages/frontend/src/ui/deck.vue index d2b163a38f..7cd54f01ef 100644 --- a/packages/frontend/src/ui/deck.vue +++ b/packages/frontend/src/ui/deck.vue @@ -13,6 +13,8 @@ SPDX-License-Identifier: AGPL-3.0-only
+ +
@@ -81,12 +83,14 @@ SPDX-License-Identifier: AGPL-3.0-only