#52866·electron

Opaque frameless windows jitter during native interactive resize with default ANGLE/OpenGL on Linux/X11

Author: otanimCreated Aug 16, 2026Updated Sep 16, 2026
Labelsplatform/linuxbug :beetle:has-repro-gist43-x-y44-x-y

Preflight Checklist

Electron Version

43.4.1

What operating system(s) are you using?

Ubuntu

Operating System Version

Ubuntu 22.04.5 LTS, GNOME Shell 42.9, X11, Linux 6.16.7, Mesa 23.2.1

What arch are you using?

x64

Last Known Working Electron version

Not yet established for Electron's default ANGLE/OpenGL backend. The same Electron 43.4.1 build resizes smoothly when explicitly configured to use ANGLE/Vulkan.

Does the issue also appear in Chromium / Google Chrome?

Not directly testable using the equivalent Electron BrowserWindow configuration.

Expected Behavior

An opaque frameless X11 window should resize with stable visual presentation when using Electron's default graphics configuration. Its content and apparent window edges should follow the native interactive resize without jumping or lagging.

Actual Behavior

Quickly resizing an opaque BrowserWindow with frame: false vertically or diagonally produces visible presentation jitter when Electron is launched without a --use-angle override.

A matched comparison using the same Electron 43.4.1 build, the same BrowserWindow options, and the same native edge/corner resize interaction is smooth when Vulkan is selected explicitly:

Graphics configuration Result
--use-angle not set — default ANGLE/OpenGL Visible resize jitter
--use-angle=vulkan with Vulkan,DefaultANGLEVulkan,VulkanFromANGLE enabled Smooth

No JavaScript resizing, IPC bounds updates, setBounds(), or custom resize implementation is involved.

Testcase Gist URL

https://gist.github.com/otanim/12c2cece789b68d04c271b96bfc41b68

Additional Information

Confirmed on Intel Meteor Lake-P / Intel Arc Graphics using the i915 driver.

Correction to the original investigation

The earlier Alpha 3 versus Alpha 4 comparison and source-commit attribution were confounded by a separate Electron regression that prevented transparent frameless windows from being resized natively on Linux.

That separate native-resizing regression affected the Electron versions used during the earlier investigation. It was fixed for Electron 43.x in 43.4.1 by #52947, a backport of #52740. The corresponding 44.x backport is #52891.

Because native resizing was unavailable during part of the earlier comparison, alternative resize paths did not provide an equivalent test of Electron's native interactive resize behavior and produced false-positive conclusions. The previous claim that the jitter itself began in 43.0.0-alpha.4, along with the associated first-bad source-commit attribution and proposed opaque-surface policy, is therefore withdrawn.

After retesting with native resize restored in Electron 43.4.1, the reproducible differentiator is the graphics backend: the default ANGLE/OpenGL path jitters, while the explicitly selected ANGLE/Vulkan path is smooth.