Skip to content

Threading issues with rendering during window resize #30671

@stuartmorgan-g

Description

@stuartmorgan-g

The desktop shells resize the graphics context on the main thread, while drawing to it happens from a background thread. This can cause crashes (#17579), but even when it doesn't there are often strange rendering behaviors (red flashes, briefly transparent or garbage-filled windows, etc.)

Beyond just fixing the crashes, we need a robust solution to make resizing feel reasonable. Visually, synchronous repaints would probably be ideal, but something that isn't synchronous, but is highly responsive while avoiding shaking and/or tearing would likely feel good enough (c.f. Chromium's async renderer painting).

Metadata

Metadata

Assignees

No one assigned

    Labels

    a: desktopRunning on desktope: glfwGLFW desktop embeddingengineflutter/engine related. See also e: labels.platform-linuxBuilding on or for Linux specificallyplatform-macBuilding on or for macOS specificallyplatform-windowsBuilding on or for Windows specifically

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions