184 Commits

Author SHA1 Message Date
Michael Goderbauer
efc22ee283 Enable private field promotion (flutter/engine#45722)
New feature in upcoming Dart 3.2. See https://github.com/dart-lang/language/issues/2020. Feature is enabled by bumping the min SDK version to 3.2.

Part of https://github.com/flutter/flutter/issues/134476.
2023-09-14 21:02:03 +00:00
Jackson Gardner
c93da27b95 Compile a platform dill for dart2wasm (flutter/engine#45797)
This continues work on https://github.com/flutter/flutter/issues/133467

We still need a change on the tool side to consume this platform dill file after this lands.
2023-09-13 22:12:13 +00:00
Nicholas Shahan
f7132b576d Update deps on DDC build targets (flutter/engine#45404)
Update deps to use the new Dart SDK DDC build targets introduced in
these changes:
 - https://dart-review.googlesource.com/c/sdk/+/313081
 - https://dart-review.googlesource.com/c/sdk/+/315561

Fixes: https://github.com/flutter/flutter/issues/133606
2023-09-06 11:10:39 -07:00
Jacob MacDonald
660bdd6b03 add dart_internal override where necessary (flutter/engine#42920)
A dependency to dart_internal was added in https://dart-review.googlesource.com/c/sdk/+/309460/6 and all transitive deps need to have overrides.
2023-06-16 17:20:18 +00:00
Mouad Debbar
3a4677a6d7 [web] Cleanup assertionsEnabled (flutter/engine#41829)
For consistency with the rest of the flutter code, this PR explores the possibility of removing our proprietary `assertionsEnabled`.
2023-05-24 15:08:50 +00:00
Mouad Debbar
9aec8c5c62 [web] Move platformViewRegistry to ui_web (flutter/engine#41877)
In this PR, I'm leaving a getter for `platformViewRegistry` in `dart:ui` for backwards compatibility. At some point, we need to properly deprecate it (e.g. print a warning asking users to import it from `dart:ui_web` instead).

Next step is to migrate all call sites in flutter/flutter, flutter/packages and flutter/devtools (anything else?).

Issue: https://github.com/flutter/flutter/issues/126831

Fixes https://github.com/flutter/flutter/issues/41563
2023-05-23 16:17:56 +00:00
Jackson Gardner
16360e9e25 Reland "Skwasm Font Loading (flutter/engine#41756)
This relands https://github.com/flutter/engine/pull/41246, which had to be reverted due to some issues parsing the font manifest.
2023-05-08 18:17:22 +00:00
Jackson Gardner
f2970b73b0 Revert "Skwasm Font Loading" (flutter/engine#41750)
Reverts flutter/engine#41246

The new font manifest parsing fails in some cases.
2023-05-04 23:54:18 +00:00
Jackson Gardner
6f5ad9737e Skwasm Font Loading (flutter/engine#41246)
This implements font loading for the skwasm renderer.

In addition, it does some pretty major refactors:
1) Simplified the font collection interface to just have a single `loadAssetFonts` call, without the separate registration and debug fonts loading stuff
2) Debug fonts load now through http/asset mocking mechanisms instead of having a separate `downloadDebugTestFonts` call
3) Consolidated a few of our different unit test setup functions into a single `setUpUnitTests` function
2023-05-04 18:22:53 +00:00
joshualitt
e370809b5e [web] Add dart:js_interop_unsafe to SDK. (flutter/engine#41591)
Adds the `dart:js_interop_unsafe` library to the SDK.
2023-05-03 08:38:33 -07:00
Srujan Gaddam
e253aeff60 Remove package:js references and move to dart:js_interop (flutter/engine#41212)
dart:js_interop and package:js will start conflicting. Eventually, we
want people to only use dart:js_interop, so this CL refactors code to do
that.

Unblocks https://dart-review.googlesource.com/c/sdk/+/294130/8 and
prevents confusing shadowing of dart:js_interop annotations like we do
today.

## 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], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [Mentioned CL that is unblocked] I listed at least one issue that this
PR fixes in the description above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [Need test-exemption] I added new tests to check the change I am
making, or this PR is [test-exempt].
- [X] All existing and new tests are passing.
2023-04-25 12:20:12 -07:00
Jackson Gardner
c2719b8e06 Reland ui_web files in sky_engine (flutter/engine#41169)
Previous attempt was here: https://github.com/flutter/engine/pull/40846

I was including un-rewritten source files, which caused breakage. Now we run out `ui_web` files through the sdk_rewriter script before putting them into sky_engine
2023-04-17 22:31:25 +00:00
Jackson Gardner
439141c38d Skwasm scene (flutter/engine#40330)
Skwasm scene
2023-04-10 17:38:57 +00:00
Jackson Gardner
12f968e369 Don't build wasm targets for the web sdk archive in host mode. (flutter/engine#40967)
Don't build wasm targets for the web sdk archive in host mode.
2023-04-06 23:04:59 +00:00
Jackson Gardner
911b85dc77 Copy canvaskit files directly into flutter_web_sdk (flutter/engine#40951)
Copy canvaskit files directly into `flutter_web_sdk`
2023-04-05 22:55:41 +00:00
joshualitt
bee9f91790 [web] Migrate EventListener's to JS types. (flutter/engine#40566) 2023-04-04 09:53:13 -07:00
Jackson Gardner
1a59a35e3c ui_web library (flutter/engine#40608)
`ui_web` library
2023-03-30 23:14:18 +00:00
Mouad Debbar
13a74dcec7 [web] Print screenshot paths at the right spot (flutter/engine#40714)
[web] Print screenshot paths at the right spot
2023-03-28 16:47:05 +00:00
Michael Goderbauer
a508065bbc Reland "Post 3.0 lint sync (#40394)" (flutter/engine#40688)
Reland "Post 3.0 lint sync (#40394)"
2023-03-28 03:25:02 +00:00
Jackson Gardner
82886d52b3 Web test reorganization (flutter/engine#39984)
Web test reorganization
2023-03-28 00:08:48 +00:00
Brandon DeRosier
9e9590a68f Revert "Post 3.0 lint sync (#40394)" (flutter/engine#40687)
This reverts commit 8ba209121d2671b0d202d9731fe67ec5eb1529b4.
2023-03-27 15:45:59 -07:00
Michael Goderbauer
8ba209121d Post 3.0 lint sync (flutter/engine#40394)
Post 3.0 lint sync
2023-03-27 17:15:08 +00:00
Jackson Gardner
b6af3bcc91 Ensure all golden filenames end in .png. (flutter/engine#40604)
Ensure all golden filenames end in .png.
2023-03-24 19:28:57 +00:00
Michael Goderbauer
9026c75b1c Use bundled analyzer everywhere (flutter/engine#40398)
Use analyzer from dart source everywhere
2023-03-17 21:21:04 +00:00
Michael Goderbauer
7187bc8e88 Update analyzer for api_conform_test (flutter/engine#40386)
Update analyzer for api_conform_test
2023-03-17 19:15:50 +00:00
Michael Goderbauer
1986d84d6e replace some ._() constructors with class modifiers (flutter/engine#40328)
replace some ._() constructors with class modifiers
2023-03-17 16:18:49 +00:00
joshualitt
be4da063e8 add support for JS types (flutter/engine#40310) 2023-03-17 08:27:53 -07:00
Jackson Gardner
5508a04de1 Output web test artifacts to out directory. (flutter/engine#40355)
Output web test artifacts to out directory.
2023-03-16 22:19:55 +00:00
Michael Goderbauer
dcc4b1b535 Reland: Bump lower Dart SDK constraints to 3.0 (flutter/engine#40318)
* WIP

Bump to 3.0.0-0

* fix lints

* drop web_ui

* opt pointer_converter.dart out of dart 3

* Revert "drop web_ui"

This reverts commit b97a015d5cd0d7e0380a4231be4c31aad36671f1.
2023-03-16 08:07:39 -07:00
Zachary Anderson
32b3e66d7c Revert "Bump lower Dart SDK constraints to 3.0 (#40178)" (flutter/engine#40317)
Revert "Bump lower Dart SDK constraints to 3.0"
2023-03-15 18:53:00 +00:00
Michael Goderbauer
828f3deb86 Bump lower Dart SDK constraints to 3.0 (flutter/engine#40178)
Bump lower Dart SDK constraints to 3.0
2023-03-15 17:57:04 +00:00
Michael Goderbauer
bd58dd7222 Bump pubspecs to unblock Dart SDK roller (flutter/engine#40297)
Bump pubspecs to unblock Dart SDK roller
2023-03-15 06:46:22 +00:00
Yegor
e9abb22ba1 Revert "[web] Access engine version to get correct gstatic URL (#40194)" (flutter/engine#40235)
This reverts commit 46682951fe7f61296070c2fdfb673576628bbd89.
2023-03-10 14:46:06 -08:00
Harry Terkelsen
46682951fe [web] Access engine version to get correct gstatic URL (flutter/engine#40194) 2023-03-10 10:16:48 -08:00
Mouad Debbar
f9989a551d [web] Copy canvaskit_chromium/* to canvaskit/chromium/* (flutter/engine#39796)
[web] Copy canvaskit_chromium/* to canvaskit/chromium/*
2023-03-03 22:07:49 +00:00
LongCatIsLooong
48c413ae2f Add new test font (flutter/engine#39809)
Add new test font
2023-03-03 21:38:01 +00:00
Jackson Gardner
d41ba81937 Don't include other files outisde the flutter_web_sdk. (flutter/engine#40009)
Don't include other files outside the flutter_web_sdk.
2023-03-02 06:37:07 +00:00
Jackson Gardner
a3dc9e77fb Skwasm Renderer - initial implementation (flutter/engine#39072)
Skwasm Renderer - initial implementation
2023-03-02 00:01:04 +00:00
Yegor
543f998577 [web] consolidate network code into httpFetch (flutter/engine#39657)
* consolidate network code into httpFetch

* make HTTP test cross-browser friendly; fix copypasta
2023-02-16 00:02:02 +00:00
Michael Goderbauer
c545a799d2 Remove unnecessary null checks (flutter/engine#39113) 2023-01-25 10:15:02 -08:00
Mouad Debbar
105bb9ab43 [web] Build multiple CanvasKit variants (using toolchain_args) (flutter/engine#38448)
* [web] New gn for building CanvasKit

* Use toolchain_args to override CanvasKit gn args

* Use correct path for the generated canvaskit files

* Put toolchain close to target

* remove extra toolchains

* remove extra import

* add canvaskit_lite to archive

* fix local canvaskit path in tests

* add some guards using visibility and asserts

* renames

* formatting

* rename mistake

* Add github issue to the TODO

* Update buildroot sha

* clang-tidy error

* skip canvaskit targets when not needed
2023-01-23 20:37:18 +00:00
Pierrick Bouvier
3811a350df Add CI builder for windows-arm64. (#38394) (flutter/engine#38739)
* Generate zip archives for Windows following target platform.

* Add CI builder for windows-arm64.

All packages can be cross compiled from an x64 machine.
Unittests are disabled, as they require an arm64 machine.

* Add windows-arm64 to CI.
2023-01-11 23:01:08 +00:00
Harry Terkelsen
21547b9edb Move canvaskit artifacts to expected location in Web SDK Archive (flutter/engine#38168) 2023-01-10 12:52:45 -08:00
Loïc Sharma
5e35f2ab74 Revert "Add CI builder for windows-arm64. (#38394)" (flutter/engine#38729)
This reverts commit 35810a873b59c8d738f1f3661854572cc3aa2215.
2023-01-09 22:35:13 +00:00
Pierrick Bouvier
35810a873b Add CI builder for windows-arm64. (flutter/engine#38394)
* Generate zip archives for Windows following target platform.

* Add CI builder for windows-arm64.

All packages can be cross compiled from an x64 machine.
Unittests are disabled, as they require an arm64 machine.

* Add windows-arm64 to CI.
2023-01-09 21:51:12 +00:00
Alexander Markov
bf04bd6451 Update web_sdk -> package test dependency to get updated package matcher (flutter/engine#38323) 2022-12-15 12:07:09 -08:00
Tong Mu
c3925d9120 [Web, keyboard] Locale layout mapping (flutter/engine#34625)
* WIP

* WIP: Better debug log

* WIP

* Finish logic (untested)

* Use third_party for layouts

* Update gen

* Fix filtering bugs

* Format

* Fix build

* Add scripts

* Try license

* Copyright

* Rename license

* Use case insensitive

* more lower case

* Sort. Migrate to better types.

* Fix template

* Marshall and unmarshall

* Comments

* Gen types file

* gen json

* engine compilable

* benchmark_detector

* Move github to separate file

* Generate full mapping

* test cases

* Unified dead key

* Correct key

* remove duplicate file

* letter in test cases

* Compile

* int keycode, and fix compile

* Correct gen directory

* Heuristic

* Heuristic benchmark

* Reorganize logical key

* Move to common

* Docs

* Combine into bin

* Remove layout_types

* Rename to locale_keymap

* Rename class

* Rename to heuristicMapper

* Format

* Fix license

* Fix test

* Test license

* Fix tests

* Fix import as

* Fix analyze problem

* Fix license

* Update license pattern

* The MIT license

* License diff

* Fix license

* Update signature

* readme

* fix signature?

* fix signature?

* Fix license count

* Fix build

* Compression

* Fix _eventKeyIsKeyname

* remove gitignore

* Fix nullable

* Fix doc

* Add underscore lead. Make everything lower case. Print by line.

* Better event code encoding

* Signature

* Comment. Change dead key mapping to the last.

* Better digit heuristic. Better _eventKeyIsKeyName

* en-in test

* Remove unnecessary build change

* Better order
2022-11-30 01:28:02 +00:00
Jackson Gardner
5a3dd3b3b5 Build platform dills with unevaluated constants (flutter/engine#37940)
* Build dart2js platform kernels with null environment.

* Null environment should be true.

* More cleanup of gn steps.

* Fix build steps.

* Fix formatting.

* Add links to the cleanup github issue.
2022-11-29 19:03:47 +00:00
Mouad Debbar
9d9401970f [web] Move unicode properties to third_party (flutter/engine#37440)
* [web] Move unicode properties to third_party

* license

* fix license check

* attempt to fix license golden

* more license fixes

* even more license fixes

* add check mode and readme file

* fix licenses + add web_unicode.dart

* build web_unicode as an sdk library

* remove unnecessary variable

* minor fix in license golden

* tool signature
2022-11-22 18:47:11 +00:00
joshualitt
c6467e322e [web] Test harness fixes. (flutter/engine#37560) 2022-11-15 12:21:31 -08:00