This is minor version primarily with bugfixes and clean up of code around the Android and iOS presenter code. We have also gone ahead and removed the Network and File plugins as a result of this poll. As an alternative to the File plugin we recommend you to take a look at the NuGet package System.IO.Abstractions. For alternatives to the Network plugin, we can recommend a mix of using Xamarin.Essentials for detecting Network connectivity and for making API requests using:
All the presenter code on Android and iOS now have nullability attributes added. The breaking changes in this code are a result of adding the nullability attributes and checking conditions for public API. If you pass a null into a method which doesn’t expect nulls, it will in most cases throw a
ViewModel parameters and results need to be a reference type now to check for nullability.
There are a couple of new features included in this release.
- On iOS we now have
MvxPopoverPresentationAttributewhich allows you to show a pop-over. Take a look at this pull request for more information.
- On Android
MvxFragmentPresentationAttributehas been extended with a
AddFragmentproperty. This can control how Android Fragments are transitioned. The default behavior is as it was previously where we use
Replaceon Fragments. Setting
AddFragmentlets you use
Addinstead, to just add the Fragment on top of the stack.
A big, thank you, to all contributors. We always appreciate discussion and contributions. If you want to contribute to MvvmCross, please join us on the DotNet Evolution Discord in the #MvvmCross channel.
- Enable nullable attributes on MvxIosViewPresenter and friends #3961 (Cheesebaron)
- Fix Mac playground and MvxMacViewPresenter #3959 (ivmirx)
- Enable Nullable References on MvxDefaultViewModelLocator #3934 (Cheesebaron)
- Remove Network and File plugins #3932 (Cheesebaron)
- Mark MvxAndroidViewPresenter nullable and fix all the null issues #3916 (Cheesebaron)
- Clean up Android Presenter #3912 (Cheesebaron)
- No windows is presented when trying to launch Mac app #3830
- fix for adjusting scrollview insets twice #3950 (Hackmodford)
Merged pull requests:
- Bump Xamarin.GooglePlayServices.Basement from 71.1620.4 to 117.1.1 #3965 (dependabot-preview[bot])
- Bump Moq from 4.14.5 to 4.14.7 #3964 (dependabot-preview[bot])
- CI and project updates #3962 (Cheesebaron)
- Change Slack links to Discord links in the docs #3960 (ivmirx)
- Fix nullable references in Android Presenter #3956 (Cheesebaron)
- Replace deprecated Fragment.Instantiate by FragmentFactory.Instantiate #3953 (Prin53)
- Bump Xamarin.AndroidX.Lifecycle.LiveData from 220.127.116.11 to 18.104.22.168 #3944 (dependabot-preview[bot])
- Bump Xamarin.AndroidX.Legacy.Support.V4 from 22.214.171.124 to 126.96.36.199 #3943 (dependabot-preview[bot])
- Bump Xamarin.AndroidX.MediaRouter from 188.8.131.52 to 184.108.40.206 #3940 (dependabot-preview[bot])
- Bump Serilog from 2.9.0 to 2.10.0 #3929 (dependabot-preview[bot])
- Bump Roslynator.Analyzers from 2.3.0 to 3.0.0 #3928 (dependabot-preview[bot])
- Add ability to Add fragment instead of always replacing it #3911 (Cheesebaron)
- Bump Microsoft.NET.Test.Sdk from 16.7.0 to 16.7.1 #3895 (dependabot-preview[bot])
- Move Sonar into own pipeline #3891 (Cheesebaron)
- Centralize NuGet package versions + bump AndroidX packages #3890 (Cheesebaron)
- Bump Xamarin.AndroidX.MediaRouter from 220.127.116.11 to 18.104.22.168 #3886 (dependabot-preview[bot])
- Bump Xamarin.AndroidX.Legacy.Support.V4 from 22.214.171.124 to 126.96.36.199 #3882 (dependabot-preview[bot])
- Bump Xamarin.AndroidX.Lifecycle.LiveData from 188.8.131.52 to 184.108.40.206 #3881 (dependabot-preview[bot])