From b79b82ecf00b9985e565ddeb49a5141b5a5de716 Mon Sep 17 00:00:00 2001 From: Harold Zhang Date: Mon, 13 Jul 2026 21:31:06 +0800 Subject: [PATCH] feat: fixed the preference will hide all other button theme/timezone/lanague etc (#8147) --- .../layouts/src/basic/header/header.vue | 39 ++++++++++--------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/packages/effects/layouts/src/basic/header/header.vue b/packages/effects/layouts/src/basic/header/header.vue index 1bc8d7f73..4da445511 100644 --- a/packages/effects/layouts/src/basic/header/header.vue +++ b/packages/effects/layouts/src/basic/header/header.vue @@ -60,25 +60,26 @@ const rightSlots = computed(() => { index: REFERENCE_VALUE + 10, name: 'preferences', }); - // 将偏好设置中的子功能分组到同一个按钮位置控制逻辑下 - if (preferences.widget.themeToggle) { - list.push({ - index: REFERENCE_VALUE + 20, - name: 'theme-toggle', - }); - } - if (preferences.widget.languageToggle) { - list.push({ - index: REFERENCE_VALUE + 30, - name: 'language-toggle', - }); - } - if (preferences.widget.timezone) { - list.push({ - index: REFERENCE_VALUE + 40, - name: 'timezone', - }); - } + } + // 主题、语言、时区等子功能由各自的 widget 开关独立控制, + // 不应跟随偏好设置按钮的显示与否(如 enablePreferences 为 false 或按钮位于其他位置时) + if (preferences.widget.themeToggle) { + list.push({ + index: REFERENCE_VALUE + 20, + name: 'theme-toggle', + }); + } + if (preferences.widget.languageToggle) { + list.push({ + index: REFERENCE_VALUE + 30, + name: 'language-toggle', + }); + } + if (preferences.widget.timezone) { + list.push({ + index: REFERENCE_VALUE + 40, + name: 'timezone', + }); } // 全屏 if (preferences.widget.fullscreen) {