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
When checking whether render buffer size has changed, apply the device
scale factor used to convert points to pixels to ensure we're not
needlessly re-allocating render buffer storage.
Adds trace + debug log to make this easier to detect in future.
Originally introduced in 72c28f3a01bd9e6bed256edc4629705d96a7cead, but
rolled back in d539abd7c5fe5291bab81b32e6e5697c1b6681b6 to test whether
it was responsible for regressions to
flutter_gallery_ios__transition_perf benchmarks:
* average_frame_build_time_millis
* missed_frame_build_budget_count
- Remove linking of dart_debugger.cc as this is not used
(all debugging is done using the service API, this debugger implementation uses the deprecated dart debugger API)
* Revert "Include _http into sky_engine libraries for analyzer (#4154)"
This reverts commit 3246b5c70661a3afe19e4698c5a9739d20177bcc.
It is dependent upon the Dart roll, which breaks the engine.
* Revert "Roll dart to ade37f931e90b0fdb8fe16d6bf6f089545da55b6 (#4151)"
This reverts commit ebd5e7a88f3a44f61ded155608f015609f2ee28f.
This Dart roll breaks the engine build on Travis.
Previously, cases like:
```dart
Color.lerp(const Color(0xFF00FF7F), const Color(0xFF00FFFF), 1.1)
```
...would result in unexpected effects (in this instance, lerping
between these colors with a curve that overshoots would take what
should be a simple animation from pale green to blue and add some
flickering bright green whenever it overshoots).
* Remove padding values in line_heights and glyph_position_x. Each value
in glyph_position_x now represents an actual glyph in the layout.
* Remove code intended to handle extra characters beyond the end of the
last line. The LineBreaker should ensure that the end of the last run
matches the end of the last line.
* Return the upstream/downstream affinity of the cursor position in
GetGlyphPositionAtCoordinate.
* Account for the space at the end of a word wrapped line in
GetGlyphPositionAtCoordinate / GetCoordinatesForGlyphPosition
This reverts commit 72c28f3a01bd9e6bed256edc4629705d96a7cead as it looks
like a potential cause of performance benchmark regressions on
https://flutter-dashboard.appspot.com/benchmarks.html:
- flutter_gallery_ios__transition_perf average_frame_build_time_millis
- flutter_gallery_ios__transition_perf missed_frame_build_budget_count
* Don't crash if there is only a single SemanticsNode
Previously, the code assumed that the root SemanticsNode will allways have a child. This is not true as can be seen in the hello_world example app, which would crash when a11y is turned on.
* review comment
If an isolate shuts down (for example if an app calls
Isolate.current.kill()), the UIDartState* on DartController will refer
to a freed object. This wires through notification that the is shutting
down through to the DartController so it can clean up appropriately.
This also makes gives the vm-service isolate an UIDartState* so that
the shutdown callback can behave correctly.