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

[DisplayList] Create DlFoo type variants to start moving away from Skia types in API #55812

Merged
merged 3 commits into from
Oct 11, 2024

Conversation

flar
Copy link
Contributor

@flar flar commented Oct 10, 2024

This is the beginning of the bulk of de-skia-fication work in the engine. All of the standard types in the DlCanvas API now have overloads that specify the corresponding Dl type, mainly for Dl*Rect and DlPoint types. This enables further work to switch from SkFoo types to DlFoo types in the various engine modules culminating in the elimination of the old methods that use the Sk types.

All of the former methods that used the basic Sk types are now implemented as inlinable translation overloads and the underlying implementations of DlCanvas now implement only the newer style interfaces so that they don't need to be further modified as we eliminate the old Skia types from the interface.

There are still a couple of Skia types remaining in the DlCanvas API without any DL type variants which will be handled in a future phase:

  • SkRRect
  • SkRSXform
  • SkTextBlob (will be hidden behind a common interface along with TextFrame)
  • SkImageInfo (only used in a few calling sites)

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

@flar flar force-pushed the dlcanvas-create-dl-type-overloads branch from 90a43da to 1e5a29c Compare October 10, 2024 23:37
@flar flar added the autosubmit Merge PR when tree becomes green via auto submit App label Oct 11, 2024
@auto-submit auto-submit bot merged commit 95339e2 into flutter:main Oct 11, 2024
33 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Oct 11, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Oct 11, 2024
…156562)

flutter/engine@3f0e2fb...e41a762

2024-10-11 [email protected] [ios][platform_view] Fix Platform view gesture recognizer with iPad pencil getting stuck (flutter/engine#55724)
2024-10-11 [email protected] [DisplayList] Create DlFoo type variants to start moving away from Skia types in API (flutter/engine#55812)
2024-10-10 [email protected] [engine] remove merge thread setting and fix default value. (flutter/engine#55810)
2024-10-10 [email protected] Roll Skia from 1e269594df9d to 97cebfb06139 (3 revisions) (flutter/engine#55811)

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] 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
auto-submit bot added a commit to flutter/flutter that referenced this pull request Oct 11, 2024
…isions) (#156562)" (#156594)

Reverts: #156562
Initiated by: zanderso
Reason for reverting: Linux_mokey flutter_gallery__back_button_memory is failing repeatedly on framework CI
Original PR Author: engine-flutter-autoroll

Reviewed By: {fluttergithubbot}

This change reverts the following previous change:

flutter/engine@3f0e2fb...e41a762

2024-10-11 [email protected] [ios][platform_view] Fix Platform view gesture recognizer with iPad pencil getting stuck (flutter/engine#55724)
2024-10-11 [email protected] [DisplayList] Create DlFoo type variants to start moving away from Skia types in API (flutter/engine#55812)
2024-10-10 [email protected] [engine] remove merge thread setting and fix default value. (flutter/engine#55810)
2024-10-10 [email protected] Roll Skia from 1e269594df9d to 97cebfb06139 (3 revisions) (flutter/engine#55811)

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] 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
auto-submit bot added a commit to flutter/flutter that referenced this pull request Oct 11, 2024
…4a (4 revisions) (#156562)" (#156594)" (#156597)

Reverts: #156594
Initiated by: jonahwilliams
Reason for reverting: workaround landed?
Original PR Author: auto-submit[bot]

Reviewed By: {fluttergithubbot}

This change reverts the following previous change:
Reverts: #156562
Initiated by: zanderso
Reason for reverting: Linux_mokey flutter_gallery__back_button_memory is failing repeatedly on framework CI
Original PR Author: engine-flutter-autoroll

Reviewed By: {fluttergithubbot}

This change reverts the following previous change:

flutter/engine@3f0e2fb...e41a762

2024-10-11 [email protected] [ios][platform_view] Fix Platform view gesture recognizer with iPad pencil getting stuck (flutter/engine#55724)
2024-10-11 [email protected] [DisplayList] Create DlFoo type variants to start moving away from Skia types in API (flutter/engine#55812)
2024-10-10 [email protected] [engine] remove merge thread setting and fix default value. (flutter/engine#55810)
2024-10-10 [email protected] Roll Skia from 1e269594df9d to 97cebfb06139 (3 revisions) (flutter/engine#55811)

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] 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
nick9822 pushed a commit to nick9822/flutter that referenced this pull request Dec 18, 2024
…ia types in API (flutter/engine#55812)

This is the beginning of the bulk of de-skia-fication work in the engine. All of the standard types in the DlCanvas API now have overloads that specify the corresponding Dl type, mainly for Dl*Rect and DlPoint types. This enables further work to switch from SkFoo types to DlFoo types in the various engine modules culminating in the elimination of the old methods that use the Sk types.

All of the former methods that used the basic Sk types are now implemented as inlinable translation overloads and the underlying implementations of DlCanvas now implement only the newer style interfaces so that they don't need to be further modified as we eliminate the old Skia types from the interface.

There are still a couple of Skia types remaining in the DlCanvas API without any DL type variants which will be handled in a future phase:
- SkRRect
- SkRSXform
- SkTextBlob (will be hidden behind a common interface along with TextFrame)
- SkImageInfo (only used in a few calling sites)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
autosubmit Merge PR when tree becomes green via auto submit App e: impeller platform-android platform-fuchsia
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants