minikin::LineBreaker does not convert newline characters into line breaks
in its output. Previously libtxt's version of LineBreaker container a patch
that added a large width offset for a newline in order to force wrapping to
the next line. This works if the offset exceeds the paragraph's width
constraint. But if the paragraph is laid out with infinite width, then the
text after the newline will continue on the current output line.
This change separates the paragraph's text into newline delimited blocks and
feeds each block separately to the minikin LineBreaker.
Also, libtxt was breaking the input styled text runs at newline boundaries.
This is no longer necessary.
The output_name property of a template is typically relative to the
root_build_dir rather than the target_gen_dir. This patch makes flutter_app
consistent with this pattern.
* Fix for issue 12526
Ensure that child isolates do not clear the dart_ui_state_ field present in the dart controller.
The commit 093a8a4dfd implemented code to reset the dart_ui_state_ back to null when an isolate was being shutdown to ensure there was no use after free issues when the main isolate exeutes Isolate.current.kill() it however it was also clearning the field when a child isolate was shutdown causing SEGVs later.
* Address code format issues.
* Add dependency on chromium/src/build for Mac/iOS build
Preparation for migrating to mac_toolchain.py for installing/configuring
Xcode versions on the Mac build bots.
* Exclude third_party/chromium_build from licence script
It's used only at build time to fetch and install the correct Xcode
version.
maxIntrinsicWidth is the sum of the width of all lines in the input
(if the width were any smaller, the renderer might have to wrap a line)
minIntrinsicWidth is the maximum width of a word (if the paragraph were
any narrower, the renderer would have to truncate a word)
This reverts commit 45eaf7a0ce073d5d830c589b5df0a54ec9902072.
Doing the synchronized roll of Dart into engine as well as into Fuchsia
to prevent Fuchsia breakage.
* Roll dart to pick up change where platform.dill was removed
* Fix flutter patch sdk generation
* Update license hash. No changes to license text.
* Roll dart to pick up a fix for zero-rebuild problem
* Update license hash
This changes Paragraph::Layout to iterate line-by-line through the text.
For each line, Layout scans for word boundaries and adds extra space between
words if the line is justified.
This reverts commit 1a7ca91e3938abd5720b3553dfb2045a6b805a3b.
Clear regression to the flutter_gallery_ios__transition_perf benchmarks:
* average_frame_build_time_millis: 1.4x
* missed_frame_build_budget_count: 1.2x
No regression seen for other iOS benchmarks (e.g. scrolling).
* Change to new SkFontMgr API
These changes clarify ownership rules and work today. They will be
necessary once SK_SUPPORT_LEGACY_FONTMGR_API goes away.
* Fix spacing
* Formatting