Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[web] Move all public web-only APIs to dart:ui_web #126831

Closed
12 of 13 tasks
mdebbar opened this issue May 15, 2023 · 1 comment · Fixed by #132248
Closed
12 of 13 tasks

[web] Move all public web-only APIs to dart:ui_web #126831

mdebbar opened this issue May 15, 2023 · 1 comment · Fixed by #132248
Assignees
Labels
c: tech-debt Technical debt, code quality, testing, etc. P1 High-priority issues at the top of the work list platform-web Web applications specifically team-web Owned by Web platform team triaged-web Triaged by Web platform team

Comments

@mdebbar
Copy link
Contributor

mdebbar commented May 15, 2023

@mdebbar mdebbar added platform-web Web applications specifically P1 High-priority issues at the top of the work list c: tech-debt Technical debt, code quality, testing, etc. labels May 15, 2023
@mdebbar mdebbar self-assigned this May 15, 2023
auto-submit bot pushed a commit to flutter/engine that referenced this issue May 17, 2023
auto-submit bot pushed a commit to flutter/engine that referenced this issue May 23, 2023
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: flutter/flutter#126831

Fixes flutter/flutter#41563
auto-submit bot pushed a commit that referenced this issue May 24, 2023
Now that `platformViewRegistry` is [exposed](flutter/engine#41877) through `dart:ui_web`, we can do some cleanup here.

Part of #126831
auto-submit bot pushed a commit that referenced this issue May 31, 2023
Remove the following APIs and export them directly from `dart:ui_web`:
- `urlStrategy` getter and setter
- `HashUrlStrategy`
- `PlatformLocation` and `BrowserPlatformLocation` (keep the façades for non-web platforms)

Depends on flutter/engine#42043
Depends on flutter/engine#42252

Part of #126831
auto-submit bot pushed a commit to flutter/engine that referenced this issue Jun 16, 2023
Moving `webOnlyAssetManager` to `dart:ui_web` and renaming it to simply `assetManager`. This will make it easier for plugins and apps to get a hold of the asset manager without doing `dart:ui` shims or other shenanigans.

Part of flutter/flutter#126831
auto-submit bot pushed a commit to flutter/devtools that referenced this issue Jun 26, 2023
These web-only APIs are now exported properly through `dart:ui_web`.

Related to: flutter/flutter#126831
auto-submit bot pushed a commit to flutter/engine that referenced this issue Jun 29, 2023
| Old API in `dart:ui` | New API in `dart:ui_web` |
|-|-|
| ~`webOnlyInitializePlatform`~ | ~`ui_web.initializePlatform`~ |
| `webOnlyWarmupEngine` | `ui_web.bootstrapEngine` |
| `debugEmulateFlutterTesterEnvironment` | `ui_web.debugEmulateFlutterTesterEnvironment` |
| `webOnlySetPluginHandler` | `ui_web.setPluginHandler` |

Part of flutter/flutter#126831
@flutter-triage-bot flutter-triage-bot bot added team-web Owned by Web platform team triaged-web Triaged by Web platform team labels Jul 8, 2023
kjlubick pushed a commit to kjlubick/engine that referenced this issue Jul 14, 2023
| Old API in `dart:ui` | New API in `dart:ui_web` |
|-|-|
| ~`webOnlyInitializePlatform`~ | ~`ui_web.initializePlatform`~ |
| `webOnlyWarmupEngine` | `ui_web.bootstrapEngine` |
| `debugEmulateFlutterTesterEnvironment` | `ui_web.debugEmulateFlutterTesterEnvironment` |
| `webOnlySetPluginHandler` | `ui_web.setPluginHandler` |

Part of flutter/flutter#126831
auto-submit bot pushed a commit that referenced this issue Aug 8, 2023
auto-submit bot pushed a commit to flutter/engine that referenced this issue Aug 22, 2023
- Warn on `webOnlyInitializePlatform` and replace all usages with `ui_web.bootstrapEngine`.
- Remove unused `webOnlyPaintedBy` parameter.
- `webOnlyDebugPhysicalSizeOverride` => `ui_web.debugPhysicalSizeOverride`.
- `webOnlyInstantiateImageCodecFromUrl` => `ui_web.createImageCodecFromUrl`.
- `WebOnlyImageCodecChunkCallback` => `ui_web.ImageCodecChunkCallback`.
- `_webOnlyDidWarnAboutPerformanceOverlay` => `_didWarnAboutPerformanceOverlay`.
- Remove unnecessary usage of `futurize`.

Part of flutter/flutter#126831
@mdebbar mdebbar closed this as completed Aug 23, 2023
auto-submit bot pushed a commit that referenced this issue Aug 29, 2023
This is the last batch of web-only API migration.

Depends on flutter/engine#44516

Fixes #52899
Fixes #126831
gaaclarke pushed a commit to gaaclarke/engine that referenced this issue Aug 30, 2023
- Warn on `webOnlyInitializePlatform` and replace all usages with `ui_web.bootstrapEngine`.
- Remove unused `webOnlyPaintedBy` parameter.
- `webOnlyDebugPhysicalSizeOverride` => `ui_web.debugPhysicalSizeOverride`.
- `webOnlyInstantiateImageCodecFromUrl` => `ui_web.createImageCodecFromUrl`.
- `WebOnlyImageCodecChunkCallback` => `ui_web.ImageCodecChunkCallback`.
- `_webOnlyDidWarnAboutPerformanceOverlay` => `_didWarnAboutPerformanceOverlay`.
- Remove unnecessary usage of `futurize`.

Part of flutter/flutter#126831
@github-actions
Copy link

github-actions bot commented Sep 6, 2023

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 6, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
c: tech-debt Technical debt, code quality, testing, etc. P1 High-priority issues at the top of the work list platform-web Web applications specifically team-web Owned by Web platform team triaged-web Triaged by Web platform team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant