Electron-based apps cause system-wide lag on macOS 26 Tahoe

Root Cause & Technical Details

  • Thread centers on macOS 26 “Tahoe” causing system-wide lag and high GPU/WindowServer usage when Electron apps (Slack, VS Code, Discord, etc.) are open.
  • A key finding: Electron was overriding a private AppKit method (_cornerMask) to tweak window corners/shadows, which interacts badly with Tahoe’s new rendering behavior and causes a tight, GPU-heavy loop.
  • Some note that similar GPU-load issues also affect other non-Electron apps that use custom window effects, suggesting a broader fragility in the new windowing/graphics stack.

Who’s at Fault? Apple vs Electron vs App Devs

  • One camp: if you use or override private APIs, you “own” the breakage. Apple explicitly warns those may change without notice.
  • Another camp: Apple shipped an OS update that breaks many of the most common apps; regardless of private APIs, that’s a failure of platform stewardship and regression testing.
  • Nuanced view: Electron used a private API to work around bugs/limits in public APIs; that’s risky but sometimes the only way to get desired behavior. Apple still could have tested major Electron-based apps and coordinated with maintainers.

Backwards Compatibility Philosophy

  • Long digression comparing Apple’s “we break you if you rely on internals” stance to Windows’ decades-long compatibility guarantees.
  • Some argue strict compatibility (Windows style) leads to cruft and slow progress; others argue it’s what keeps critical, old software working and that Apple can be cavalier because macOS has fewer truly mission-critical workloads.

User Impact & Perception

  • Several comments stress that the real loser is the non-technical user whose Slack/Spotify/VS Code suddenly make their Mac hot and laggy; they are unlikely to understand private vs public APIs.
  • Debate over whether those users will blame Apple (OS changed) or the apps (they’re the ones misbehaving).

Electron Performance & Alternatives

  • Reiteration of common complaints: Electron apps are heavy, can hang the system when network is flaky, and consume large disk/CPU/GPU resources.
  • Others counter: Electron usually doesn’t cause OS-level problems; Tahoe bug is an edge case triggered by Apple + private APIs.
  • Suggestions for alternatives include native toolkits or other cross-platform frameworks; argument over whether Electron is “lazy” or a pragmatic way to ship cross-platform apps quickly.

macOS/iOS 26 Quality Concerns

  • Multiple reports of broader regressions in macOS 26 and iOS 26: Spotlight breakage, memory leaks in native apps, Screen Time/Guided Access problems, visual glitches, and inconsistent new “glass” UI.
  • Some feel recent Apple OS releases show declining QA and more focus on visuals than robustness; others report no major issues and like the new design.

Workarounds and Fixes

  • Temporary Electron-side workaround: disable window shadows (browserWindow.setHasShadow(false)), or use an updated Electron version once fixes land.
  • Separate defaults write ... NSAutoFillHeuristicControllerEnabled -bool false workaround is mentioned, but clarified as addressing a different macOS 26 scroll/autofill bug in Chromium.
  • Reports that Chromium has landed fixes, and Electron has merged a patch, but users must wait for app updates or manually tweak configurations.