Xamarin.Forms 4.2.0.608146-pre1 (4.2.0 Pre Release 1) Release Notes

Getting Started | What's New | Breaking Changes | API Changes | Blogs | Thank you | Feedback | Open Source

What's New in this Release

Notable Changes

Shell

  • "[Android] Change elevation to use float.minvalue instead of negative infinity" (#6560)
  • "[Android] Fix various issues in object dispose methods." (#6467)
  • "[Shell] don't throw exception if registering same route factory to same routename" (#6775)
  • "Allow tracking of StyleSheets" (#6502)
  • "Clear global routes on unit tests and process global routes in the right place" (#6781)
  • "use a BP for QueryAttributes" (#6569)
  • Github #4410 - "[Shell] Allow to set a background image for the Flyout" (#6116)
  • Github #5996 - "[Bug][Shell] Routing.RegisterRoutes allows duplicate routes" (#6613)
  • Github #6444 - "[Bug] [Shell] ShellContent.BindingContext not inherited" (#6730)
  • Github #6486 - "[Bug] Shell - OnAppearing not executing" (#6527)
  • Github #6559 - "[Bug] FontImageSource not working with MenuItem in Shell" (#6628)
  • Github #6738 - "[Bug, Shell, Android] Flyout Navigation fails when coupled with tabs that have a stack" (#6740)
  • Github #6801 - "[Bug] Shell Flyout - Weird line at the bottom of the items" (#6572)

Visual

  • "[Tizen] Add Checkbox" (#6526)
  • Github #5102 - "[Android] TabStop impossible to choose material entry" (#6732)

F100s

  • "[Tizen] Add Checkbox" (#6526)

Features in Preview

CollectionView

  • "[Android] Fix various issues in object dispose methods." (#6467)
  • "[Core] Add [Parameter] attribute to constructor for CollectionView Layouts" (#6516)
  • "CollectionView Grouping iOS" (#6590)
  • "UWP CollectionView SelectionMode" (#6629)

Release History

  • Monday, July 15, 2019 - Xamarin.Forms 4.2.0.608146-pre1 (4.2.0 Pre Release 1)

Monday, July 15, 2019 - Xamarin.Forms 4.2.0.608146-pre1 (4.2.0 Pre Release 1)

Issues Fixed

  • Github #4268 - "Xamarin.Forms MacOS: Cannot access a disposed object. Object name: 'FormsNSTextField'." (#6566)
  • Github #4410 - "[Shell] Allow to set a background image for the Flyout" (#6116)
  • Github #5102 - "[Android] TabStop impossible to choose material entry" (#6732)
  • Github #5996 - "[Bug][Shell] Routing.RegisterRoutes allows duplicate routes" (#6613)
  • Github #6098 - "[Bug] ShellContent navigation not triggering OnAppearing / OnDisappearing overrides when displayed / hidden" (#6527)
  • Github #6222 - "Xamarin Forms Map resets back to last set region" (#6601)
  • Github #6268 - "[Bug] InvalidCastException encountered when Entry control is bound to a style for a Label" (#6677)
  • Github #6444 - "[Bug] [Shell] ShellContent.BindingContext not inherited" (#6730)
  • Github #6486 - "[Bug] Shell - OnAppearing not executing" (#6527)
  • Github #6535 - "Crash XF when Font Style Applied to StackLayout/Grid[Bug] " (#6677)
  • Github #6559 - "[Bug] FontImageSource not working with MenuItem in Shell" (#6628)
  • Github #6648 - "[Bug] x:DataType do NOT accept markup extensions" (#6822)
  • Github #6657 - "[Bug] Setting ControlTemplate on ContentPage from an implicit style results in blank content" (#6661)
  • Github #6738 - "[Bug, Shell, Android] Flyout Navigation fails when coupled with tabs that have a stack" (#6740)
  • Github #6801 - "[Bug] Shell Flyout - Weird line at the bottom of the items" (#6572)

Additional fixes included in this release

  • "[Android] Change elevation to use float.minvalue instead of negative infinity" (#6560)
  • "[Android] Fix various issues in object dispose methods." (#6467)
  • "[Bugfix] Catching ReflectionTypeLoadException in the VisualTypeConverter" (#6646)
  • "[Core] Add [Parameter] attribute to constructor for CollectionView Layouts" (#6516)
  • "[GTK] Fix NullReferenceException in NavigationPageRenderer" (#6462)
  • "[iOS] Make ShouldChangeText virtual" (#6634)
  • "[Shell] don't throw exception if registering same route factory to same routename" (#6775)
  • "[UWP] fixes crash after reset corner radius" (#6744)
  • "[XamlC] Correctly load addresses of values in more compiled binding paths" (#6423)
  • "[XamlC] Do not try to set a value to bound source property if unavailable" (#6564)
  • "Allow tracking of StyleSheets" (#6502)
  • "Clear global routes on unit tests and process global routes in the right place" (#6781)
  • "fix NRE in InvokeOnMainThreadAsync" (#6708)
  • "use a BP for QueryAttributes" (#6569)
  • "UWP CollectionView SelectionMode" (#6629)

Breaking Changes

Namespace Xamarin.Forms

Type Changed: Xamarin.Forms.CollectionView

Modified base type:

-Xamarin.Forms.SelectableItemsView
+Xamarin.Forms.GroupableItemsView

Namespace Xamarin.Forms.Platform.Android

Type Changed: Xamarin.Forms.Platform.Android.ShellFlyoutTemplatedContentRenderer

Removed method:

protected virtual void UpdateFlyoutBackgroundColor ();

Removed Type Xamarin.Forms.Platform.Android.ShellFlyoutContentRenderer

Namespace Xamarin.Forms.Platform.iOS

Type Changed: Xamarin.Forms.Platform.iOS.CollectionViewRenderer

Modified base type:

-Xamarin.Forms.Platform.iOS.SelectableItemsViewRenderer
+Xamarin.Forms.Platform.iOS.GroupableItemsViewRenderer

Type Changed: Xamarin.Forms.Platform.iOS.ItemsViewLayout

Removed methods:

public void SetNeedCellSizeUpdate ();
public virtual void WillDisplayCell (UIKit.UICollectionView collectionView, UIKit.UICollectionViewCell cell, Foundation.NSIndexPath path);

Type Changed: Xamarin.Forms.Platform.iOS.SelectableItemsViewController

Removed field:

protected Xamarin.Forms.SelectableItemsView SelectableItemsView;

Type Changed: Xamarin.Forms.Platform.iOS.ShellFlyoutContentRenderer

Removed method:

protected virtual void UpdateBackgroundColor ();

Type Changed: Xamarin.Forms.Platform.iOS.UICollectionViewDelegator

Removed method:

public override void WillDisplayCell (UIKit.UICollectionView collectionView, UIKit.UICollectionViewCell cell, Foundation.NSIndexPath path);

Namespace Xamarin.Forms.Platform.UWP

Type Changed: Xamarin.Forms.Platform.UWP.CollectionViewRenderer

Modified base type:

-Xamarin.Forms.Platform.UWP.ViewRenderer`2[Xamarin.Forms.CollectionView,Windows.UI.Xaml.Controls.ItemsControl]
+Xamarin.Forms.Platform.UWP.SelectableItemsViewRenderer

Removed property:

protected Windows.UI.Xaml.Controls.ItemsControl ItemsControl { get; }

Removed methods:

protected virtual System.Threading.Tasks.Task ScrollTo (Xamarin.Forms.ScrollToRequestEventArgs args);
protected virtual Windows.UI.Xaml.Controls.ItemsControl SelectLayout (Xamarin.Forms.IItemsLayout layoutSpecification);
protected virtual void UpdateItemTemplate ();
protected virtual void UpdateItemsSource ();

API Changes

See all API Changes here.

  • "[iOS] Make ShouldChangeText virtual" (#6634)
  • "CollectionView Grouping iOS" (#6590)
  • Github #4410 - "[Shell] Allow to set a background image for the Flyout" (#6116)
  • Github #4815 - "Updating properties on WkWebViewConfiguration after WkWebView has been created has no effect" (#6578)
  • Github #6003 - "[Enhancement] Add Color.ToHexString" (#6272)
  • Github #6222 - "Xamarin Forms Map resets back to last set region" (#6601)
  • Github #6376 - "[Enhancement] Add Markup Extension for FontImageSource" (#6398)
  • Github #6486 - "[Bug] Shell - OnAppearing not executing" (#6527)

Blogs

Xamarin Blogs

Thank you

Thank you to our community for helping to make Xamarin.Forms even better!

This release, we received amazing contributions from these individuals. Give them a big round of applause!

Author Commit PR
adrianknight89 (@adrianknight89) make ShouldChangeText virtual (#6634) #6634
adrianknight89 (@adrianknight89) Create UI test template for XAML pages (#5853) #5853
Akihiko Odaki (@akihikodaki) [XamlC] Correctly load addresses of values in more compiled binding paths (#6423) #6423
Akihiko Odaki (@akihikodaki) [XamlC] Do not try to set a value to bound source property if unavailable (#6564) #6564
Alan Grgic (@alanag13) [Android] Fix KeyNotFoundException during Shell Navigation (#6740) #6740
Andrei Nitescu (@andreinitescu) Button Layout gallery page: don't set initial Padding (#6599) fixes #6469 #6599
Andrei Nitescu (@andreinitescu) Validate style target at runtime (#6677) #6677
Andrei Nitescu (@andreinitescu) Map MoveToLastRegionOnLayoutChange Property (#6601) #6601
Andrei Nitescu (@andreinitescu) Switch ThumbColor (#6312) #6312
Andrei Nitescu (@andreinitescu) Fix Map Gallery page (#6603) #6603
Andrei Nitescu (@andreinitescu) Fix for Switch on Android losing shadow #6798 (#6798) #6798
Andrei Nitescu (@andreinitescu) Fix Page implicit and inherited style with ControlTemplate #6657 (#6661) #6661
Andrew Hoefling (@ahoefling) Adds FontImage Markup Extension for FontImageSource (#6398) #6398
campersau (@campersau) fix NRE in InvokeOnMainThreadAsync (#6708) #6708
Christopher Dresel (@Dresel) Fix for #6444: Propagate binding context for children of shell sections (#6730) #6730
David Roqueni (@DavidRoqueni) Add Color.ToHex() (#6272) #6272
Elias Puurunen (@eliaspuurunen) Update ItemsViewLayout.cs (#6583) #6583
Felipe Momm (@felipemomm) [Shell] Fail when trying to add a duplicated route (#6613) #6613
Felipe Momm (@felipemomm) [Shell] MenuItem font image fix (#6628) fixes #6559 #6628
humhei (@humhei) [UWP] CollectionView SelectionMode (#6629) fixes #3172 fixes #6489 fixes #5844 fixes #5625 #6629
Joe Manke (@jcmanke) Reimplement ITabStop to return the EditText on Android Material renderers that use TextInputLayout as the native Control (#6732) #6732
Kangho Hur (@rookiejava) [Tizen] Support to TabbedPage.BarTextColor, SelctedTabColor, UnselectedTabColor (#6183) #6183
Kangho Hur (@rookiejava) [Tizen] Add Checkbox (#6526) fixes #1728 #6526
Kevin Petit (@kvpt) Fix flaky tests. (#6510) #6510
Kevin Petit (@kvpt) [Android] Fix various issues in object dispose methods. (#6467) #6467
mfkl (@mfkl) [GTK] Fix NullReferenceException in NavigationPageRenderer (#6462) #6462
nor0x (@nor0x) EntryRenderer.cs [macOS] updated (#6566) #6566
Ravinder Jangra (@ravinderjangra) Add constructor in WkWebViewRenderer to use custom configuration (#6578) #6578
Sergej Derjabkin (@derjabkin) [Bugfix] Catching ReflectionTypeLoadException in the VisualTypeConverter (#6646) #6646
Sivakumar (@syncsiva) Update ScrollViewRenderer.cs (#6151) #6151

Feedback welcome

Your feedback is important to us. If there are any problems with this release, check the Xamarin.Forms Forums and GitHub for existing issues. Report new issues and suggestions on GitHub.

Open Source

Xamarin.Forms 4.2.0 is based on the open-source Xamarin.Forms repository: