From 44b710bb174657a13afe66264e5b10940eb06dd5 Mon Sep 17 00:00:00 2001
From: ShadowLemoon <119576779+ShadowLemoon@users.noreply.github.com>
Date: Sun, 10 May 2026 00:42:00 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E5=85=81=E8=AE=B8=E6=B2=A1=E6=9C=89?=
=?UTF-8?q?=E8=83=8C=E6=99=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../assets/web/components/LogsSection.vue | 38 ++++++++++++++++++-
.../assets/web/composables/useBackground.js | 23 +++++++++++
2 files changed, 60 insertions(+), 1 deletion(-)
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 {