1659 Commits

Author SHA1 Message Date
nturgut
b7cd3f8e70
Revert "Re-merge Switch web-render option default to auto. Add documentation (#23187)" (#23246)
This reverts commit 08d5c33b02996e3384f48f9160ed2047b5be4c66.
2020-12-22 12:02:26 -08:00
Dan Field
5a2244c581
Reland path volatility tracker, disabling it if deterministic rendering is requested (#23226)
* Reland path volatility tracker (#23063)" (#23220)

This reverts commit fceef3aaa9d156e8ec3f4a079c142921882f70d8.

* allow disabling based on whether deterministic rendering is needed
2020-12-22 08:25:20 -08:00
Dan Field
fceef3aaa9
Revert "Reland path volatility tracker (#23063)" (#23220)
This reverts commit 205d2b8e188be518c313c9b537429b566d36fa35.
2020-12-21 13:53:18 -08:00
nturgut
08d5c33b02
Re-merge Switch web-render option default to auto. Add documentation (#23187) 2020-12-21 09:56:02 -08:00
Zachary Anderson
67cb0f382e
Revert "[web] Switch web-render option default to auto (#23090)" (#23161)
This reverts commit 50e7d89163418b73be4b376ac96a335856da1224.
2020-12-17 18:22:36 -08:00
Mouad Debbar
d941aefa61
[web] Rich text painting on bitmap canvas (#23136) 2020-12-17 18:19:02 -08:00
Paul Berry
2ef2c86162
Fix engine in preparation for implementing https://github.com/dart-lang/language/issues/1274 (#23131)
When https://github.com/dart-lang/language/issues/1274 (Infer
non-nullability from local boolean variables) is implemented, flow
analysis will detect that code like this no longer needs to perform a
null check:

    final bool hasIdentityTransform =
        transform == null || isIdentityFloat32ListTransform(transform);
    ...
    if (!hasIdentityTransform) {
      ... transform! ... // Null check unnecessary
    }

To avoid a build failure due to the unnecessary null check, we need to
temporarily write it in a way that we can ignore it.  Once the feature
is complete and rolled into flutter, I'll remove the null check
entirely.
2020-12-17 11:59:07 -08:00
Mouad Debbar
ade75e08f6
[web] Rich paragraph getPositionForOffset (#23133) 2020-12-17 11:27:34 -08:00
Siva
76310c4264
Add missing sdk constriant in pubspec.yaml files. (#23124)
* Add missing sdk constriants in pubspec.yaml files.

* Update tools/android_lint/pubspec.yaml

Co-authored-by: Zachary Anderson <zanderso@users.noreply.github.com>
2020-12-17 09:45:26 -08:00
Mouad Debbar
19950f576e
[web] Rich paragraph getBoxesForRange (#23098) 2020-12-16 18:09:48 -08:00
Chris Bracken
27ebbc4bf3
Rename PointerState.isDown as per style guide (#23120)
Renames from isDown to is_down in accordance with the C++ style guide.
2020-12-16 17:09:18 -08:00
Mouad Debbar
acad21c190
[web] Tests for rich paragraph DOM (#23097) 2020-12-16 17:05:04 -08:00
Ferhat
50e7d89163
[web] Switch web-render option default to auto (#23090) 2020-12-16 16:43:13 -08:00
Yegor
fd6b409f95
Fix recursive access to SkImage in image resurrector (#23115) 2020-12-16 14:31:24 -08:00
Chris Bracken
69d7e8eb91
Correct button state on synthetic pointer events (#23111)
This corrects the button state emitted on synthetic pointer move and
hover events generated by the engine.

When an embedder notifies the engine of a pointer up or down event, and
the pointer's position has changed since the last move or hover event,
`PointerDataPacketConverter` generates a synthetic move or hover to
notify the framework of the change in position. In these cases, the
current event from the embedder contains the new button state *after*
the pointer up/down event, but the move/hover needs to be synthesized
such that it occurs *before* the pointer up/down, with the previous
button state.

This patch stores the button state after each pointer down, up, move, or
hover event such that it can be used by the next event if a synthetic
event must be issued.

The bug in the previous logic was revealed by the release of macOS 11
(Big Sur), which appears to issue move events between mouse down and
mouse up, which did not use to be the case.

This fixes https://github.com/flutter/flutter/issues/64961, which is the
desktop-specific tracking bug for the more general Big Sur mouse click
umbrella issue https://github.com/flutter/flutter/issues/71190.
2020-12-16 11:57:42 -08:00
Ferhat
b080bdf56f
Prevent recycling of canvas multiple times (#23089) 2020-12-15 16:42:40 -08:00
Mouad Debbar
730ad8601b
[web] Calculate height and baseline for rich text (#23064) 2020-12-15 15:48:34 -08:00
Yegor
3d4c021fbd
[canvaskit] cache and reuse platform view overlays (#23061) 2020-12-15 14:57:05 -08:00
Yegor
3d3e16e303
upgrade Firefox to 83 (#22829) 2020-12-15 12:12:06 -08:00
Dan Field
205d2b8e18
Reland path volatility tracker (#23063)
* Revert "Revert "Set SkPath::setIsVolatile based on whether the path survives at least two frames (#22620)" (#23044)"

This reverts commit 4f914253bd7cd2a5cca3fd97213df37494e9bf37.

* Fix tracing
2020-12-14 17:21:55 -08:00
Yegor
d0b6e4269f
[canvaskit] improve image error handling and messaging (#22951) 2020-12-14 14:46:15 -08:00
Mouad Debbar
8ead1df40b
[web] Align offset for lines of rich text (#23043) 2020-12-14 13:23:03 -08:00
Mouad Debbar
5d0310fd7f
[web] Separate the height ruler from the other rulers (#22964) 2020-12-14 13:13:02 -08:00
Harry Terkelsen
360a16ad75
CanvasKit fix embedded view clipping (#22937) 2020-12-14 13:08:03 -08:00
Harry Terkelsen
405b105fe8
Pass angles for SweepGradient in degrees, not radians (#21677) 2020-12-11 16:54:54 -08:00
Harry Terkelsen
25293df2eb
Implement pushColorFilter in CanvasKit (#22838)
* Implement pushColorFilter in CanvasKit

* Add test

* Update goldens lock
2020-12-11 16:54:28 -08:00
Dan Field
4f914253bd
Revert "Set SkPath::setIsVolatile based on whether the path survives at least two frames (#22620)" (#23044)
This reverts commit 2efc7c10aa12005010c837a1023024bb26bee143.
2020-12-11 15:39:24 -08:00
Yegor
3cdb6de239
[canvaskit] reuse canvases when window resizes (#22966) 2020-12-11 15:05:11 -08:00
Mouad Debbar
3a035ee044
[web] Add complex rich text test cases and fix them (#22948) 2020-12-11 11:28:49 -08:00
Mouad Debbar
7bdaf3795b
[web] Introduce flag to enable new rich text implementation (#22942) 2020-12-11 09:28:37 -08:00
Mouad Debbar
14c8c24456
[web] Fix regression in foreground style (#22999) 2020-12-10 16:30:09 -08:00
David Iglesias
50d830a1ac
[web] Do not reset 'cursor' in PersistedPlatformView. (#22977) 2020-12-10 16:03:02 -08:00
Jim Graham
bb81b954b9
Allow Tile mode for blur filter and add new decal TileMode (#22982)
Add a new TileMode.decal enum value and allow TileMode in ImagerFilter.blur() constructor
2020-12-10 14:37:17 -08:00
Dan Field
2efc7c10aa
Set SkPath::setIsVolatile based on whether the path survives at least two frames (#22620)
This patch defaults the volatility bit on SkPaths to false, and then flips it to true if the path survives at least two frames.
2020-12-10 13:57:23 -08:00
nturgut
3a30ae3d5c
Fix ios voiceover (for safari >13.4) (#22965)
* fixes voice over for higher ios-safari versions

* change enable conditions for webkit

* adding click event for removal. adding unit tests

* run the mobile semantics enabler test on mobile browsers

* remove test method that gave different result on LUCI.(further inv. needed)
2020-12-10 11:59:44 -08:00
Ferhat
4797b06652
[web] Fix drag failure when RMB pointer up event is not received (#22946) 2020-12-10 10:32:04 -08:00
Ferhat
91ec9451dd
[web] Optimize BitmapCanvas. Fixes overallocation of canvas elements (#22856) 2020-12-10 09:08:29 -08:00
Harry Terkelsen
fb486d9d90
Fix platform view transforms in CanvasKit (#22945) 2020-12-09 16:13:02 -08:00
Mouad Debbar
7e5ac8bb3f
[web] Cache CSS font string instead of the style object (#22939) 2020-12-09 16:08:03 -08:00
nturgut
2948fee1bf
[web] For Firefox focusing on the DOM element after blur propagates (#22953)
* For Firefox focusing on the DOM element after blur propagates

* modify the unit tests. remove webkit skip

* change async testing to a more common usage
2020-12-09 16:07:06 -08:00
nturgut
8518a5bbe6
update browser changing docs (#22968) 2020-12-09 15:13:55 -08:00
Mouad Debbar
da5b0f9b36
[web] Default styles for rich text (#22941) 2020-12-08 15:22:20 -08:00
Mouad Debbar
df30ffef4f
[web] Fix edge cases when force-breaking lines (#22910) 2020-12-08 13:30:41 -08:00
Yegor
c31dc58918
[canvaskit] fix TransformLayer.preroll (#22890) 2020-12-08 12:04:58 -08:00
nturgut
2951317570
[web] sharding change is merged. re-enable tests (#22884)
* sharding change is merged. re-enable tests

* fix file name for image loading. re-block auto
2020-12-08 09:54:10 -08:00
Mouad Debbar
a3ee6150e1
[web] Handle long text and ellipsis in rich text (#22873) 2020-12-07 13:28:14 -08:00
Yegor
ff87b1d767
copy the glibc fix to felt (#22878) 2020-12-04 13:25:39 -08:00
Yegor
47add1dc32
re-enable pointer events inside platform views (#22874) 2020-12-04 13:25:22 -08:00
Mouad Debbar
6a5971dac7
[web] Initial rich measurement implementation (#22779) 2020-12-03 16:33:03 -08:00
mikerreed
6ae2594b97
opt into new Skia APIs (#22845) 2020-12-03 15:28:02 -08:00