* Update SurfacePath to use PathRef
* Fix test analysis errors
* Switch DDRect to use path to reduce paint time processing
* Implement toString() for debug mode
* Fix contains (bounds inclusive) edge case, add test
* Update recording canvas test for drawDRRect change
* Update diffrate for arc/conic render change
* Add test for winding for beveled border. Fix checkOnCurve
* Fix mono quad winding on curve check
* fix _chopCubicAtYExtrema and add test case
* Address reviewer comments / setAll API usage
* change the version of simulator. luci bots only has 13.0
* skip failing pointer binding tests
* skip path_metrics (canvaskit) and a method from surface_test
* fix analyzer errors
* remove extra added touch event context test
* removing left overs for screenshot debugging
* apply reviewers suggestion for skipping tests
This change converts all Float64List matrices to Float32List at the dart:ui interface boundary. Internally, it only uses Float32List. Float32List requires less memory and is orders of magnitude faster to allocate, and it has sufficient precision as Flutter mobile engine and Skia use 32-bit floats anyway.
This change speeds up frame preroll by 50% on the bench_card_infinite_scroll benchmark.
For more details on Float64Array allocation in JS (which backs Float64List in Dart) see the following:
https://bugs.chromium.org/p/v8/issues/detail?id=9199https://bugs.chromium.org/p/v8/issues/detail?id=2022
* Reland "add limited analysis options (#17332)"
This time I'm starting without Cirrus. Will add Cirrus serpartely from code changes.
This reverts commit 6d33ee1a2ca7d404ebd5cb434d8ab859bf8ac0b7.
* disable Cirrus analysis check
* Switch ui.window.devicePixelRatio to browser dpi
* Add integration test for multi res image loading
* Update cirrus for new integration test
* update canvas golden test root transform
* Update compositing golden test with dpr transform
* Safari font collection tests skip failing methods
* add a clear to the semantics test to make sure no DOM elements are leaking to the other tests
* fix semantics_helper_test. skip for semantics_test. teardown didn't work
* skip test, the skipped method run for 8 minutes according to the logs
* history tests methods runs multiple times. only run them on linux for now. they were also already failing in edge/windows
* making edge default test browser on windows. adding some skips (not all) for methods failing on edge
* skip failing tests. make egde default for testing
* skip one more test
* addressing reviewer comments. removing extra bat file
* Refactor BitmapCanvas. Fix image compositing bug. Allocate canvas lazily
* Fix recording canvas test by restoring context save
* Update recording canvas test for drawColor to show multiply blend
* Introduce `SkiaObject` an object that's backed by Skia C++ objects that need to be explicitly deleted.
* Automatically delete `SkiaObject`s at the end of frame.
* Make `SkPaint` a `SkiaObject`.
Because `SkiaObject`s are deleted at the end of the frame, the object can be reused as many times as necessary within the frame. `SkPaint` in particular is a fairly expensive object. Reusing this object, for example, on `drawRRect` drops the canvas paint time by 30%.