This commit is contained in:
2026-08-17 10:43:38 +02:00
parent e126182ae6
commit 3a941480a9
20 changed files with 430 additions and 46 deletions

View File

@@ -106,12 +106,22 @@ function installAppHooks(): void {
contents.on('preload-error', (_ev, preloadPath, error) => {
logger.error('preload', 'preload script threw — window.helder will be undefined (mock-data fallback)', error, { preloadPath })
})
let sawRoLoop = false
contents.on('console-message', (...a: unknown[]) => {
// Electron ≥36 passes a single event object; older versions pass
// (event, level, message, line, sourceId). Support both so a version bump
// doesn't quietly stop capturing renderer console output.
const d = normaliseConsoleMessage(a)
if (!d || d.level < 2) return // warnings + errors only; skip log/info noise
// "ResizeObserver loop …" is a browser layout notice, not a fault, and it
// fires once per frame — a window drag would bury everything else. The
// renderer suppresses its own repeats the same way (see log.ts).
if (d.message.startsWith('ResizeObserver loop')) {
if (sawRoLoop) return
sawRoLoop = true
log('warn', 'console', d.message + ' (browser layout notice; repeats suppressed)', { source: d.source, line: d.line })
return
}
log(d.level >= 3 ? 'error' : 'warn', 'console', d.message, { source: d.source, line: d.line })
})
})