mitchchn

#50541: fix: prevent borders and smearing in transparent frameless/client frame windows on Linux

Merged
Created: Mar 27, 2026, 12:00:14 PM
Merged: Mar 31, 2026, 11:24:11 AM
4 comments
Target: main

Description of Change

Electron 41.x added CSD to frameless windows, which introduced a regression where transparent frameless windows would have 1px borders.

Fixing this issue also addressed another problem with transparency on Linux (going back years for client frames) where transparent windows would smear and get corrupted as windows were dragged around. The underlying cause was the same: parts of the window lifecycle, painting, and opacity checks did not account for transparency.

Fixes #50536, fixes #50535.

Checklist

Release Notes

Notes: Fixed a regression on Linux where transparent frameless windows would have visible borders. Also fixed a longstanding issue where transparent windows on Linux could show smeared and glitched content as windows moved around.

Backports

41-x-y
Merged
PR Number
#50605
Merged At
Mar 31, 2026, 6:28:56 PM
Released In
Not yet
Release Date
Not yet
42-x-y
Pending
Waiting for a manual backport

Semver Impact

Major
Breaking changes
Minor
New features
Patch
Bug fixes
None
Docs, tests, etc.

Semantic Versioning helps users understand the impact of updates:

  • Major (X.y.z): Breaking changes that may require code modifications
  • Minor (x.Y.z): New features that maintain backward compatibility
  • Patch (x.y.Z): Bug fixes that don't change the API
  • None: Changes that don't affect using facing parts of Electron