-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] A text layout and shaping API for the standalone library. #55598
Conversation
This uses the same shaper as the rest of Flutter. The minimal ICU data configuration comes embedded in the dylib so there are no out-of-band packaging concerns. Fixes flutter/flutter#156015
|
cc @lyceel |
jonahwilliams
left a comment
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.
LGTM w/ questions
| return; | ||
| } | ||
|
|
||
| static txt::ParagraphStyle kBaseStyle; |
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.
what does this do?
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.
That seems to be the default style applied to text that is added pushing a prior push style. The fields are default initialized.
impeller/toolkit/interop/impeller.cc
Outdated
| return; | ||
| } | ||
| GetPeer(paragraph_builder) | ||
| ->AddText(fml::Utf8ToUtf16( |
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.
The skia paragraph builder supports utf8 strings too. We only have the utf16 API exposed because that is the format of dart strings
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.
Cool. I'll wire that up directly instead of doing this conversion.
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 thought UTF8 was a better default.
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.
…156174) flutter/engine@de1762d...20369c5 2024-10-03 [email protected] [Impeller] A text layout and shaping API for the standalone library. (flutter/engine#55598) 2024-10-03 [email protected] Refactor `et run` (and friends). (flutter/engine#55537) 2024-10-03 [email protected] [Impeller] Do not cull in TextFrameDispatcher::drawDisplayList if the transform has perspective (flutter/engine#55602) 2024-10-03 [email protected] iOS: Fix IOSSurfaceNoopTest (flutter/engine#55621) 2024-10-03 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] one aiks context per app. (#55393)" (flutter/engine#55625) 2024-10-03 [email protected] Roll Fuchsia Linux SDK from YKvfbpZ38daiwJ7H0... to TnSpLq0S9XT2rHGl1... (flutter/engine#55622) 2024-10-03 [email protected] [Impeller] one aiks context per app. (flutter/engine#55393) Also rolling transitive DEPS: fuchsia/sdk/core/linux-amd64 from YKvfbpZ38dai to TnSpLq0S9XT2 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
…lutter/engine#55598) This uses the same shaper as the rest of Flutter. The minimal ICU data configuration comes embedded in the dylib so there are no out-of-band packaging concerns. <img width="1136" alt="Screenshot 2024-10-02 at 4 11 17â�¯PM" src="https://github.com/user-attachments/assets/ce63dc99-7c3d-4b71-ac5d-926dffa5269b"> Fixes flutter#156015
This uses the same shaper as the rest of Flutter. The minimal ICU data configuration comes embedded in the dylib so there are no out-of-band packaging concerns.
Fixes flutter/flutter#156015