From ce1440c42ff0bbbe6adb98e38ab421972fc0b802 Mon Sep 17 00:00:00 2001 From: QLHazyCoder <2825305047@qq.com> Date: Sun, 12 Apr 2026 13:01:02 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E8=BF=90=E8=A1=8C=E5=BB=B6=E8=BF=9F=E7=8A=B6=E6=80=81=E7=AE=A1?= =?UTF-8?q?=E7=90=86=EF=BC=8C=E6=94=AF=E6=8C=81=E4=BB=8E=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=95=8C=E9=9D=A2=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- background.js | 10 ++++++++++ sidepanel/sidepanel.js | 7 +++++++ 2 files changed, 17 insertions(+) diff --git a/background.js b/background.js index 1adc19e..f5547d0 100644 --- a/background.js +++ b/background.js @@ -1183,6 +1183,13 @@ function formatAutoRunScheduleTime(timestamp) { }); } +async function setAutoRunDelayEnabledState(enabled) { + const normalized = Boolean(enabled); + await setPersistentSettings({ autoRunDelayEnabled: normalized }); + await setState({ autoRunDelayEnabled: normalized }); + broadcastDataUpdate({ autoRunDelayEnabled: normalized }); +} + async function ensureScheduledAutoRunAlarm(scheduledAt) { if (!Number.isFinite(scheduledAt) || scheduledAt <= Date.now()) { return false; @@ -1274,6 +1281,9 @@ async function launchScheduledAutoRun(trigger = 'alarm') { } await clearScheduledAutoRunAlarm(); + if (trigger !== 'manual' && state.autoRunDelayEnabled) { + await setAutoRunDelayEnabledState(false); + } await broadcastAutoRunStatus( 'running', { diff --git a/sidepanel/sidepanel.js b/sidepanel/sidepanel.js index 029fe98..90d702b 100644 --- a/sidepanel/sidepanel.js +++ b/sidepanel/sidepanel.js @@ -1223,6 +1223,13 @@ chrome.runtime.onMessage.addListener((message) => { displayLocalhostUrl.textContent = message.payload.localhostUrl; displayLocalhostUrl.classList.add('has-value'); } + if (message.payload.autoRunDelayEnabled !== undefined) { + inputAutoDelayEnabled.checked = Boolean(message.payload.autoRunDelayEnabled); + updateAutoDelayInputState(); + } + if (message.payload.autoRunDelayMinutes !== undefined) { + inputAutoDelayMinutes.value = String(normalizeAutoDelayMinutes(message.payload.autoRunDelayMinutes)); + } break; }