-
Notifications
You must be signed in to change notification settings - Fork 6k
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] transform text path offsets so color sources match expected offsets for gradients. #45255
Conversation
impeller/geometry/path.cc
Outdated
for (const auto& component : components_) { | ||
switch (component.type) { | ||
case ComponentType::kLinear: | ||
linears_[component.index].p1 = linears_[component.index].p1 + shift; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know C++.
That being said, can you write:
liners[component.index].p1 += shift
...? or does that not work with vectors/arrays?
If not, at least pull index
into auto const index = component.index
:)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fun fact, += is a different operator than + (see point.h)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
…ch expected offsets for gradients. (flutter/engine#45255)
…133621) flutter/engine@749e67a...69f04bd 2023-08-30 [email protected] [Impeller] transform text path offsets so color sources match expected offsets for gradients. (flutter/engine#45255) 2023-08-30 [email protected] Roll Skia from e6eb56d9b074 to fde9fe141863 (1 revision) (flutter/engine#45260) 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://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
…d offsets for gradients. (flutter#45255) Gradient offsets are computed based on path offsets + gradient positions, so we need to shift the points instead of just adding a concat to the canvas. Fixes flutter/flutter#132972 ### Skia ![flutter_03](https://github.com/flutter/engine/assets/8975114/182dff72-cd48-4f97-a1e3-ea924f4a0eee) ### Impeller (No Patch) ![flutter_04](https://github.com/flutter/engine/assets/8975114/bb421d86-a588-49b9-879f-209738821898) ### Impeller (W/ Patch) ![flutter_05](https://github.com/flutter/engine/assets/8975114/f2d601b4-d15f-487b-aa65-a61bfc98bde9)
Gradient offsets are computed based on path offsets + gradient positions, so we need to shift the points instead of just adding a concat to the canvas. Fixes flutter/flutter#132972
Skia
Impeller (No Patch)
Impeller (W/ Patch)