diff --git a/src_assets/common/assets/web/components/LogsSection.vue b/src_assets/common/assets/web/components/LogsSection.vue index 4d81730f229..5253de1df6a 100644 --- a/src_assets/common/assets/web/components/LogsSection.vue +++ b/src_assets/common/assets/web/components/LogsSection.vue @@ -55,6 +55,10 @@ {{ $t('troubleshooting.copy_config') }} + @@ -71,7 +75,11 @@ diff --git a/src_assets/common/assets/web/composables/useBackground.js b/src_assets/common/assets/web/composables/useBackground.js index 1a235c62b62..2cc1817f119 100644 --- a/src_assets/common/assets/web/composables/useBackground.js +++ b/src_assets/common/assets/web/composables/useBackground.js @@ -195,7 +195,19 @@ export function useBackground(options = {}) { const getCurrentBackground = () => localStorage.getItem(storageKey) ?? defaultBackground + const isDevMode = () => localStorage.getItem('sunshine_dev_mode') === '1' + + const clearDevBypass = () => { + if (localStorage.getItem('sunshine_dev_mode') === '1') { + localStorage.setItem('sunshine_dev_mode', '0') + } + } + const setBackground = async (imageUrl) => { + if (isDevMode()) { + document.body.style.background = '' + return + } document.body.style.background = `url(${imageUrl}) center/cover fixed no-repeat` if (isLocalImage(imageUrl)) { try { @@ -221,6 +233,7 @@ export function useBackground(options = {}) { const loadBackground = () => setBackground(getCurrentBackground()) const saveBackground = async (imageData) => { + clearDevBypass() try { localStorage.setItem(storageKey, imageData) } catch (error) { @@ -310,6 +323,7 @@ export function useBackground(options = {}) { } const clearBackground = () => { + clearDevBypass() localStorage.removeItem(storageKey) return setBackground(defaultBackground) } @@ -321,6 +335,15 @@ export function useBackground(options = {}) { const observer = new MutationObserver(handleThemeChange) observer.observe(document.documentElement, observerConfig) observer.observe(document.body, observerConfig) + + // 监听背景旁路切换 + window.addEventListener('sunshine-background-bypass', (e) => { + if (e.detail?.enabled) { + document.body.style.background = '' + } else { + loadBackground() + } + }) } return {