commit | c6821f970244ddf82d78b492bb61f668297d4a59 | [log] [tgz] |
---|---|---|
author | stuartmorgan <stuartmorgan@google.com> | Tue Oct 24 12:05:01 2023 -0700 |
committer | GitHub <noreply@github.com> | Tue Oct 24 19:05:01 2023 +0000 |
tree | a938d8b42d3bcdbff019fcbb319c9e2906db90f1 | |
parent | 3cc6e26ea830b18b94d8d0eb8f53cdf76976ba75 [diff] |
[url_launcher] Add an `inAppBrowserView` mode (#5155) `url_launcher_android` recently switched from an in-app webview to an Android Custom Tab (when supported), which was intended to be an in-place upgrade. However, this broke `closeInAppWebView`, and that couldn't be fixed directly because Android Custom Tab has no mechanism for programatic close. To address the regression, this adds a new `inAppBrowserView` launch mode which is distinct from `inAppWebView`, so that use cases that require programatic close can specifically request `inAppWebView` instead. The default for web links is the new `inAppBrowserView` since that gives better results in most cases. Since whether `closeInAppWebView` will work in any given case is now non-trivial (on iOS, both in-app modes are supported, but on Android it's only the web view mode), this adds a new support API to query it, in keeping with the relatively new guidance of https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#api-support-queries. It also adds API to query for support for being able to use specific launch modes, since there wasn't a good way to understand which modes worked in general on different platforms. Since there are new APIs, this adds support for those APIs to all of our implementations to ensure that they give accurate responses. Fixes https://github.com/flutter/flutter/issues/134208
This repo is a companion repo to the main flutter repo. It contains the source code for Flutter's first-party packages (i.e., packages developed by the core Flutter team). Check the packages
directory to see all packages.
These packages are also available on pub.
Please file any issues, bugs, or feature requests in the main flutter repo. Issues pertaining to this repository are labeled “package”.
If you wish to contribute a new package to the Flutter ecosystem, please see the documentation for developing packages. You can store your package source code in any GitHub repository (the present repo is only intended for packages developed by the core Flutter team). Once your package is ready you can publish to the pub repository.
If you wish to contribute a change to any of the existing packages in this repo, please review our contribution guide, and send a pull request.
These are the packages hosted in this repository: