Prism.Core
- .NET Standard Support
- Added method to clear all errors on ErrorsContainer
- Add capability to DelegateCommand's ObservesProperty to observe properties of complex types
Example:
ObservesProperty(() => Property.NestedProperty.NestedPoperty)
Prism.Forms
- Fixed #683: .NET Standard support
- Fixed #765: Deep linking within a NavigationPage results in an incorrect ContentPage Title on Android
- Fixed #1008: NavigationParameters: Not possible to specify parent type as generic parameter T
- Fixed #1024: XF: NavigationService swallowing Exceptions
- Fixed #1025: Xamarin.Forms deprecated the Device.OS property in favor of the RuntimePlatform property.
- Fixed #1027: Support macOS
- Fixed #1044: When Detail of MasterDetailPage is null, Modal Navigation is possible
- Fixed #1045: When calling NavigateAsync with NavigationPage, old page's Destroy on the stack is not called
- Fixed #1046: When calling DeepLink from Navigation Stack, the second page becomes Modal navigation
- Fixed #1054: When deep linking within NavigationPage, page order is reversed
- Fixed #1063: Master of MasterDetailPage will not be destroyed
- Fixed #1085: Error occurs if null path is specified in EventToCommandBehavior
- Fixed #1089: DebugLogger does not work in nuget-package
- Fixed #1132: Prism Forms Modularity extension methods
- Fixed #1133: IModuleCatalog AddModule returns wrong type
- Fixed #1139: Modularity Enhancements
- Fixed #1076: IActiveAware not working when ContentPage (as child of a TabbedPage) is wrapped into a NavigationPage
IDeviceService
- deprecated OnPlatform methods
- added DeviceRuntimePlatform property - this mimics the XF API and returns a string
- added RuntimePlatform property which returns an Enum of type RuntimePlatform and wraps the XF string-based values
Container Extensions
- deprecated the RegisterTypeForNavigationOnPlatform signature that requires explicit platform parameters
- added new signature that accepts new IPlatform objects
Example:
Container.RegisterTypeForNavigationOnPlatform<MainPage, MainPageViewModel>("Main",
new Platform<MainPage_Android>(RuntimePlatform.Android),
new Platform<MainPage_iOS>(RuntimePlatform.iOS));