diff --git a/main.js b/main.js index a56505fd..43cebfd4 100644 --- a/main.js +++ b/main.js @@ -3539,6 +3539,9 @@ function scheduleFreeze(tab) { if (!settings.freezeBackgroundTabs || tab.keepRunning || tab.pending || !tab.url || tab.id === activeId) return; tab.freezeTimer = setTimeout(() => { if (tab.id === activeId || !tabs.includes(tab) || tab.keepRunning || tab.pending || tabHasPendingDialog(tab.id)) return; + // A tab playing sound (music, a talk) keeps playing, as in any browser; + // check again later and freeze it once it falls quiet. + try { if (tab.view.webContents.isCurrentlyAudible()) { scheduleFreeze(tab); return; } } catch {} setTabFrozen(tab, true); }, FREEZE_GRACE_MS); }