Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Impeller] Provide an opaque interface for color sources in Aiks #41315

Merged
merged 1 commit into from Apr 19, 2023

Conversation

bdero
Copy link
Member

@bdero bdero commented Apr 18, 2023

Part of flutter/flutter#125017.

Pulls ColorSource construction out of the dispatcher and into Aiks.

Cleans up a few design warts we've accumulated over time:

  • Removes special exceptions for solid colors in Paint.
  • Makes SolidColorContents a ColorSourceContents.
  • Removes paint ref capture for kImage.

FYI @iamralpht

@bdero bdero self-assigned this Apr 18, 2023
@bdero bdero force-pushed the bdero/color-sources branch 2 times, most recently from 15669fe to e247f10 Compare April 18, 2023 22:12
Copy link
Member

@jonahwilliams jonahwilliams left a comment

Choose a reason for hiding this comment

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

LGTM!

kConicalGradient,
kSweepGradient,
kRuntimeEffect,
kScene,
Copy link
Member

Choose a reason for hiding this comment

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

Not quite following where the Scene stuff needs to be #ifdef'd out vs. in. Why is this in the clear here, but Scene code under IMPELLER_ENABLE_3D in others?

Copy link
Member Author

@bdero bdero Apr 19, 2023

Choose a reason for hiding this comment

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

Currently we always build Scene as part of Impeller, but completely eliminate it from the DisplayList + UI unless IMPELLER_ENABLE_3D is on to make accidental exposure impossible. Maybe we should rename it to e.g. FLUTTER_ENABLE_3D sometime. 😄

@bdero bdero merged commit 81e9dc7 into flutter:main Apr 19, 2023
37 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Apr 19, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Apr 19, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Apr 19, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Apr 19, 2023
…125094)

flutter/engine@099ed6c...8b7cdb0

2023-04-19 aam@google.com Roll dart, zlib, emscripten, tweak license script for rolled zlib (flutter/engine#41299)
2023-04-19 skia-flutter-autoroll@skia.org Roll Skia from 84630c3c18b2 to 5a718d9e9c06 (3 revisions) (flutter/engine#41318)
2023-04-19 bdero@google.com [Impeller] Provide an opaque interface for color sources in Aiks (flutter/engine#41315)
2023-04-18 yjbanov@google.com [web:canvaskit] remove unnecessary instrumentation from picture (flutter/engine#41313)
2023-04-18 skia-flutter-autoroll@skia.org Roll Skia from 476ee3fd54cc to 84630c3c18b2 (5 revisions) (flutter/engine#41316)
2023-04-18 godofredoc@google.com Double zip FlutterMacOS.framework.zip. (flutter/engine#41306)

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 chinmaygarde@google.com,rmistry@google.com,zra@google.com 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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Archived in project
3 participants