Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Reland "[Windows] Introduce egl::Surface and egl::WindowSurface" #50148

Merged
merged 3 commits into from
Feb 1, 2024

Conversation

loic-sharma
Copy link
Member

@loic-sharma loic-sharma commented Jan 29, 2024

Original pull request description

This introduces the egl::Surface and egl::WindowSurface types to abstract a raw EGLSurface. This also removes some - but not all - EGL surface logic out from EGLManager.

Subsequent pull requests will be necessary to:

  1. Move ownership of the egl::WindowSurface from egl::Manager to FlutterWindowsView
  2. Refactor external texture's off-screen EGL surface to use egl::Surface

Part of flutter/flutter#141996

Reland

#49983 was reverted as it introduced a crash if the render surface fails to be created even though EGL was initialized successfully.

This pull request is split into the following commits:

  1. c0b11be is the original pull request unchanged
  2. 1dc7813 is the fix: it checks a surface is valid before using it. This also adds several tests to prevent this kind of regression.

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
  • I listed at least one issue that this PR fixes in the description above.
  • I added new tests to check the change I am making or feature I am adding, or the PR is test-exempt. See testing the engine for instructions on writing and running engine tests.
  • I updated/added relevant documentation (doc comments with ///).
  • I signed the CLA.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Copy link
Contributor

@yaakovschectman yaakovschectman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@loic-sharma loic-sharma added the autosubmit Merge PR when tree becomes green via auto submit App label Feb 1, 2024
@auto-submit auto-submit bot merged commit a718337 into flutter:main Feb 1, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 1, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Feb 1, 2024
…142745)

flutter/engine@39415c3...9beb7e8

2024-02-01 [email protected] [Impeller] new blur: round downsample to power of two (flutter/engine#50245)
2024-02-01 [email protected] Provide a more helpful error message in the case of UnsatisfiedLinkError (flutter/engine#50247)
2024-02-01 [email protected] Update expected golden number. (flutter/engine#50249)
2024-02-01 [email protected] [Impeller] remove drawPicture from Aiks Canvas. (flutter/engine#50242)
2024-02-01 [email protected] Reland "[Windows] Introduce egl::Surface and egl::WindowSurface" (flutter/engine#50148)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
affects: desktop autosubmit Merge PR when tree becomes green via auto submit App platform-windows
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants