Camille Simon
7965fd759e
[Android] Check for text to paste before trying to retrieve data from URI ( flutter/engine#48166 )
...
Adds a check to retrieve explicit text from Clipboard items via [`getText`](https://developer.android.com/reference/android/content/ClipData.Item#getText() ) before attempting to retrieve data if the Clipboard item (`ClipData.Item`) has an associated URI. Also adds more error handling for edge cases concerning URIs (the URI not having the content scheme or being null).
Fixes https://github.com/flutter/flutter/issues/74320 . Some content providers will not send URIs containing the `text/*` pattern or have the content scheme (`content://`), but ultimately we should expect Clipboard items to either fall **not** into one of those categories or have an explicit textual value available via `getText`. In case this is not true, though, checks for non-content URIs and null URIs are added, as well :)
Tested on a Samsung tablet with pasting from MS Word, MS Excel, and Samsung Notes.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-12-01 00:04:42 +00:00
skia-flutter-autoroll
3ffeaa87b6
Roll Skia from 88a1bcb9e43e to 0a90c366ff87 (3 revisions) ( flutter/engine#48549 )
...
https://skia.googlesource.com/skia.git/+log/88a1bcb9e43e..0a90c366ff87
2023-11-30 fmalita@chromium.org [skottie] Plumb orignal font family name to SkShaper
2023-11-30 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from e6b1b3f50cf0 to 4cf7a7a3f3b7
2023-11-30 lovisolo@google.com [bazel] Gold and Perf traces: Include compilation_mode key/value pair.
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-30 23:50:29 +00:00
skia-flutter-autoroll
ea91f710de
Manual roll Dart SDK to 3.3.0-174.2.beta (4 revisions) ( flutter/engine#48538 )
...
Manual roll requested by zra@google.com
https://dart.googlesource.com/sdk.git/+log/b58735e626f6..d24e4354ee54
2023-11-30 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.3.0-174.0.dev
2023-11-28 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.3.0-173.0.dev
2023-11-28 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.3.0-172.0.dev
2023-11-28 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.3.0-171.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 ,matanl@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
---------
Co-authored-by: Zachary Anderson <zanderso@users.noreply.github.com>
2023-11-30 15:35:57 -08:00
skia-flutter-autoroll
b28dfcfcb9
Roll Skia from db3399a541f3 to 88a1bcb9e43e (1 revision) ( flutter/engine#48545 )
...
https://skia.googlesource.com/skia.git/+log/db3399a541f3..88a1bcb9e43e
2023-11-30 michaelludwig@google.com [skif] Fix ignore-ctm sigma adjustment for mask->image filters
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-30 22:51:56 +00:00
Loïc Sharma
f5cacea14a
[Windows] Begin decoupling text input plugin from the view ( flutter/engine#47833 )
...
Currently the text input plugin is strongly tied to a single view. This change makes the text input plugin tied to the engine in preparation for multi-view world.
Part of https://github.com/flutter/flutter/issues/115611
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-30 21:49:14 +00:00
skia-flutter-autoroll
0b04bedb47
Roll Skia from 2d236de89898 to db3399a541f3 (3 revisions) ( flutter/engine#48543 )
...
https://skia.googlesource.com/skia.git/+log/2d236de89898..db3399a541f3
2023-11-30 michaelludwig@google.com PredrawFlags and automaskfilter skipping (for text)
2023-11-30 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skottie-base from ba1e7f5c1e82 to e6b1b3f50cf0
2023-11-30 johnstiles@google.com Remove tail argument from SkRasterPipeline stages.
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-30 21:33:20 +00:00
Jim Graham
391fe82deb
[Impeller] Add direct tesselation of circles for DrawCircle and Round end caps ( flutter/engine#48103 )
...
Note: The GPU tesselation for drawPoints is disabled in this test PR, but will be re-enabled when I can run some benchmarks to see where a good cutoff exists.
Tessellation for circular or quarter circular paths is now handled by a single tessellator class that provides services for DrawCircle, DrawPoints (round caps), and DrawLines (round caps). Creating a general path is avoided along with the associated overhead of recognizing and using a generic tessellation step.
2023-11-30 20:54:06 +00:00
Harry Terkelsen
9b26cdc88c
[canvaskit] Revert to drawImage rendering on Chrome 110 or earlier ( flutter/engine#48515 )
...
This updates a fix for Chrome 110 and earlier to always activate, not
just on Windows.
Fixes https://github.com/flutter/flutter/issues/138827
## 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-30 12:41:23 -08:00
skia-flutter-autoroll
767eee79a7
Roll Skia from 6b4bdebaab88 to 2d236de89898 (1 revision) ( flutter/engine#48537 )
...
https://skia.googlesource.com/skia.git/+log/6b4bdebaab88..2d236de89898
2023-11-30 johnstiles@google.com Use initializer for tail.
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-30 19:57:24 +00:00
gaaclarke
4e92f34439
[Impeller] Started expanding the blur clip region ( flutter/engine#48535 )
...
fixes https://github.com/flutter/flutter/issues/139317
test: AiksTest.CanRenderClippedBlur
This works by double padding. First it applies the padding to clip
region, then it add a transparent gutter around the snapshot to account
for any of the expanded clip region that was ignored. This is suboptimal
since there maybe a considerable region for which blur is calculated
that is clipped. That can be optimized in the future by adjusting the
UVs in the blur phases to match the clip region.
## screenshot of result
<img width="1026" alt="Screenshot 2023-11-30 at 10 28 14 AM"
src="https://github.com/flutter/engine/assets/30870216/a0c673db-8b7a-465e-a75c-09f19d1b98aa ">
## 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-30 11:26:06 -08:00
skia-flutter-autoroll
5e8a7c0128
Roll Skia from 0e479728cc1f to 6b4bdebaab88 (1 revision) ( flutter/engine#48536 )
...
https://skia.googlesource.com/skia.git/+log/0e479728cc1f..6b4bdebaab88
2023-11-30 johnstiles@google.com Add tail pointer to SkRasterPipeline_BranchIfAllLanesActiveCtx.
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-30 18:42:24 +00:00
skia-flutter-autoroll
e980dd49f5
Roll Skia from 0968fe18ff75 to 0e479728cc1f (1 revision) ( flutter/engine#48534 )
...
https://skia.googlesource.com/skia.git/+log/0968fe18ff75..0e479728cc1f
2023-11-30 johnstiles@google.com Add SkRasterPipeline context for InitLaneMasks op.
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-30 17:41:33 +00:00
skia-flutter-autoroll
72e3c2789d
Roll Skia from 2f01d500a352 to 0968fe18ff75 (2 revisions) ( flutter/engine#48531 )
...
https://skia.googlesource.com/skia.git/+log/2f01d500a352..0968fe18ff75
2023-11-30 bungeman@google.com Use weak binding for blocking region functions
2023-11-30 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 6c61584c8b14 to 9b8a5224f9db (2 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 ,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-30 14:57:10 +00:00
Bruno Leroux
2a59992ea5
[Android] Add support for the PlatformChannel "Share.invoke" command ( flutter/engine#48265 )
...
## Description
This PR adds support for the PlatformChannel `Share.invoke` message on Android (before this PR it is only supported on iOS).
## Related Issue
Engine side for https://github.com/flutter/flutter/issues/138728
## Tests
Adds 2 tests.
2023-11-30 06:12:11 +00:00
skia-flutter-autoroll
83cca397fb
Roll Skia from 23721750e433 to 5d64b1322879 (1 revision) ( flutter/engine#48520 )
...
https://skia.googlesource.com/skia.git/+log/23721750e433..5d64b1322879
2023-11-30 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from 3020b5f04bb1 to e0a502ae9dab (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 ,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-30 05:08:31 +00:00
skia-flutter-autoroll
04e7591335
Roll Fuchsia Linux SDK from 8wu5EgBh1yJPNOd5W... to Bb2k375udWIltCEAx... ( flutter/engine#48519 )
...
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 matanl@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-30 04:40:05 +00:00
skia-flutter-autoroll
6de9201e14
Roll Skia from 928e8950e8e3 to 5a635f2211ce (1 revision) ( flutter/engine#48511 )
...
https://skia.googlesource.com/skia.git/+log/928e8950e8e3..5a635f2211ce
2023-11-29 smartercallum@gmail.com Fix single-cluster justification for RTL
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-29 22:41:23 +00:00
Mouad Debbar
ac83bcf45e
[web] No implicit view in multi-view mode ( flutter/engine#48505 )
...
- No implicit view in mult-view mode.
- `window.devicePixelRatio` => `EngineFlutterDisplay.instance.devicePixelRatio`.
- `window.physicalSize` => `view.physicalSize`.
- Remove `LayerTree.frameSize`.
- `defaultRouteName` is set to `/` when there's no implicit view.
- All routing operations are noops in multi-view mode.
With these changes, I was able to run all examples in https://github.com/goderbauer/mvp without an implicit view.
2023-11-29 21:11:05 +00:00
skia-flutter-autoroll
a559ffdcf1
Roll Skia from 010883e6572c to 928e8950e8e3 (1 revision) ( flutter/engine#48507 )
...
https://skia.googlesource.com/skia.git/+log/010883e6572c..928e8950e8e3
2023-11-29 michaelludwig@google.com [graphite] Treat identity transforms as pixel-aligned in CoverageMaskRenderStep
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-29 20:43:02 +00:00
Harry Terkelsen
f377fc827e
[canvaskit] Disable createImageBitmap support on Chrome 110 or older on Windows. ( flutter/engine#48475 )
...
On Chrome 110 or older, there is a bug where an ImageBitmap will be read back upside down if it is stored upside down on the GPU. This only happens on Windows. So if we are on Windows and running on Chrome 110 or older, then fall back to `drawImage` based rendering.
Fixes https://github.com/flutter/flutter/issues/138827
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-29 18:06:11 +00:00
Jonny Wang
aaac1d095b
[fuchsia] Update Fuchsia API level to 15 ( flutter/engine#48233 )
...
Updates Fuchsia's API level to 15 (from 12).
b/307954008
2023-11-29 17:14:29 +00:00
Jonah Williams
c1ab864ad5
[Impeller] fix order of operations in SkSL generated texture lookup. ( flutter/engine#48488 )
...
Fixes https://github.com/flutter/flutter/issues/139017
When multiplying by the texture size we need to add parens incase the texture argument is actually an expression and not a single value.
2023-11-29 17:01:06 +00:00
skia-flutter-autoroll
fc30bc9383
Roll Skia from b9e2514a6fb6 to 8931060e9ab5 (1 revision) ( flutter/engine#48498 )
...
https://skia.googlesource.com/skia.git/+log/b9e2514a6fb6..8931060e9ab5
2023-11-29 michaelludwig@google.com [graphite] Use linear filtering for non-aligned coverage masks
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-29 16:18:02 +00:00
Gray Mackall
b9b16eab3c
Fix new lint from android 14 upgrade, and remove it from the baseline ( flutter/engine#47817 )
...
See https://github.com/flutter/engine/pull/47609#discussion_r1385803721 for context.
It isn't clear to me what the file descriptor here is actually doing, so I'm not actually too sure about this fix. Can it just be deleted?
Update: it seems to me that the motivation here is that `ClipData.Item.coerceToText` [consumes a `SecurityException` here](https://cs.android.com/android/platform/superproject/main/+/main:frameworks/base/core/java/android/content/ClipData.java;l=411;bpv=0;bpt=1 ), with just a log line that isn't particularly descriptive. And basically we want to run into that same exception so we can [provide a more helpful log line](e5da8d9a87/shell/platform/android/io/flutter/plugin/platform/PlatformPlugin.java (L525) ), so we do the same thing that the underlying `coerceToText` method does?
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-29 16:04:20 +00:00
skia-flutter-autoroll
2f609c25a3
Roll Skia from ca84147b3e4e to b9e2514a6fb6 (1 revision) ( flutter/engine#48497 )
...
https://skia.googlesource.com/skia.git/+log/ca84147b3e4e..b9e2514a6fb6
2023-11-29 michaelludwig@google.com [graphite] Guard one more approx-fit use
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-29 15:28:20 +00:00
skia-flutter-autoroll
97de5c1fd1
Roll Skia from fa5d6165e4d8 to 539aba7d8539 (1 revision) ( flutter/engine#48486 )
...
https://skia.googlesource.com/skia.git/+log/fa5d6165e4d8..539aba7d8539
2023-11-29 michaelludwig@google.com [graphite] Guard change to kApprox fitting for image filters
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-29 04:25:17 +00:00
skia-flutter-autoroll
312f81d00c
Roll Fuchsia Linux SDK from Vqcs_2rbtDfbmu3WX... to 8wu5EgBh1yJPNOd5W... ( flutter/engine#48485 )
...
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 matanl@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-29 03:42:22 +00:00
auto-submit[bot]
8c6313074f
Reverts "binary_messenger missing cstdint" ( flutter/engine#48483 )
...
Reverts flutter/engine#48481
Initiated by: matanlurey
This change reverts the following previous change:
Original Description:
This PR adds cstdint to binary_messenger.h. Without this building plugin support for generic Linux fails. Not related to the GTK source tree.
*Replace this paragraph with a description of what this PR is changing or adding, and why. Consider including before/after screenshots.*
*List which issues are fixed by this PR. You must list at least one issue.*
*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-29 02:25:18 +00:00
Joel Winarske
26853f24e2
binary_messenger missing cstdint ( flutter/engine#48481 )
...
This PR adds cstdint to binary_messenger.h. Without this building plugin support for generic Linux fails. Not related to the GTK source tree.
*Replace this paragraph with a description of what this PR is changing or adding, and why. Consider including before/after screenshots.*
*List which issues are fixed by this PR. You must list at least one issue.*
*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-29 02:17:22 +00:00
Jonah Williams
3b4c5a2cd6
[Impeller] fix descriptor pool recycler test flake. ( flutter/engine#48479 )
...
This test worked by 1) releasing an item to be destructed on a background thead 2) adding a second item to this queue with a waitable event.
The idea being you could wait for the event and that would tell you when 1) was complete. Unfortunately these items are released by being placed into a std::vector, which destroyed in _reverse_ order. Somtimes when the test state was queried the work was done and sometimes it wasn't
To fix this, add a second waitable event that guarantees that both the first event and the original event have finished - because we do not add these event until the first is destructed and we do not add items to the destroy list while it is in progress.
2023-11-29 01:31:39 +00:00
Robert Ancell
297a817fc9
Fix the application not disposing by breaking circular references on quit ( flutter/engine#47684 )
...
GtkApplication windows contain a reference back to the application. This
means the MyApplication object in the Flutter application never
disposes. We workaround this by removing these references before we
quit. This occurs for all GTK applications that quit using this method,
see https://gitlab.gnome.org/GNOME/gtk/-/issues/6190 . This may be fixed
upstream at some point but the proposed workaround should solve the
problem for all versions and not conflict with any upstream solution.
Fixes https://github.com/flutter/flutter/issues/136582
2023-11-29 14:01:53 +13:00
Dan Field
9ef5e0d1fc
Fix CanonicalizeURL for file schema ( flutter/engine#48466 )
...
The tonic method currently returns `///Users/test/foo` instead of `file:///Users/test/foo`.
Found while looking into making isolate spawning for flutter_tester work.
2023-11-28 23:00:51 +00:00
skia-flutter-autoroll
b1f2fdbc48
Roll Skia from f07025afd712 to 6ad886e9593a (5 revisions) ( flutter/engine#48469 )
...
https://skia.googlesource.com/skia.git/+log/f07025afd712..6ad886e9593a
2023-11-28 jamesgk@google.com Add missing include
2023-11-28 lovisolo@google.com [bazel] Device-specific configs: Android tests and all task drivers.
2023-11-28 michaelludwig@google.com [skif] Implement FilterResult::rescale() for progressive downsampling
2023-11-28 jamesgk@google.com [graphite] Use approximate-sized scratch textures
2023-11-28 michaelludwig@google.com Preserve fill type when pre-chopping large paths in TessellationPathRenderer
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 21:33:05 +00:00
Jason Simmons
c0ea0d4a0e
Remove use of variable length arrays ( flutter/engine#48232 )
...
The variable length array extension will be disabled by default in the next roll of Clang.
2023-11-28 21:28:07 +00:00
Victoria Ashworth
2d2423b0f2
Skip unexpected events in MultiPlatformViewBackgroundForegroundScenario ( flutter/engine#48456 )
...
Fixes https://github.com/flutter/flutter/issues/138193 .
Was first attempted to fix in https://github.com/flutter/engine/pull/48096 , but that was not reliable since it's all asynchronous.
[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2023-11-28 19:53:09 +00:00
Jonah Williams
a91602e3a5
[Impeller] Skip mask blur with 0 sigma. ( flutter/engine#48457 )
...
<0 sigma render incorrectly with wide gamut, but these shouldn't produce shadows at all as far as I can tell.
https://github.com/flutter/flutter/issues/138842
2023-11-28 19:13:54 +00:00
Jonah Williams
2b72b0253b
[Impeller] match sigma scaling to Skia scaling. ( flutter/engine#48434 )
...
The Impeller blur is scaling down about twice as fast as the Skia Blur. Instead adopt their approximate constant values, which results in less shaking as the blur gets bigger.
FYI @gaaclarke
2023-11-28 18:52:57 +00:00
skia-flutter-autoroll
5ce0e435b2
Roll Skia from 8752700a2565 to f07025afd712 (1 revision) ( flutter/engine#48462 )
...
https://skia.googlesource.com/skia.git/+log/8752700a2565..f07025afd712
2023-11-28 bungeman@google.com Fix string matching TODO in SkFontMgr_fontconfig
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 18:38:54 +00:00
gaaclarke
398c7780f2
[Impeller] implements incorporating the gaussian blur snapshot transform ( flutter/engine#48426 )
...
fixes https://github.com/flutter/flutter/issues/139085
## 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-28 10:17:18 -08:00
Jonah Williams
b934c49920
[Impeller] Recycle descriptor sets. ( flutter/engine#48343 )
...
Like command pools, descriptor pools can be reset on a background thread and reused to improve CPU efficiency. Unlike command pools, we create one per render pass, so the existing management of the lifecycle is handled via the Tracked objects and we need only adapt the easier parts of the command pool reset.
To make the caching more effective, we change descriptor pool allocation to round up to NPOT. this is so if we have a frame with varying numbers of draws : 33, 42, 16, 45, we still end up recycling and reusing the descriptor pool (its just a bit of extra memory).
Fixes https://github.com/flutter/flutter/issues/134968
2023-11-28 18:06:05 +00:00
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