skia-flutter-autoroll
06bfc26d6b
Roll Skia from 88443909711b to 8752700a2565 (3 revisions) ( flutter/engine#48460 )
...
https://skia.googlesource.com/skia.git/+log/88443909711b..8752700a2565
2023-11-28 jlavrova@google.com Fixing a build break in Google3
2023-11-28 kjlubick@google.com Remove GrMipmapped and GrMipMapped
2023-11-28 jlavrova@google.com Revertng the revert of "Emoji font resolution fix"
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jcgregorio@google.com,matanl@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-28 17:48:30 +00:00
skia-flutter-autoroll
f83636ce72
Roll Skia from 38e60fd69349 to 7db11e437559 (1 revision) ( flutter/engine#48445 )
...
https://skia.googlesource.com/skia.git/+log/38e60fd69349..7db11e437559
2023-11-28 kjlubick@google.com Prepare GrContextThreadSafeProxy for modularization
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jcgregorio@google.com,matanl@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-28 13:09:22 +00:00
Kevin Lubick
92bce6db0e
Replace all calls to SkTypeface::Make with SkFontMgr ones ( flutter/engine#48319 )
...
Similar to https://github.com/flutter/engine/pull/48179 , Flutter needs
to stop depending on the default font manager, which the
`SkTypeface::Make*` calls do implicitly
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2023-11-28 07:08:35 -05:00
skia-flutter-autoroll
1f72451a76
Roll Dart SDK from 8b962b2b9e72 to b58735e626f6 (1 revision) ( flutter/engine#48435 )
...
https://dart.googlesource.com/sdk.git/+log/8b962b2b9e72..b58735e626f6
2023-11-28 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-170.0.dev
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter-engine
Please CC dart-vm-team@google.com ,jacksongardner@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-28 05:35:06 +00:00
Jonah Williams
91b78cc361
[Impeller] Add benchmarks that measure the time it takes to record canvas operations. ( flutter/engine#48374 )
...
This benchmark includes things like allocating geometry/contents, path conversions, et cetera. It doesn't include dispatching or GPU work, but should make it easier to see improvements/regressions in the efficiency of this code.
2023-11-28 03:06:53 +00:00
Harry Terkelsen
e3d0abe659
[canvaskit] Fall back to drawImage for browsers that don't support createImageBitmap ( flutter/engine#48336 )
...
Safari 14 doesn't have the `createImageBitmap` API available. This
change allows us to render into `RenderCanvas` without using
`createImageBitmap` in that case.
Fixes https://github.com/flutter/flutter/issues/138910
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2023-11-27 16:23:24 -08:00
Matan Lurey
92a2b041fb
Update HeaderFilterRegex once and for all. ( flutter/engine#48145 )
...
Includes a test (`header_filter_regex_test.dart`) that hopefully keeps
us on rails going forward.
2023-11-27 15:30:18 -08:00
Jim Graham
1f0d7cd7ea
SurfaceFrame root DisplayLists will no longer prepare an RTree ( flutter/engine#48422 )
...
The root slice of a surface frame was requesting the construction of an RTree from its DisplayList when it was built from a layer tree, but since the layer tree already does branch culling, it would not benefit from any further culling during `DisplayList::Dispatch`. Further, if there are platform views present in the layer tree then they will need an RTree to accurately convey "pixel ownership" information to the platform, but the root slice lives below any and all platform views, so it is the only slice that doesn't need an RTree for that case.
The cost of having an RTree in that slice was the accumulation of information and lists of rects that would never prove useful.
2023-11-27 23:27:34 +00:00
skia-flutter-autoroll
f9dd3b4dc9
Roll Dart SDK from ef97fe2415fd to 8b962b2b9e72 (1 revision) ( flutter/engine#48425 )
...
https://dart.googlesource.com/sdk.git/+log/ef97fe2415fd..8b962b2b9e72
2023-11-27 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-169.0.dev
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter-engine
Please CC dart-vm-team@google.com ,jacksongardner@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-27 23:08:17 +00:00
Michael Goderbauer
136f4a03c4
Dynamic view sizing [dart:ui] ( flutter/engine#48090 )
...
Towards https://github.com/flutter/flutter/issues/134501 .
This PR makes the following changes to the public dart:ui API:
* It adds the `FlutterView.pysicalConstraints` property that describes max and min width and height for a view. The framework is allowed to size the `FlutterView` to any `Size` that meets these constraints.
* It adds an optional `size` argument to `FlutterView.render`. The framework provides the chosen `Size` that meets the aforementioned constraints to the `render` method. If the `FlutterView.pysicalConstraints` are tight (minHeight == maxHeight and minWidth == maxWidth) the argument is optional to remain backwards compatible. In all other cases, a `Size` must be provided.
* It adds a `ViewConstraints` class, which is basically the `dart:ui` version of `BoxConstraints` (This is similar to how we have `ViewPadding` in dart:ui to mirror `EdgeInsets` from the framework). It describes the constraints of a `FlutterView`, i.e. it powers the `FlutterView.pysicalConstraints` property.
This change does not wire anything up to the embedders. For now, `FlutterView.pysicalConstraints` just returns tight constraints for the embedder-provided size of the view (`FlutterView.physicalSize`) and the size provided to `FlutterView.render` is ignored (after it is checked that it meets the constrains).
This PR enables the framework to implement the new dynamic view sizing and embedders to separately expose the new functionality to their clients.
Presubmits will fail until https://github.com/flutter/flutter/pull/138565 is submitted to the framework.
**DO NOT SUBMIT until https://github.com/flutter/flutter/pull/138648 is ready.**
2023-11-27 22:33:59 +00:00
Dan Field
5e435444f1
Roll shaderc to google/shaderc@37e25539ce ( flutter/engine#48415 )
...
Captures changes to expose vulkan relaxed rules when compiling GLSL shaders.
2023-11-27 21:22:56 +00:00
skia-flutter-autoroll
2cd01d0936
Roll Skia from 4c964f8c4738 to 600986ba305d (6 revisions) ( flutter/engine#48419 )
...
https://skia.googlesource.com/skia.git/+log/4c964f8c4738..600986ba305d
2023-11-27 michaelludwig@google.com [skif] Add per-testcase control over image diffing parameters
2023-11-27 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from fab2f1d6619c to 9aac6a34e9ad (5 revisions)
2023-11-27 robertphillips@google.com Non-substantive cleanup
2023-11-27 michaelludwig@google.com [skif] Extract relevantSubset() bounds+tilemode helper
2023-11-27 nicolettep@google.com Avoid needlessly enabling VK_KHR_dynamic_rendering extension
2023-11-27 robertphillips@google.com [graphite] Add Protected BackendTexture tests
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jcgregorio@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-27 21:22:54 +00:00
Harry Terkelsen
0e82e66bdd
[canvaskit] Enable multiview rendering ( flutter/engine#48301 )
...
Allows the CanvasKitRenderer to render into multiple views.
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
---------
Co-authored-by: skia-flutter-autoroll <skia-flutter-autoroll@skia.org>
Co-authored-by: Mouad Debbar <mdebbar@google.com>
Co-authored-by: 林洵锋 <linxunfeng@yeah.net>
Co-authored-by: Brandon DeRosier <bdero@google.com>
Co-authored-by: Jonah Williams <jonahwilliams@google.com>
Co-authored-by: Matej Knopp <matej.knopp@gmail.com>
2023-11-27 12:59:26 -08:00
gaaclarke
b90cbb6fdc
[Impeller] updated gaussian blur tests to use device private textures ( flutter/engine#48417 )
...
fixes https://github.com/flutter/flutter/issues/138955
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2023-11-27 12:51:18 -08:00
Jonah Williams
83d1bc80a1
[Impeller] add explainer for Android CPU profiling. ( flutter/engine#48407 )
...
So you don't have to talk to me to figure out how to do this.
2023-11-27 20:41:05 +00:00
hangyu
4f5a0eef4c
[ios] Send " did gain focus" message from engine to framework ( flutter/engine#48252 )
...
issue: https://github.com/flutter/flutter/issues/97747
framework pr :https://github.com/flutter/flutter/pull/135771
android pr: https://github.com/flutter/engine/pull/47114
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-27 20:22:53 +00:00
skia-flutter-autoroll
6374f10f4f
Roll Skia from 743fc1cde518 to 4c964f8c4738 (2 revisions) ( flutter/engine#48410 )
...
https://skia.googlesource.com/skia.git/+log/743fc1cde518..4c964f8c4738
2023-11-27 bevilacquajoey@gmail.com SkSVGDevice: don't skip fill-opacity when fill is black
2023-11-27 robertphillips@google.com [graphite] Add Graphite variants of VkProtectedContext tests
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jcgregorio@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-27 17:50:52 +00:00
Jonah Williams
2753839ce5
[Impeller] revert non-zero tessellation optimization. ( flutter/engine#48234 )
...
Forgot about the winding order. partially reverts https://github.com/flutter/engine/pull/46282
See https://github.com/flutter/flutter/issues/138598
Reopens https://github.com/flutter/flutter/issues/135458
2023-11-27 17:26:36 +00:00
skia-flutter-autoroll
35434128d8
Roll Skia from b0d81aba3f78 to 743fc1cde518 (3 revisions) ( flutter/engine#48406 )
...
https://skia.googlesource.com/skia.git/+log/b0d81aba3f78..743fc1cde518
2023-11-27 briansalomon@gmail.com Reland "[graphite] Add no-yield option to ContextOptions."
2023-11-27 kjlubick@google.com Explicitly set defines for FontMgrs in G3
2023-11-27 nicolettep@google.com Reland "[graphite] Implement AHardwareBuffer BackendTexture creation for Vulkan"
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jcgregorio@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-27 16:46:21 +00:00
skia-flutter-autoroll
cf7d03f858
Manual roll Dart SDK from f1fd14505782 to c9bdb5884670 (10 revisions) ( flutter/engine#48402 )
...
Manual roll requested by zra@google.com
https://dart.googlesource.com/sdk.git/+log/f1fd14505782..c9bdb5884670
2023-11-23 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-162.0.dev
2023-11-23 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-161.0.dev
2023-11-23 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-160.0.dev
2023-11-22 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-159.0.dev
2023-11-22 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-158.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-157.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-156.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-155.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-154.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-153.0.dev
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter-engine
Please CC dart-vm-team@google.com ,jacksongardner@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-27 16:30:21 +00:00
skia-flutter-autoroll
8ad794da60
Roll Skia from 5f0832787d0f to b0d81aba3f78 (1 revision) ( flutter/engine#48401 )
...
https://skia.googlesource.com/skia.git/+log/5f0832787d0f..b0d81aba3f78
2023-11-27 robertphillips@google.com [graphite] Auto-set the protectedness of Devices
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jcgregorio@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-27 15:58:30 +00:00
Matej Knopp
9a823f7768
Reduce number of surfaces required when presenting platform views ( flutter/engine#43301 )
...
Fixes https://github.com/flutter/flutter/issues/129710
Fixes https://github.com/flutter/flutter/issues/138936
Implements https://flutter.dev/go/optimized-platform-view-layers
## Example
This scene would normally require 5 surfaces, but with the PR it comes
down to 2 (when drawing over platform views) and 1 when all drawing is
outside of platform views).
https://github.com/flutter/flutter/assets/96958/091da832-bfbc-44a2-8da5-d55d84024c96
*If you had to change anything in the [flutter/tests] repo, include a
link to the migration guide as per the [breaking change policy].*
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or Hixie said the PR is test-exempt. See [testing the engine]
for instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2023-11-27 14:07:43 +01:00
Brandon DeRosier
c49cfdc9a9
[Flutter GPU] Texture binding, index binding, attachments, depth state. ( flutter/engine#48386 )
...
Now rendering textured 3D models!
* Combined depth+stencil attachment.
* Allow for multiple color attachments.
* Add blend mode configuration.
* Fix uniform ordering for vertex shaders.
* Texture binding and sampling options.
* Index buffer binding.
* Depth configuration.
2023-11-26 19:47:16 -08:00
Jonah Williams
02ba2b7ff2
[Impeller] use spec constant for decal support in morph filter. ( flutter/engine#48288 )
...
Don't branch on uniform for decal support in GLES backend.
2023-11-27 03:03:15 +00:00
Jonah Williams
0ba4edc764
[Impeller] OES extension does not apply to regular textures for decal support ( flutter/engine#48388 )
...
This extension only implies decal support for OES textures. Remove it from the check for generic decal support.
In practice i think it would be unlikely that a driver supports this and not regular decal, but that would only make the bugs this may cause even harder to track down.
2023-11-27 03:03:13 +00:00
skia-flutter-autoroll
ddef9843d6
Roll Skia from b18b594b230d to 0eea0b277d7d (7 revisions) ( flutter/engine#48387 )
...
https://skia.googlesource.com/skia.git/+log/b18b594b230d..0eea0b277d7d
2023-11-26 johnstiles@google.com Use SkToInt to avoid warning in Flutter roll.
2023-11-26 skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com Update SKP version
2023-11-26 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 2e96f5c2b566 to 860dca03b6e7 (1 revision)
2023-11-26 bungeman@google.com IWYU for modules/skshaper
2023-11-25 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 95073d786075 to 2e96f5c2b566 (1 revision)
2023-11-24 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 2ddf0aa40843 to 95073d786075 (2 revisions)
2023-11-24 johnstiles@google.com Avoid combining extremely large meshes.
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jcgregorio@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-26 18:19:02 +00:00
skia-flutter-autoroll
377e5f358e
Roll Fuchsia Linux SDK from P3HXI8K3eIeoBYhdX... to zHKuNuXtMPLbovc0j... ( flutter/engine#48376 )
...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC jacksongardner@google.com ,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-25 22:38:37 +00:00
Brandon DeRosier
05f43a96aa
[Flutter GPU] Raster encoding. First triangle! ( flutter/engine#48314 )
...
First triangle, in the framework! 🎉
Adds shader libraries, pipelines, command buffers, render passes, etc.
* Light pipelines/shader objects. No optimization yet, pipeline warming
to come.
* "Dynamic" command style. Don't re-send bindings if you don't need to.
Essentially: https://github.com/flutter/flutter/issues/133179
* No need to explicitly encode passes.
* Minimal descriptor usage.
* Nothing is async, except for the optional command buffer completion
callback.
It took a bunch of experimenting to get here, but I think things are
starting to look pretty neat. :)
Todo:
* Land the shader bundle format/remove the testing hacks & fixtures that
piggyback off of the runtime effect system.
* Add remaining calls for blend config, clearing bindings, etc.
* Inconsistent error handling patterns that need cleanup.
* Maybe: Surface exceptions for validation errors.
* Handle the texture usage bitmask more elegantly.
2023-11-24 19:02:58 -08:00
skia-flutter-autoroll
1a0a4caee0
Roll Fuchsia Linux SDK from 4CZFCL5oL042nQihC... to P3HXI8K3eIeoBYhdX... ( flutter/engine#48365 )
...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC jacksongardner@google.com ,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-24 21:43:23 +00:00
skia-flutter-autoroll
3901005fa0
Roll Skia from 094c3d963ba0 to 2c89bb28860b (1 revision) ( flutter/engine#48341 )
...
https://skia.googlesource.com/skia.git/+log/094c3d963ba0..2c89bb28860b
2023-11-23 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from 55204b9355dc to 3020b5f04bb1 (1 revision)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-23 20:41:28 +00:00
skia-flutter-autoroll
fcd2169740
Roll Skia from fc9c5337e568 to 094c3d963ba0 (6 revisions) ( flutter/engine#48340 )
...
https://skia.googlesource.com/skia.git/+log/fc9c5337e568..094c3d963ba0
2023-11-23 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 05e2e582257c to f0dc22ba8111 (1 revision)
2023-11-23 michaelludwig@google.com [skif] Adjust blur engine tile mode support API
2023-11-23 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 20eff9db7dc8 to fba482b7107c (3 revisions)
2023-11-23 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SK Tool from b9831128db04 to 045bb58be5e6
2023-11-23 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from 111d4246b357 to 55204b9355dc (5 revisions)
2023-11-23 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from bd6600c1bba7 to 1862fc490314 (21 revisions)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-23 19:45:04 +00:00
skia-flutter-autoroll
294b3a70c1
Roll Fuchsia Linux SDK from IK4xyRtZkDwqT6pXA... to 4CZFCL5oL042nQihC... ( flutter/engine#48338 )
...
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC jacksongardner@google.com ,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-23 18:13:36 +00:00
林洵锋
23ed0d9d6a
Fix not being able to hide iOS status bar via setEnabledSystemUIMode ( flutter/engine#48271 )
...
Fix https://github.com/flutter/flutter/issues/138604 and https://github.com/flutter/flutter/issues/138671
Related PR https://github.com/flutter/engine/pull/45351
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-23 00:49:13 +00:00
Mouad Debbar
4c20a233a8
[web] Hook the new JS API to the FlutterViewManager ( flutter/engine#48283 )
...
- Auto-generate view IDs.
- Views don't auto-register/auto-unregister anymore.
- Remove `EnginePlatformDispatcher.registerView/unregisterView` methods.
- Add `FlutterViewManager.createAndRegisterView/disposeAndUnregisterView/dispose` methods.
- Hook the `addView`/`removeView` JS APIs to `FlutterViewManager`.
2023-11-22 21:27:56 +00:00
skia-flutter-autoroll
c1ccce2457
Roll Skia from 3a79d7a618aa to 5606ef899116 (1 revision) ( flutter/engine#48331 )
...
https://skia.googlesource.com/skia.git/+log/3a79d7a618aa..5606ef899116
2023-11-22 jvanverth@google.com Reland "[graphite] Use colorspace matrix to handle RGB swizzle."
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-22 21:27:53 +00:00
LouiseHsu
faa3e610ac
Fix Share Screen Crash on iPad ( flutter/engine#48220 )
...
Fixes https://github.com/flutter/flutter/issues/138550

2023-11-22 20:49:58 +00:00
Dan Field
28fbba2098
Delete unused/test only code from FML ( flutter/engine#48327 )
...
This is more-or-less a revert of https://github.com/flutter/engine/pull/14011
This code never ended up being used outside of tests, and it's not how we handle asset loading at this point anyway.
I was hopeful we could kill off all runtime dependencies on Dart in `FML` when looking at this, but it looks like trace_event.h still wants to import dart_api_tools.h for some Dart enum types. This may or may not matter if we ever want to build FML for web/wasm. /cc @eyebrowsoffire. If we really need to do that, we can refactor the trace event stuff so that it has a web and Dart implementation that's selected at build time.
2023-11-22 20:49:56 +00:00
skia-flutter-autoroll
5bf972b2c7
Roll Skia from 30ecaac60b47 to 3a79d7a618aa (1 revision) ( flutter/engine#48328 )
...
https://skia.googlesource.com/skia.git/+log/30ecaac60b47..3a79d7a618aa
2023-11-22 johnstiles@google.com Replace STArray with trivial hand-written stack.
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-22 20:39:26 +00:00
auto-submit[bot]
4f2aeb7e76
Reverts "[Impeller] pass const ref to binding helpers." ( flutter/engine#48330 )
...
Reverts flutter/engine#48318
Initiated by: jonahwilliams
This change reverts the following previous change:
Original Description:
No point in passing by value and moving, just pass a const ref through. Trivial performance improvement.
# Before
```cpp
/// Bind uniform buffer for resource named FragInfo.
static bool BindFragInfo(ResourceBinder& command, BufferView view) {
return command.BindResource(ShaderStage::kFragment, kResourceFragInfo, kMetadataFragInfo, std::move(view));
}
/// Bind combined image sampler for resource named texture_sampler.
static bool BindTextureSampler(ResourceBinder& command, std::shared_ptr<const Texture> texture, std::shared_ptr<const Sampler> sampler) {
return command.BindResource(ShaderStage::kFragment, kResourceTextureSampler, kMetadataTextureSampler, std::move(texture), std::move(sampler));
}
```
# After
```cpp
/// Bind uniform buffer for resource named FragInfo.
static bool BindFragInfo(ResourceBinder& command, const BufferView& view) {
return command.BindResource(ShaderStage::kFragment, kResourceFragInfo, kMetadataFragInfo, view);
}
/// Bind combined image sampler for resource named texture_sampler.
static bool BindTextureSampler(ResourceBinder& command, const std::shared_ptr<const Texture>& texture, const std::shared_ptr<const Sampler>& sampler) {
return command.BindResource(ShaderStage::kFragment, kResourceTextureSampler, kMetadataTextureSampler, texture, sampler);
}
```
2023-11-22 20:09:17 +00:00
Jackson Gardner
7aba08366e
Revert "Manual roll Dart SDK from f1fd14505782 to df958dc1ca7b (6 revisions)" ( flutter/engine#48325 )
...
Reverts flutter/engine#48316
3.3.0-158 breaks customer testing because of https://dart-review.googlesource.com/c/sdk/+/336244
2023-11-22 19:27:17 +00:00
Jonah Williams
c453bac49b
[Impeller] cache render target properties on Render Pass. ( flutter/engine#48323 )
...
Otherwise we do three hashmap lookups everything we call OptionsFromPass(AndEntity) in a contents.
## Before
16 / 392 = 4%

## After
6/ 458 = 1.3%

2023-11-22 19:16:11 +00:00
Jonah Williams
2faace2ef2
[Impeller] pass const ref to binding helpers. ( flutter/engine#48318 )
...
No point in passing by value and moving, just pass a const ref through. Trivial performance improvement.
# Before
```cpp
/// Bind uniform buffer for resource named FragInfo.
static bool BindFragInfo(ResourceBinder& command, BufferView view) {
return command.BindResource(ShaderStage::kFragment, kResourceFragInfo, kMetadataFragInfo, std::move(view));
}
/// Bind combined image sampler for resource named texture_sampler.
static bool BindTextureSampler(ResourceBinder& command, std::shared_ptr<const Texture> texture, std::shared_ptr<const Sampler> sampler) {
return command.BindResource(ShaderStage::kFragment, kResourceTextureSampler, kMetadataTextureSampler, std::move(texture), std::move(sampler));
}
```
# After
```cpp
/// Bind uniform buffer for resource named FragInfo.
static bool BindFragInfo(ResourceBinder& command, const BufferView& view) {
return command.BindResource(ShaderStage::kFragment, kResourceFragInfo, kMetadataFragInfo, view);
}
/// Bind combined image sampler for resource named texture_sampler.
static bool BindTextureSampler(ResourceBinder& command, const std::shared_ptr<const Texture>& texture, const std::shared_ptr<const Sampler>& sampler) {
return command.BindResource(ShaderStage::kFragment, kResourceTextureSampler, kMetadataTextureSampler, texture, sampler);
}
```
2023-11-22 19:14:15 +00:00
LongCatIsLooong
59a5579465
Expose a few more glyph apis from ui.Paragraph ( flutter/engine#47698 )
...
Add 2 methods for querying glyph-related metrics
```dart
GlyphInfo? getClosestGlyphInfoForOffset(Offset offset);
GlyphInfo? getGlyphInfoAt(int codeUnitOffset);
```
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-22 18:04:13 +00:00
skia-flutter-autoroll
c39c4f24d8
Roll Skia from efdec1f459ce to 9086788fc341 (2 revisions) ( flutter/engine#48317 )
...
https://skia.googlesource.com/skia.git/+log/efdec1f459ce..9086788fc341
2023-11-22 jvanverth@google.com Use sk_ieee_float_divide in SkMatrix::setRectToRect.
2023-11-22 kjlubick@google.com Reland "Reland "Remove other uses of SkFontMgr::RefDefault""
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-22 17:29:09 +00:00
skia-flutter-autoroll
925d1e8cb4
Manual roll Dart SDK from f1fd14505782 to df958dc1ca7b (6 revisions) ( flutter/engine#48316 )
...
Manual roll requested by jacksongardner@google.com
https://dart.googlesource.com/sdk.git/+log/f1fd14505782..df958dc1ca7b
2023-11-22 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-158.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-157.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-156.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-155.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-154.0.dev
2023-11-21 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.3.0-153.0.dev
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter-engine
Please CC dart-vm-team@google.com ,jacksongardner@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter Engine: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-22 17:03:14 +00:00
skia-flutter-autoroll
f44004197c
Roll Skia from 2c68a803f497 to efdec1f459ce (2 revisions) ( flutter/engine#48315 )
...
https://skia.googlesource.com/skia.git/+log/2c68a803f497..efdec1f459ce
2023-11-22 jvanverth@google.com [graphite] Multiply by inverse texture size to normalize image localCoords
2023-11-22 nicolettep@google.com Revert "[graphite] Implement AHardwareBuffer BackendTexture creation for Vulkan"
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-22 16:31:05 +00:00
skia-flutter-autoroll
e663563c6e
Roll Skia from 23b9316efd20 to cebd44423589 (1 revision) ( flutter/engine#48304 )
...
https://skia.googlesource.com/skia.git/+log/23b9316efd20..cebd44423589
2023-11-22 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from c0be9bb8bc17 to 111d4246b357 (1 revision)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-22 03:42:23 +00:00
Jonah Williams
811d365669
[Impeller] make host buffer state internally ref counted. ( flutter/engine#48303 )
...
std::shared_from_this is actually incredibly slow, and dominates the cost of host buffer allocation at 20x more expensive than the memcpy. We can remove the usage of shared_from_this by making an internal class hold the actual allocation/buffer state instead.
### Before

146 ms / 647ms = ~20%
### After
33 ms / 540 ms = ~6%

2023-11-22 03:24:18 +00:00
skia-flutter-autoroll
651c54111c
Roll Skia from cac28f3634a3 to b6f33389cefa (1 revision) ( flutter/engine#48299 )
...
https://skia.googlesource.com/skia.git/+log/cac28f3634a3..b6f33389cefa
2023-11-22 johnstiles@google.com Revert "Reland "Remove other uses of SkFontMgr::RefDefault""
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brianosman@google.com ,jacksongardner@google.com,jamesgk@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2023-11-22 01:00:05 +00:00
Jonah Williams
330c06a4f2
[Impeller] Dont copy the paint until we're sure that the RRect blur optimization will apply. ( flutter/engine#48298 )
...
Extremely minor micro optimization. Dont copy the paint too early.
Before

13/269 = ~5%
After:

3/262 = ~1%
2023-11-22 00:24:06 +00:00