Skip to content
Axemasta edited this page Jun 22, 2021 · 3 revisions

SuperWebView is a fork of Xamarin.Forms.WebView that adds support for tasks that require custom renderers and fixes for bugs that will not be fixed in Xamarin.Forms 5 due to causing breaking changes.

I wrote this control primarily to assist in an app I have been working on at work. The app uses an external api to gather information about a website (categories) and then make a decision on whether the site can be visited based on current configuration. This action was not supported by WebView because the current mechanism to cancel navigating, the WebNavigatingWebViewArgs expose a bool which value is immediately evaluated after the args have been sent (see iOS, Android).

Future development on this control will focus any apps I'm working on, if I need a new feature I will be shipping it straight away. I am very open to other ideas and adding features that will be useful to other devs, just raise an issue. I also aim to slowly but surely add a test suite to ensure quality assurance aswell as refactor the implementations of the platform renderers because I'd like to try and make the code more readable and maintainable. Finally the control will be maintained inline with any bugs discovered in the Xamarin.Forms implementation, I will try and keep this control as up to date with the official offering.

Build

The build pipeline uses my personal Azure DevOps instance to build and publish the package, the pipeline YAML was a bit of a battle. I was unable to get the solution to build using the dotnet cli, so it is limited to just the library. I will eventually cleanup the pipeline but for now it is building, the following enhancements are on the horizon:

  • Publish builds to NuGet.org
  • Add support for Pre-Release builds

Contributing

If you would like to contribute, just raise an issue and get a discussion started. Pull requests are more than welcome 😄

Clone this wiki locally