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

[macOS] Consolidate external texture classes #37703

Merged
merged 1 commit into from
Nov 17, 2022

Conversation

cbracken
Copy link
Member

Previously, external textures were modelled in the macOS embedder by a
top-level FlutterMacOSExternalTexture protocol with a single textureID
getter, and two implementations: FlutterExternalTextureGL and
FlutterExternalTextureMetal.

With the removal of OpenGL support from the macOS embedder, the only
remaining external texture implementation is Metal. This patch squashes
this set of types into a single FlutterExternalTexture class.

Issue: flutter/flutter#108304
Issue: flutter/flutter#114445

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 Hixie said 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.

@cbracken
Copy link
Member Author

cbracken commented Nov 17, 2022

This patch is stacked on top of #37696. It's separated into two commits. The first is #37696, the second (161ae43) is the refactoring that's part of this patch, and which needs reviewing here.

@cbracken cbracken force-pushed the squash-externaltexture branch 2 times, most recently from bc7e774 to 1b099cb Compare November 17, 2022 16:22
Previously, external textures were modelled in the macOS embedder by a
top-level FlutterMacOSExternalTexture protocol with a single textureID
getter, and two implementations: FlutterExternalTextureGL and
FlutterExternalTextureMetal.

With the removal of OpenGL support from the macOS embedder, the only
remaining external texture implementation is Metal. This patch squashes
this set of types into a single FlutterExternalTexture class.

Issue: flutter/flutter#108304
Issue: flutter/flutter#114445
@cbracken cbracken force-pushed the squash-externaltexture branch from 1b099cb to febb7cc Compare November 17, 2022 17:55
@cbracken cbracken merged commit da9534e into flutter:main Nov 17, 2022
@cbracken cbracken deleted the squash-externaltexture branch November 17, 2022 18:44
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 17, 2022
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Nov 17, 2022
sourcegraph-bot pushed a commit to sgtest/megarepo that referenced this pull request Nov 17, 2022
…ter/engine#37703) (#115585)

Commit: 20be280cc19fce8cf9ecd01005b1d2503d6e47e6
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Nov 18, 2022
* 70b7445 Reland Added Badge.count constructor (flutter/flutter#115566)

* 31f8631 fa7e1965e [Impeller] Fix glyph atlas uploads and renders (flutter/engine#37691) (flutter/flutter#115556)

* a1ea383 Label should always be aligned with text in filled input decoration (flutter/flutter#115540)

* c2b2950 Add selection feedback for both selection area and text field (flutter/flutter#115373)

* 0344407 Rev package:pub_semver to the latest version (flutter/flutter#115570)

* ac06523 Add Material 3 support for `Slider` - Part 2  (flutter/flutter#114624)

* b181d07 a2fa4e9 cirrus to luci (flutter/plugins#6711) (flutter/flutter#115573)

* e1efd0d b241e69fd [ui] reland add docs to FragmentShader (flutter/engine#37699) (flutter/flutter#115578)

* efb0694 Remove unused flutter_attach_test_fuchsia (flutter/flutter#115515)

* a5a368c 487ee66f6 [macOS] Merge FlutterRenderer and implementation (flutter/engine#37696) (flutter/flutter#115581)

* 4ff7fc6 Fixes a bug where dragging a collapsed handle in TextField does not vibrate (flutter/flutter#115586)

* 20be280 da9534ea6 [macOS] Consolidate external texture classes (flutter/engine#37703) (flutter/flutter#115585)

* 8a7102e Roll Flutter Engine from da9534ea6534 to d955a72c5604 (3 revisions) (flutter/flutter#115589)

* e1903a2 Roll Flutter Engine from d955a72c5604 to 1e1a4ab3c993 (4 revisions) (flutter/flutter#115592)

* 78390a0 Roll Flutter Engine from 1e1a4ab3c993 to b65c24ce621a (2 revisions) (flutter/flutter#115598)

* 75a0a72 [devicelab] measure entire release folder size, zipped (flutter/flutter#115597)

* 59a01b6 Roll Flutter Engine from b65c24ce621a to 49b52db603cc (3 revisions) (flutter/flutter#115606)

* ec03f1c Revert "[devicelab] measure entire release folder size, zipped (#115597)" (flutter/flutter#115609)

* 710e708 Improve showSnackBar documentation (flutter/flutter#114612)

* 915c3de Roll Flutter Engine from 49b52db603cc to 80b25a302b4c (2 revisions) (flutter/flutter#115608)

* 450f162 Roll Flutter Engine from 80b25a302b4c to e812122e4060 (2 revisions) (flutter/flutter#115614)

* 0b33b85 [devicelab] measure entire release folder size, zipped (flutter/flutter#115612)

* 9379c32 Revert "[devicelab] measure entire release folder size, zipped (#115612)" (flutter/flutter#115617)

* b746557 f27666d2f [macOS] Merge FlutterBackingStore implementations (flutter/engine#37730) (flutter/flutter#115616)

* 5487a7d Roll Flutter Engine from f27666d2f4da to 39f546585b0b (2 revisions) (flutter/flutter#115618)

* f261c2f update comments (flutter/flutter#115603)

* 9c9f781 04aea3c47 iOS PlatformView only sets a maskView when necessary (flutter/engine#37434) (flutter/flutter#115621)

* 6926960 4ca2c1d78 Roll Skia from 55f654bf5cff to 9d56e506b4df (13 revisions) (flutter/engine#37739) (flutter/flutter#115625)

* de4c0b1 Use `double.isNaN` instead of `... == double.nan` (which is always false) (flutter/flutter#115424)

* a655f85 a62736769 Roll Skia from 9d56e506b4df to d693b4b9fe5e (5 revisions) (flutter/engine#37741) (flutter/flutter#115640)

* 18c8727 f092cd826 Roll Fuchsia Mac SDK from SVtX810D2U_ZgBcpx... to tklUfTsSOVKk49tYq... (flutter/engine#37742) (flutter/flutter#115643)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants