Skip to content

Commit

Permalink
[CanvasKit] Add workaround for unimplemented computeLineMetrics (da…
Browse files Browse the repository at this point in the history
  • Loading branch information
daohoangson committed Feb 22, 2021
1 parent 9d2681d commit 60001ef
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 4 deletions.
12 changes: 10 additions & 2 deletions .github/workflows/demo_app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,15 @@ jobs:
pwd && ls -al
sed -i -e 's/# web only: //' pubspec.yaml
flutter build web
flutter build web --web-renderer canvaskit
mv ./build/web ./build/web-canvaskit
flutter build web --web-renderer html
mv ./build/web ./build/web-html
flutter build web --web-renderer auto
mv ./build/web-canvaskit ./build/web/canvaskit
mv ./build/web-html ./build/web/html
- name: Generate supported/tags.html
run: |
Expand Down Expand Up @@ -94,6 +102,6 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
body: "Deployed ${{ github.sha }} to ${{ steps.now.outputs.url }}.\n\nQuick links:\n- [supported/tags.html](${{ steps.now.outputs.url }}/supported/tags.html)\n- [Hello World](${{ steps.now.outputs.url }}/#/helloworld)\n- [Hello World (core)](${{ steps.now.outputs.url }}/#/helloworldcore)\n- [Wordpress](${{ steps.now.outputs.url }}/#/wordpress)"
body: "Deployed ${{ github.sha }} to ${{ steps.now.outputs.url }}.\n\nQuick links:\n- [supported/tags.html](${{ steps.now.outputs.url }}/supported/tags.html)\n- [Hello World](${{ steps.now.outputs.url }}/#/helloworld)\n- [Hello World (core)](${{ steps.now.outputs.url }}/#/helloworldcore)\n- [Wordpress](${{ steps.now.outputs.url }}/#/wordpress)\n- [--web-renderer canvaskit](${{ steps.now.outputs.url }}/canvaskit/)\n- [--web-renderer html](${{ steps.now.outputs.url }}/html/)"
fingerprint: "## Demo app"
replace: please
1 change: 1 addition & 0 deletions packages/core/lib/src/internal/core_ops.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import 'dart:math';
import 'dart:ui';

import 'package:flutter/gestures.dart';
import 'package:flutter/rendering.dart';
Expand Down
10 changes: 8 additions & 2 deletions packages/core/lib/src/internal/ops/tag_li.dart
Original file line number Diff line number Diff line change
Expand Up @@ -372,11 +372,17 @@ class _ListMarkerRenderObject extends RenderBox {
@override
void paint(PaintingContext context, Offset offset) {
final canvas = context.canvas;
final m = _textPainter.computeLineMetrics().first;

var lineMetrics = <LineMetrics>[];
try {
lineMetrics = _textPainter.computeLineMetrics();
// ignore: empty_catches
} on UnimplementedError {}
final m = lineMetrics.isNotEmpty ? lineMetrics.first : null;
final center = offset +
Offset(
size.width / 2,
(m.descent.isFinite && m.unscaledAscent.isFinite)
(m?.descent?.isFinite == true && m?.unscaledAscent?.isFinite == true)
? size.height -
m.descent -
m.unscaledAscent +
Expand Down

0 comments on commit 60001ef

Please sign in to comment.