Releases: dotnet/maui
Releases · dotnet/maui
8.0.61 SR6.1
What's Changed
- [iOS] Fixed NRE after calling ViewCell.ForceUpdateSize by @VitalyKnyazev in #23094
- Fix loaded so it fires on second subscription by @PureWeen in #23095
- Make sure the view is still alive after posting by @mattleibow in #23114
- Use correct interface type in FrameRenderer by @PureWeen in #23124
- Wire RefreshView up to our xplat layout workflow by @PureWeen in #23169
New Contributors
- @VitalyKnyazev made their first contribution in #23094
Full Changelog: 8.0.60...8.0.61
8.0.60 SR6
What's Changed
- Fix Android multi-window error message notation by @aqua-ix in #22350
- fix: fix 22183 RadioButton checked value by @maonaoda in #22186
- [iOS] FlyoutPage Shadow works incorrectly on iOS - fix by @kubaflo in #22351
- Fix null handling in UpdateIndicatorLayout method (#22361) by @kubaflo in #22382
- Border has a 1 pixel thickness even when it's thickness property is set to 0 - fix by @kubaflo in #21197
- [Windows] Clamp images inside buttons to button width/height by @Foda in #22276
- Don't propagate VE.Frame changes back down to the Handler by @PureWeen in #22347
- [iOS] FlyoutHeader size change fix by @kubaflo in #21692
- [WinUI] Cache gesture event subscriptions by @MartyIX in #21959
- enable css for StackBase, remove for StackLayout by @Giviruk in #22419
- [ios/catalyst] fix memory leaks in
*Cell
by @jonathanpeppers in #22067 - Prevent measure in flexlayout during arrange pass by @Foda in #22411
- generate less IL for x:Array by @StephaneDelcroix in #21615
- [Controls] Enforce CA1507 - use nameof() where possible by @symbiogenesis in #22102
- Add switch to BlazorWebView to configure 'fire and forget' for Android Disposal by @Eilon in #22496
- App Crash during Scroll Animation while navigating away from Page - fix by @kubaflo in #22492
- [Android] Geolocation IsListeningForeground property is always false by @dartasen in #21919
- Just trigger SizeChanged when Window size changes by @pictos in #22413
- [android] fix design-time build on project creation by @jonathanpeppers in #22559
- Allow PathFigureCollection to string conversion via converter by @symbiogenesis in #19889
- Fix Android ImageButton background, ripple and padding by @mattleibow in #22298
- [Android] Allow custom handler with key listener by @jsuarezruiz in #22546
- Binding Border.StrokeShape stopped working - fix by @kubaflo in #22558
- [WinUI] Optimize
TransformationExtensions
by @MartyIX in #22481 - Crash on iOS when initializing a TabbedPage without children - fix by @kubaflo in #22644
- [Windows] Improve performance of
ContentPanel.EnsureBorderPath
by @MartyIX in #22346 - Stop Android from pinning native references to system services by @aritchie in #22281
- Fixed creation of the CustomTabsActivityManager by @koviant in #22018
- [iOS] Fix ListView Scrolled event not triggering by @jsuarezruiz in #22661
- Weak Parent by @PureWeen in #22561
- TitleView causes memory leaks - fix by @kubaflo in #22673
- [Windows] Remove workaround for label text decorations by @MartyIX in #22650
- IllegalArgumentException when changing number of tabbar pages - fix by @kubaflo in #22589
- [ci] Fix rev for version by @rmarinho in #22716
- Fix the FontImageSource for Windows Unpackaged by @mattleibow in #22646
- Make sure to redraw the background drawable when the size is updated by @PureWeen in #22626
- [iOS] Crash because of FontIconSource - fix by @kubaflo in #22726
- Correct path to gather API docs artifacts in CI by @jfversluis in #22737
- Fixes BindableLayout BindingContext inheritance by @albyrock87 in #17290
- Call RootViewChanged when setting ContentView to null by @drasticactions in #20052
- Picker ItemsSource fixes by @BurningLights in #19728
- Memory Leak in Style with Trigger - fix by @kubaflo in #22503
- Support changing Window coordinates while changing those coordinates by @mattleibow in #22583
- Revert "[ios] fix memory leak in RadioButton by @PureWeen in #22800
- Make sure the package source mapping is correct by @mattleibow in #22788
- [Windows] Set
CanDrag
andAllowDrop
only if needed by @MartyIX in #22640 - Reduce the number of calls to invalidate measure by @mattleibow in #21801
- Fixing _loaded event firing logic by @rafalka in #22807
- Reset opacity when view is being reused by @PureWeen in #22820
- Update project & solution templates by @jfversluis in #22816
- Make sure ImageButton always has a background by @mattleibow in #22717
- [ios/catalyst] fix leak in NavigationPage by @jonathanpeppers in #22810
- [Android] Fix RadioButton selection in Group by @jsuarezruiz in #22787
- [Windows] Subscribe less pointer events in
UpdatingGestureRecognizers
by @MartyIX in #22781 - [ios/catalyst] fix memory leak in CollectionView cells by @jonathanpeppers in #22867
- Add DarkTheme style for Frame by @PureWeen in #22871
- [iOS] Fix setting the CurrentItem on CarouselView load by @PureWeen in #22861
- [Windows] Optimize getting default font size and font family values by @MartyIX in #22782
- Remove LINQ and reflection from EasingTypeConverter by @imememani in #19260
- [Testing] Remove IgnoreIfPlatforms usage on UITests by @jsuarezruiz in #22526
- [ios/catalyst] fix memory leak in
ToolbarItem
by @jonathanpeppers in #22893 - [Android] Border with RoundRectangle - fix by @kubaflo in #21250
- Use corrected index for CellDisplayingEnded by @PureWeen in #22912
- iOS Entry & Editor Placeholder font follows FontFamily property by @jfversluis in #22864
- Fix Android CollectionView Header and Footer Template by @PureWeen in #22889
Docs
Dependency Updates
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #22791
- Update dependabot.yml to fix slash vs. dash by @Eilon in #22337
- Add provisioning mono back by @rmarinho in #22395
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #22663
- [ci] Update packages System.Drawing by @rmarinho in #22691
- Update SkiaSharp by @mattleibow in #21648
Tests
- [tests] fix F5 for Windows device tests by @jonathanpeppers in #22835
- Ignore orientation CarV test for Mac by @PureWeen in #22934
- Fix Appium install PowerShell script by @jfversluis in #22883
- Fix appium-install.ps1 by @mattleibow in #22916
- Flakey test fixes by @PureWeen in #22338
- Add unit test for button images in layouts by @molesmoke in #21651
- [Testing] Split up current appium tests into separate projects by @jsuarezruiz in #21908
- [Housekeeping] Remove duplicate tests from LayoutTests by @jsuarezruiz in #22456
- Update to correct ExcludeMicrosoftNetTestSdk by @rmarinho in #22459
- [Testing] Add legacy CollectionView UITests by @jsuarezruiz in #18979
- [Housekeeping] Moved Issue20696 to the correct new TestCases path by @jsuarezruiz in #22483
- Clean up some of the UI tests code by @mattleibow in #22550
- Update appium/drivers versions by @Redth in #22552
- [testing] Try xunit 2.6.6 with 2.8.0 vs runner by @Redth in #22621
- [Testing] Removed repetitive code from UITests by @jsuarezruiz in #22679
- [Testing] Added attribute to mark (and ignore) flaky UI Tests by @jsuarezruiz in #22684
- Fix the tests in VS by @mattleibow in #22700
- Add a bunch of button tests by @Foda in #22622
- [Housekeeping] Fix Issue22433Test by @jsuarezruiz in ...
9.0.0-preview.5.24307.10
MAUI Product Fixes
- Fix TargetType simplification bug by @simonrozsival in #21764
- fix: Use AppContext.BaseDirectory instead of Environment.CurrentDirec… by @PreciousNyasulu in #21797
- [iOS/catalyst] fix memory leak with CollectionView by @jonathanpeppers in #21850
- [iOS] Fix crash closing Popup with WebView by @PureWeen in #21923
- [iOS] Fix KeyboardScrolling for controls inside the NavBar by @tj-devel709 in #21806
LayoutHandler.Windows
: Store children to a local variable by @MartyIX in #21792- [controls] fix leak in ImageSource, caused by Task that never completes by @jonathanpeppers in #21928
- More IndexOf() optimization by @symbiogenesis in #20083
- [ios/catalyst] fix memory leak in gestures by @jonathanpeppers in #21887
- [WinUI]
GesturePlatformManager.Windows.cs
- unused variable by @MartyIX in #21953 - IndexOf() stackOverflow fix (#20083) by @kubaflo in #21965
- Fix null reference exception in KeyboardAutoManagerScroll when UIWindow is null by @Axemasta in #21753
- [android] use Java primitive
boolean
forUriImageSource
by @jonathanpeppers in #22040 - [Windows] Remove 2nd WebView used to add
base
tag when using HtmlWebViewSource by @Foda in #21892 - Improve error logging for failed resizetizering by @mattleibow in #22064
- Fix TabbedPage title displaying incorrectly by @Adam-- in #17039
- [Android] Crash removing item from CarouselView - fix by @kubaflo in #22107
- [iOS] Shell page title fix by @kubaflo in #20575
- Android mipmap/appicon failing with "APT2260" by @dellis1972 in #21838
- [Windows] Fix pointer released event not being handled on ImageButton by @Foda in #21766
- Fix text toolbar item icon not removed when navigating on Android by @Adam-- in #16796
- Shape crash on 125% display size by @Foda in #22283
- Remove excess check in iOS input transparency checks by @PureWeen in #21883
- Trigger remeasure when constraints on CV changes by @PureWeen in #22270
- Fix PopoverPresentationController for action sheet by @PureWeen in #22312
- [ios/catalyst] fix memory leak in modal pages by @jonathanpeppers in #22089
- Fix Legacy gallery by @mattleibow in #22334
- [Android] CarouselView: VirtualView cannot be null here, when clearing and adding items on second navigation - fix by @kubaflo in [#22207](https://github.com/* /pull/22207)
- Fix Android multi-window error message notation by @aqua-ix in #22350
- fix: fix 22183 RadioButton checked value by @maonaoda in #22186
- [iOS] FlyoutPage Shadow works incorrectly on iOS - fix by @kubaflo in #22351
- Fix null handling in UpdateIndicatorLayout method (#22361) by @kubaflo in #22382
- Border has a 1 pixel thickness even when it's thickness property is set to 0 - fix by @kubaflo in #21197
- Crash on iOS when initializing a TabbedPage without children - fix by @kubaflo in #22644
- IllegalArgumentException when changing number of tabbar pages - fix by @kubaflo in #22589
- TitleView causes memory leaks - fix by @kubaflo in #22673
- App Crash during Scroll Animation while navigating away from Page - fix by @kubaflo in #22492
- Binding Border.StrokeShape stopped working - fix by @kubaflo in #22558
- [Android] Geolocation IsListeningForeground property is always false by @dartasen in #21919
- Stop Android from pinning native references to system services by @aritchie in #22281
- Fixed creation of the CustomTabsActivityManager by @koviant in #22018
- [iOS] Fix ListView Scrolled event not triggering by @jsuarezruiz in #22661
- Weak Parent by @PureWeen in #22561
- [iOS] Crash because of FontIconSource - fix by @kubaflo in #22726
- Fixes BindableLayout BindingContext inheritance by @albyrock87 in #17290
- Call RootViewChanged when setting ContentView to null by @drasticactions in #20052
- Picker ItemsSource fixes by @BurningLights in #19728
- Memory Leak in Style with Trigger - fix by @kubaflo in #22503
- Support changing Window coordinates while changing those coordinates by @mattleibow in #22583
- Revert "[iOS] fix memory leak in RadioButton by @PureWeen in #22800
- [Windows] Set
CanDrag
andAllowDrop
only if needed by @MartyIX in #22640 - [workload] fix missing files during the build by @jonathanpeppers in #22804
- Stop Android from pinning native references to system services by @aritchie in #22281
- Fixed creation of the CustomTabsActivityManager by @koviant in #22018
- [iOS] Fix ListView Scrolled event not triggering by @jsuarezruiz in #22661
- Weak Parent by @PureWeen in #22561
- [iOS] Crash because of FontIconSource - fix by @kubaflo in #22726
- Fixes BindableLayout BindingContext inheritance by @albyrock87 in #17290
- Call RootViewChanged when setting ContentView to null by @drasticactions in #20052
- Picker ItemsSource fixes by @BurningLights in #19728
- Memory Leak in Style with Trigger - fix by @kubaflo in #22503
- Support changing Window coordinates while changing those coordinates by @mattleibow in #22583
- Revert "[iOS] fix memory leak in RadioButton by @PureWeen in #22800
- Make sure the package source mapping is correct by @mattleibow in #22788
- [Windows] Set
CanDrag
andAllowDrop
only if needed by @MartyIX in #22640 - Re-generate template localization by @mattleibow in #21988
- enable css for StackBase, remove for StackLayout by @Giviruk in #22419
- Revert ios button changes by @PureWeen in #22300
- Remove implicit reference to Maui Compatibility and template references by @PureWeen in #22203
- Add .NET MAUI Blazor Hybrid + Web App solution template by @Eilon in #22234
- [build] make
TrimMode=full
function like NativeAOT by @jonathanpeppers in #22282
Docs
- [Docs] Update Shell inline comments by @jsuarezruiz in #20912
- [Docs] Correct path to gather API docs artifacts in CI by @jfversluis in #22737
Tests
- Fix screenshot for 18242 for new test behavior by @PureWeen in #22081
- Go back to ignoring ExpectingPageNotToBreak by @PureWeen in #21940
- Setup scaffolding for legacy test runner by @jsuarezruiz in #21423
- [UI Testing] Split mouse and touch Appium actions and added pending ones (TouchAndHold etc) by @jsuarezruiz in #21305
- [iOS] Add UITest for #21806 by @tj-devel709 in #21951
- Navigate Directly to Test by @PureWeen in #22019
- [UI Testing] Implement PressEnter method by @jsuarezruiz in #22112
- [Windows] Reenabled ReturnsNonEmptyNativeBoundingBox tests by @jsuarezruiz in [#20238](https://github.com/dotnet/maui/...
9.0.0-preview.4.10690
What's Changed
Known issues:
- XamlC Error with
RelativeSource
andx:DataType
: When usingRelativeSource
bindings, you may encounter XamlC error XFC0045. To fix this issue, setx:DataType
directly within the {Binding} expression. This will compile despite Visual Studio showing an error.
Command="{Binding Source={RelativeSource AncestorType={x:Type vm:MyViewModel}}, Path=SelectCommand, x:DataType=vm:MyViewModel}"
MAUI Product Fixes
- [xaml] improve performance in debug-mode by @jonathanpeppers in #21460
- [C] fix a leak in VSG by @StephaneDelcroix in #21484
- fix 21503 by @StephaneDelcroix in #21524
- [Android] Span line height fix by @kubaflo in #20352
- [Android] Fix Ripple effect with custom background (alternative to #17821) by @jsuarezruiz in #20412
- re-fix 21525 by @StephaneDelcroix in #21578
- Add remark Screenshot Quality only applies to JPG by @jfversluis in #21610
- Resizetizer issues fixes - nuget bumps by @moljac in #16100
- [C] remove listener on changing MainPage by @StephaneDelcroix in #21616
- Don't worry about the size of the text by @PureWeen in #21628
- Add better exception if user opens second activity by @PureWeen in #21492
- Making sure FindMauiContext fallbacks to default for the title icon i… by @atoghyani in #21519
- IndicatorView IndicatorTemplate Binding by @VladislavAntonyuk in #19004
- Set Views used for CarouselView to Match Parent by @PureWeen in #21662
- [Windows] Prevent image from covering text in buttons if the image is too big by @Foda in #21516
- BindableObject System.NullReferenceException when bindings queue gets messed up by @taublast in #21523
- [WinUI] Allocate less when updating gestures by @MartyIX in #21450
- Fixed entry text color [iOS] by @kubaflo in #20100
- [android] improve FormattedString performance by @jonathanpeppers in #21712
- [Catalyst] Add default FilePickerFileTypes by @rmarinho in #21689
- [Trimming] Remove unnecessary regular expressions by @simonrozsival in #21497
- Light up HideSoftInputOnTappedChanged for catalyst by @PureWeen in #21529
- Init the flex item before adding it to the layout by @mattleibow in #21737
- Use the path for determining the extension by @mattleibow in #21761
- [Catalyst,Windows] Allow drag item from outside the app by @rmarinho in #21684
- [ios/catalyst] avoid duplicating
UIView.Subviews
arrays by @jonathanpeppers in #21765 - [Android] Fixed box view properties by @kubaflo in #21322
- fix issue in orientation of images by @stephen-hawley in #21458
- [iOS] Fix crash closing Popup with WebView by @jsuarezruiz in #21718
- [Trimming] Enable trimming and AOT analyzers by @simonrozsival in #21505
- [Android] Fix crash navigating back by @jsuarezruiz in #20420
- [XC] Fix x:DataType resolution for BindingContext by @simonrozsival in #21454
- [Trimming] Use new feature switch definition attribute and enable analyzers in Controls.Core.csproj by @simonrozsival in #21621
- Added TimePicker TimeSelected Event (Reopened) by @Axemasta in #21156
Docs
- Clarify PlatformImage supported image formats docs by @jfversluis in #21697
- Document NavigableElement by @jknaudt21 in #21507
Tests
- [net9.0] Revert "[net9.0] [testing] Enable Windows UITests back (#20727)" by @rmarinho in #21560
- [Testing] Add legacy ScrollView UITests by @jsuarezruiz in #19054
- [net9.0] [testing] Enable Windows UITests back (#20727) and make sure Android works too by @jfversluis in #21636
- Make sure to await async test asserts (2) by @MartyIX in #20506
- [Testing] Update Appium to RC7 by @jsuarezruiz in #21720
- Move CollectionViewItemsLayoutUpdate to appium by @PureWeen in #21767
- Add Links to Testing WIKI by @PureWeen in #21813
- Remove old information from UITesting.md by @PureWeen in #21815
- Hide button for screenshot on test 19509 by @PureWeen in #21823
- [Testing] Extend NativeAOT Templates tests to cover all supported platforms by @ivanpovazan in #21793
Dependency Updates
- [net9.0] Bump the reference to the net8.0 workload by @rmarinho in #21508
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21556
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21625
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21664
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21703
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21710
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21839
- [net9.0] Update dependencies from xamarin/xamarin-android by @dotnet-maestro in #21623
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21788
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21864
- [net9.0] Update dependencies from xamarin/xamarin-macios by @dotnet-maestro in #21847
- [net9.0] Update dependencies from xamarin/xamarin-macios by @dotnet-maestro in #21884
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21880
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21888
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21920
- [net9.0] Update dependencies from xamarin/xamarin-android by @dotnet-maestro in #21891
- [net9.0] Update dependencies from xamarin/xamarin-macios by @dotnet-maestro in #21906
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21949
- [net9.0] Update dependencies from xamarin/xamarin-macios by @dotnet-maestro in #21985
- [net9.0] Update dependencies from xamarin/xamarin-android by @dotnet-maestro in #21987
- [net9.0] Update dependencies from dotnet/aspnetcore by @dotnet-maestro in #21982
- Update versions preview4 by @rmarinho in #22118
- [release/9.0.1xx-preview4] Update versions for release of 9.0.0 p4 by @rmarinho in #22227
- [release/9.0.1xx-preview4] Update versions for preview4 by @rmarinho in #22293
- [release/9.0.0-preview4] Update versions by @rmarinho in #22392
- [release/9.0.1xx-preview4] Update release versions for net9 preview4 by @rmarinho in #22446
Housekeeping
- [net9.0] Fix rollback for net9 by @rmarinho in #21512
- [net9.0] Move to 9.0.100 preview4 by @rmarinho in #21510
- Update GitInfo.txt 8.0.20-preview by @PureWeen in #21672
- Update GitInfo.txt to 8.0.40 by @PureWeen in #21673
- Update bug-report.yml to add 8.0.14 and 9.0.0-preview.2.10293 by @beeradmoore in #21676
- [net9.0] Merge net9.0 to main by @rmarinho in #21666
- Add Helpers to aide Debugging MSBuild tasks by @dellis1972 in #20695
- Update GitInfo.txt to 8.0.21-preview by @PureWeen in #21729
- Add 8.0.20 to bug template by @PureWeen in #21739
- Add .NET MAUI into the launch settings by @mattleibow in #21760
- Add s/triaged label for issues opened by core team by @jfversluis in #21775
- Merge the fixes on SR4 into main by @mattleibow in #21782
- [net9.0] Merge main to net9.0 by @rmarinho in https://github.com/do...
8.0.40 SR5
Behavior Change
What's Changed
- BindableObject System.NullReferenceException when bindings queue gets messed up by @taublast in #21523
- [WinUI] Allocate less when updating gestures by @MartyIX in #21450
- Fixed entry text color [iOS] by @kubaflo in #20100
- [Catalyst] Add default FilePickerFileTypes by @rmarinho in #21689
- Clarify PlatformImage supported image formats docs by @jfversluis in #21697
- Add .NET MAUI into the launch settings by @mattleibow in #21760
- [Catalyst,Windows] Allow drag item from outside the app by @rmarinho in #21684
- [Android] Fixed box view properties by @kubaflo in #21322
- fix issue in orientation of images by @stephen-hawley in #21458
- [iOS] Fix crash closing Popup with WebView by @jsuarezruiz in #21718
- [Android] Fix crash navigating back by @jsuarezruiz in #20420
- [XC] Fix x:DataType resolution for BindingContext by @simonrozsival in #21454
- fix: Use AppContext.BaseDirectory instead of Environment.CurrentDirec… by @PreciousNyasulu in #21797
- [ios/catalyst] fix memory leak with CollectionView by @jonathanpeppers in #21850
LayoutHandler.Windows
: Store children to a local variable by @MartyIX in #21792- [controls] fix leak in ImageSource, caused by Task that never completes by @jonathanpeppers in #21928
- More IndexOf() optimization by @symbiogenesis in #20083
- [ios/catalyst] fix memory leak in gestures by @jonathanpeppers in #21887
- [WinUI]
GesturePlatformManager.Windows.cs
- unused variable by @MartyIX in #21953 - IndexOf() stackOverflow fix (#20083) by @kubaflo in #21965
- Re-generate template localization by @mattleibow in #21988
- [Windows] Remove 2nd WebView used to add
base
tag when using HtmlWebViewSource by @Foda in #21892 - [ios/catalyst] fix memory leaks in ListView by @jonathanpeppers in #22007
- [Windows] Use correct build version check by @Foda in #22013
- [iOS] Implemented PrefersHomeIndicatorAutoHidden, PrefersStatusBarHidden and PreferredStatusBarUpdateAnimation Platform Specifics by @kubaflo in #20069
- [Windows] Reenabled ReturnsNonEmptyNativeBoundingBox tests by @jsuarezruiz in #20238
- Fix null reference exception in KeyboardAutoManagerScroll when UIWindow is null by @Axemasta in #21753
- [android] use Java primitive
boolean
forUriImageSource
by @jonathanpeppers in #22040 Microsoft.Maui-dev.sln
contains an invalid path by @MartyIX in #22033- Enforce CA1853 performance analyzer by @symbiogenesis in #22092
- Improve error logging for failed resizetizering by @mattleibow in #22064
- Fix TabbedPage title displaying incorrectly by @Adam-- in #17039
- [Android] Crash removing item from CarouselView - fix by @kubaflo in #22107
- [iOS] Shell page title fix by @kubaflo in #20575
- Android mipmap/appicon failing with "APT2260" by @dellis1972 in #21838
- [Windows] Fix pointer released event not being handled on ImageButton by @Foda in #21766
- Fix text toolbar item icon not removed when navigating on Android by @Adam-- in #16796
- Shape crash on 125% display size by @Foda in #22283
- [Windows] Avoid Carousel changes the current position when window is resized by @jsuarezruiz in #22222
- Remove excess check in iOS input transparency checks by @PureWeen in #21883
- Don't include removed projects by @mattleibow in #22294
- Revert ios button changes by @PureWeen in #22300
- Trigger remeasure when constraints on CV changes by @PureWeen in #22270
- Fix PopoverPresentationController for action sheet by @PureWeen in #22312
- [ios/catalyst] fix memory leak in modal pages by @jonathanpeppers in #22089
- [Android] CarouselView: VirtualView cannot be null here, when clearing and adding items on second navigation - fix by @kubaflo in #22207
Tests
- add unit test for EnumerableExtensions by @symbiogenesis in #21978
- Navigate Directly to Test by @PureWeen in #22019
- [release/8.0.1xx-sr5] Flakey test fixes by @github-actions in #22340
- Fix Legacy gallery by @mattleibow in #22334
- Fix UITests so it can recover from unresponsive app by @PureWeen in #22240
- [UI Testing] Implement PressEnter method by @jsuarezruiz in #22112
- Fix screenshot for 18242 for new test behavior by @PureWeen in #22081
- [iOS] Add UITest for #21806 by @tj-devel709 in #21951
- [UI Testing] Split mouse and touch Appium actions and added pending ones (TouchAndHold etc) by @jsuarezruiz in #21305
- Make sure to await async test asserts (2) by @MartyIX in #20506
- [Testing] Update Appium to RC7 by @jsuarezruiz in #21720
- Add Links to Testing WIKI by @PureWeen in #21813
- Remove old information from UITesting.md by @PureWeen in #21815
- Hide button for screenshot on test 19509 by @PureWeen in #21823
- [cake] add
SourceGen.UnitTests
by @jonathanpeppers in #21889 - Go back to ignoring ExpectingPageNotToBreak by @PureWeen in #21940
- Setup scaffolding for legacy test runner by @jsuarezruiz in #21423
Docs
- Document NavigableElement by @jknaudt21 in #21507
- [Docs] Update Shell inline comments by @jsuarezruiz in #20912
Dependency Updates
- Update locker.yml by @RussKie in #21894
- [main] Update arcade by @rmarinho in #22265
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21703
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21839
- Don't push to maestro by default by @rmarinho in #22295
- Make sure to copy and push the vs-workloads props by @rmarinho in #22266
- [ci] Move to arcade , remove GitInfo and Mono dependencies by @rmarinho in #21487
- Support manual triggering of similar issues by @mattleibow in #22176
- Create similarIssues.yml which automatically comments with similar issues on the repo by @craigloewen-msft in #22170
- Add VS Code Extension to move-to-vs-feedback label by @jfversluis in #22152
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #22119
- Add s/triaged label for issues opened by (core) team by @jfversluis in #22006
- Update bug-report.yml to add 8.0.14 and 9.0.0-preview.2.10293 by @beeradmoore in #21676
- Add Helpers to aide Debugging MSBuild tasks by @dellis1972 in #20695
- Add s/triaged label for issues opened by core team by @jfversluis in #21775
New Contributors
- @taublast made their first contribution in #21523
- @PreciousNyasulu made their first contribution in #21797
- @RussKie made their first contribution in #21894
- @Adam-- made their first contribution in #17039
- @craigloewen-msft made their first contribution in #22170
Full Changelog: 8.0.21...8.0.40
8.0.21 SR4.1
What's Changed
- [android] improve FormattedString performance by @jonathanpeppers in #21712
- Light up HideSoftInputOnTappedChanged for catalyst by @PureWeen in #21529
- Init the flex item before adding it to the layout by @mattleibow in #21737
- Use the path for determining the extension by @mattleibow in #21761
- [ios/catalyst] avoid duplicating
UIView.Subviews
arrays by @jonathanpeppers in #21765 - Move CollectionViewItemsLayoutUpdate to appium by @PureWeen in #21767
- [Xaml] Fix TargetType simplification bug by @simonrozsival in #21764
- [C] Propagate resources when reparenting by @StephaneDelcroix in #21879
- [iOS] Fix crash closing Popup with WebView by @PureWeen in #21923
- [iOS] Fix KeyboardScrolling for controls inside the NavBar by @tj-devel709 in #21806
Full Changelog: 8.0.20...8.0.21
9.0.100-preview.3.10457
What's Changed
MAUI Product fixes
- [Windows] Fix image button scaling by @Foda in #20949
- [iOS] Double dash in input field crash fix by @kubaflo in #20584
- [Android] Don't remeasure the HScrollView during the layout pass by @PureWeen in #20998
- [Android] Fix ShouldShowToolbarButton for FlyoutPage by @bradencohen in #18522
- Generalize HideSoftInputOnTapped on Android and iOS to support 3rd party input controls by @albyrock87 in #19626
- [net9.0] Fix maui query attribute support by @rmarinho in #21061
- [main] [net9.0] Fix templates by @github-actions in #21055
- [XC] Compile bindings with Source by @simonrozsival in #20610
- [Trimming] Fix ILLink warnings in source generated code by @simonrozsival in #21054
- [Windows] Round item size in GridView by @Foda in #21142
- [Android] System Fonts fix by @kubaflo in #20961
- Fix XmlType .Equals override by @mgoertz-msft in #21192
- [iOS] Fix UI loop when setting ContentInset by @rmarinho in #21140
- [Android] Correctly scale Button image by @jsuarezruiz in #19834
- [android] fix memory leak in
TabbedPage
by @jonathanpeppers in #21218 - Allow using x:Type and type literals interchangeably in certain scenarios by @simonrozsival in #20915
- Optimize performance of Flex.Item by @symbiogenesis in #20034
- [ios] fix memory leak in RadioButton by @jonathanpeppers in #21151
- [Windows] Fix CanvasImageSource scaling behavior (SR3) by @Foda in #21239
- Update Template Shell Foreground colour by @licon4812 in #20152
- [Windows] Fix FontImageSource resize behavior by @Foda in #21212
- Throw error when pushing without wrapping into navigation page by @kubaflo in #20155
- Update the Multi-Project styles by @mattleibow in #21282
- [ios] avoid duplicating
CALayer.Sublayer
arrays by @jonathanpeppers in #21308 - [C] use ResourcesChanged to propagate Theme by @StephaneDelcroix in #21229
- Rework foreground color and remove outdated methods by @PureWeen in #21238
- GetValueSource by @StephaneDelcroix in #19563
- Update Styles.xaml on Multi Project by @PureWeen in #21363
- Removed vestigial UpdateContentLayout() method left over from Forms by @hartez in #18856
- Change activity attributes by @Redth in #20653
- Fix PropertyChanged on idx for compiledbindings by @StephaneDelcroix in #21366
- Improve warnings when binding cannot be compiled by @simonrozsival in #21281
- Only show x:DataType warnings when using NativeAOT by @simonrozsival in #21418
- Still measure children if size is known on CV by @PureWeen in #21409
- [Windows] Cache full app package file path by @MartyIX in #21246
- [Trimming] Use type converters instead of implicit cast operators (part 1/2) by @simonrozsival in #21050
- [android] Add null check to help with #21393 by @rmarinho in #21432
- Remove new TypeConversionAppBuilderExtensions API by @simonrozsival in #21459
- [macOS] Make window overlay to redraw correctly during window resizing by @MartyIX in #21371
- Fix for WebView Error when changing page with WebView loading a page by @dustin-wojciechowski in #21436
- [android] avoid
OnLayout()
forLabel
by @jonathanpeppers in #21291 - [XamlC] Avoid calling ResourceDictionary.SetAndLoadSource by @simonrozsival in #20776
- [Xaml] Simplify loading ResourceDictionary from Source by @simonrozsival in #21429
- [controls] improve perf of "merged" ResourceDictionary lookups by @jonathanpeppers in #21334
- Fix display of ActionSheet in modal view on Windows by @japarson in #21295
- [Windows] Ensure images in buttons never scale up, only down by @Foda in #21463
- Cleanup ResourceDictionary by @simonrozsival in #21486
- [Trimming] Use type converters instead of implicit cast operators (part 2/2) by @simonrozsival in #21052
- [Trimming] Enable trimming and AOT analyzers in Core by @simonrozsival in #21076
Docs
- Improve WebAuthenticator API docs with exceptions by @jfversluis in #20860
- Update Maps Project API Docs by @jfversluis in #20893
- Update layout.md by @MartyIX in #20964
- Small fix for WebAuthenticator TaskCanceledException API docs by @jfversluis in #21040
- Document ICanvas by @jknaudt21 in #20881
- Add install mono step to macOS setup guide by @jkurdek in #21433
- Make the dev docs more betterer by @stephen-hawley in #21467
Tests
- Fix image loading tests by @PureWeen in #20955
- Enable now passing tests and add some TableView categories by @PureWeen in #20531
- Use a different gif URL as MS News blocked us by @mattleibow in #21003
- Disable auto updating on device and better prepare logcat by @PureWeen in #20732
- [Windows] Ensure consistent background colors for UI test cases by @Foda in #21022
- [testing] Cleaning up TemplateTests iOS simulator issues by @ivanpovazan in #20817
- [testing] Add CollectionView MemoryLeak test by @rmarinho in #21237
- [Windows] Add scrolling tests for virtualization w/ Datatemplates by @Foda in #20954
- Remove check allocation tests from core by @PureWeen in #21283
- [Testing] Updated to latest RC.6 of Appium by @jsuarezruiz in #20694
- [testing] Ignore failing tests by @rmarinho in #21266
- Find failing Frame tests in CI by @PureWeen in #21287
- Fix Namesapces on Frame DeviceTests by @PureWeen in #21311
- Make PopLifeCycle more reliable by @PureWeen in #21380
- Update BlazorWebView Device Tests to have longer timesouts and more retries by @Eilon in #21318
- Move 10234 to Appium by @PureWeen in #21471
- [Windows] Add crash dumps as artifacts to tests by @Foda in #21493
- [net9.0] [testing] Enable Windows UITests back by @rmarinho in #20727
Dependency Updates
- Bump the windowsappsdk group with 3 updates by @PureWeen in #20460
- [net9.0] Update net9.0 with release versions by @rmarinho in #20983
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #20989
- Revert to 1.4.240211001 by @PureWeen in #21031
- Update Windows App SDK by @mattleibow in #21162
- Update Win2D by @mattleibow in #21144
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21133
- [net9.0] Bump Samsung Tizen versions by @rmarinho in #21275
- [net9.0] Update all net9 versions preview3 by @rmarinho in #21276
- [net9.0] Update dependencies from xamarin/xamarin-android by @dotnet-maestro in #21341
- [net9.0] Update dependencies from xamarin/xamarin-macios by @dotnet-maestro in #21340
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21424
- [net9.0] Update versions by @rmarinho in #21373
- [net9.0] Update dependencies from xamarin/xamarin-android by @dotnet-maestro in #21425
- [net9.0] Update dependencies from xamarin/xamarin-macios by @dotnet-maestro in #21440
- [net9.0] Update dependencies from xamarin/xamarin-android by @dotnet-maestro in #21443
- [release/9.0.1xx-preview3] [net9.0] Bump the reference to the net8.0 workloa...
8.0.20 SR4
What's Changed
- Small fix for WebAuthenticator TaskCanceledException API docs by @jfversluis in #21040
- [Windows] Ensure consistent background colors for UI test cases by @Foda in #21022
- [Windows] Round item size in GridView by @Foda in #21142
- [Android] System Fonts fix by @kubaflo in #20961
- [testing] Cleaning up TemplateTests iOS simulator issues by @ivanpovazan in #20817
- [testing] Add CollectionView MemoryLeak test by @rmarinho in #21237
- [Windows] Add scrolling tests for virtualization w/ Datatemplates by @Foda in #20954
- [Android] Correctly scale Button image by @jsuarezruiz in #19834
- [android] fix memory leak in
TabbedPage
by @jonathanpeppers in #21218 - [XAML] Allow using x:Type and type literals interchangeably in certain scenarios by @simonrozsival in #20915
- Optimize performance of Flex.Item by @symbiogenesis in #20034
- [ios] fix memory leak in RadioButton by @jonathanpeppers in #21151
- Update Template Shell Foreground colour by @licon4812 in #20152
- [Windows] Fix FontImageSource resize behavior by @Foda in #21212
- Throw error when pushing without wrapping into navigation page by @kubaflo in #20155
- [ios] avoid duplicating
CALayer.Sublayer
arrays by @jonathanpeppers in #21308 - [C] use ResourcesChanged to propagate Theme by @StephaneDelcroix in #21229
- [ci] Fix APIScan by @rmarinho in #21358
- [XAML] GetValueSource by @StephaneDelcroix in #19563
- Update Styles.xaml on Multi Project by @PureWeen in #21363
- Make PopLifeCycle more reliable by @PureWeen in #21380
- Removed vestigial UpdateContentLayout() method left over from Forms by @hartez in #18856
- Change activity attributes by @Redth in #20653
- [XAML] Fix PropertyChanged on idx for compiledbindings by @StephaneDelcroix in #21366
- [XAML] Improve warnings when binding cannot be compiled by @simonrozsival in #21281
- [XAML] Only show x:DataType warnings when using NativeAOT by @simonrozsival in #21418
- Still measure children if size is known on CV by @PureWeen in #21409
- [Windows] Cache full app package file path by @MartyIX in #21246
- [android] Add null check to help with #21393 by @rmarinho in #21432
- [macOS] Make window overlay to redraw correctly during window resizing by @MartyIX in #21371
- Fix for WebView Error when changing page with WebView loading a page by @dustin-wojciechowski in #21436
- [android] avoid
OnLayout()
forLabel
by @jonathanpeppers in #21291 - [controls] improve perf of "merged" ResourceDictionary lookups by @jonathanpeppers in #21334
- Fix display of ActionSheet in modal view on Windows by @japarson in #21295
- [Windows] Ensure images in buttons never scale up, only down by @Foda in #21463
- [Windows] Add crash dumps as artifacts to tests by @Foda in #21493
- [xaml] improve performance in debug-mode by @jonathanpeppers in #21460
- [C] fix a leak in VSG by @StephaneDelcroix in #21484
- fix 21503 by @StephaneDelcroix in #21524
- [Android] Span line height fix by @kubaflo in #20352
- [Android] Fix Ripple effect with custom background (alternative to #17821) by @jsuarezruiz in #20412
- re-fix 21525 by @StephaneDelcroix in #21578
- Resizetizer issues fixes - nuget bumps by @moljac in #16100
- [C] remove listener on changing MainPage by @StephaneDelcroix in #21616
- Don't worry about the size of the text by @PureWeen in #21628
- Add better exception if user opens second activity by @PureWeen in #21492
- Making sure FindMauiContext fallbacks to default for the title icon i… by @atoghyani in #21519
- IndicatorView IndicatorTemplate Binding by @VladislavAntonyuk in #19004
- Set Views used for CarouselView to Match Parent by @PureWeen in #21662
- [Windows] Prevent image from covering text in buttons if the image is too big by @Foda in #21516
Tests
- [Testing] Add legacy ScrollView UITests by @jsuarezruiz in #19054
- Move 10234 to Appium by @PureWeen in #21471
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21424
- Update BlazorWebView Device Tests to have longer timesouts and more retries by @Eilon in #21318
- Find failing Frame tests in CI by @PureWeen in #21287
- Fix Namesapces on Frame DeviceTests by @PureWeen in #21311
- [testing] Ignore failing tests by @rmarinho in #21266
- [Testing] Updated to latest RC.6 of Appium by @jsuarezruiz in #20694
- Remove check allocation tests from core by @PureWeen in #21283
- Update Windows App SDK by @mattleibow in #21162
- Update Win2D by @mattleibow in #21144
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21133
- Disable auto updating on device and better prepare logcat by @PureWeen in #20732
Docs
- Add remark Screenshot Quality only applies to JPG by @jfversluis in #21610
- Make the dev docs more betterer by @stephen-hawley in #21467
- Add install mono step to macOS setup guide by @jkurdek in #21433
- Document ICanvas by @jknaudt21 in #20881
- Update repo documentation to reference Policy Service instead of FabricBot by @jeffhandley in #21063
- Bump editorconfig csharp_prefer_braces down to suggestion by @jfversluis in #21041
Dependency Updates
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #21556
New Contributors
- @licon4812 made their first contribution in #20152
- @jkurdek made their first contribution in #21433
- @stephen-hawley made their first contribution in #21467
- @atoghyani made their first contribution in #21519
Full Changelog: 8.0.14...8.0.20
8.0.14 SR3.1
What's Changed
- Fix XmlType .Equals override by @mgoertz-msft in #21192
- [iOS] Fix UI loop when setting ContentInset by @rmarinho in #21140
- [Windows] Fix CanvasImageSource scaling behavior (SR3) by @Foda in #21239
- Update the Multi-Project styles by @mattleibow in #21282
Full Changelog: 8.0.10...8.0.14
9.0.0-preview.2.10293
Installation
Install .NET 9 and the .NET MAUI workload to get started with this release.
What's Changed
- [Windows] Resolve issues with the Switch Track Color tests by @jsuarezruiz in #20221
- iOS Next Entry to skip hidden parents by @tj-devel709 in #20160
- PanGesture notify Completed event moving outside View limits by @jsuarezruiz in #15700
- [WinUI] Fix gif animation initial state by @mattleibow in #20169
- Fix "You" typo in raw-assets.txt by @drasticactions in #20341
- Account for margins on sizes returned from Editor by @PureWeen in #20249
- If the current thread dispatcher is null return the app level dispatcher by @PureWeen in #20313
- [iOS] Remove a nullability error when using 17.2.8104 by @mandel-macaque in #20396
- Ignore SafeArea on templates and shell flyout item templates by @PureWeen in #20403
- [Trimming] Add a feature flag to disable XAML loading at runtime by @simonrozsival in #19310
- [iOS] Fixed Collection View header and footer update by @kubaflo in #20210
- Bring back some aspect of ConvertView on TableView and avoid AT_MOST Measure by @PureWeen in #20130
- [C] ColorTypeConverter include alpha when <1 by @StephaneDelcroix in #20414
- Add opt out for Application Dispatcher resolution by @PureWeen in #20447
- Android SecureStorage: Stop caching shared preferences instance to fix RemoveAll by @Redth in #20445
- [Trimming] Disable assembly scanning for types implementing IVisual by @simonrozsival in #20417
- [iOS] Fixes carouselview layout on iOS by @NielsKnaap in #20001
- Fix design time image converter by @etvorun in #20374
- [release/8.0.1xx-sr2] Fix design time image converter by @github-actions in #20476
- [Trimming] Fix trimming warnings related to image source service provider by @simonrozsival in #20058
- Revert "Added appium UITest for FlyoutNavigationBetweenItemsWithNavigationStacks by @PureWeen in #20509
- [iOS] Clear BindingContext when cell is queued for reuse by @filipnavara in #14619
- [XAML] Fix XamlCompilation of RD subclasses by @StephaneDelcroix in #20463
- Add benchmarking class for PropertyMapper extensions by @hartez in #18660
- Add '#' to trigger UrlEncoding on Android PhoneDialer by @borrmann in #20498
- Removes dead code from type conversion by @vitek-karas in #19436
- Devices.Sensors.Location: rework argument handling in constructors by @janusw in #19459
- Optimize GetVisualTreeElementsWindowsInternal by @symbiogenesis in #19984
- Fix OnPlatform + Setter when no match for current platform by @BretJohnson in #17061
- [Android] Make Flyout footer aware of header/content margin by @emaf in #19303
- Fix connectivity broadcast receiver never triggered on android 14.0/34+ by @pierre-galaup in #19968
- Remove allocation from Color.TryParse by @eerhardt in #20446
- Bump to latest VisualTestUtils by @BretJohnson in #20525
- Temporarily Remove Tests by @PureWeen in #20536
- Add support for relative binding sources to TypedBinding by @simonrozsival in #20415
- Merge branch 'main' into
net9.0
by @PureWeen in #20555 - Add SR2 to issue template by @PureWeen in #20564
- [XC] only generate the services that'll be used by @StephaneDelcroix in #19945
- [Trimming] Fix remaining trimming warnings related to XAML parsing by @simonrozsival in #20474
- [iOS] Fix gestures in Label Spans by @jsuarezruiz in #15544
- [XC] split warnings on ',' and ';' by @StephaneDelcroix in #20578
- [iOS] Adjust Keyboard Scrolling for Sticky Headers and Fix Bottom Content Inset by @tj-devel709 in #20562
- Add the multi-project template by @mattleibow in #20365
- Add new Keyboards for Prompt by @pictos in #20194
- Add animated GIF support for Image on iOS by @mattleibow in #19411
- (Windows) ImageButton contents now explicitly stretches by @Foda in #17159
- [XC] Allow generic types in x:DataType and x:Type by @simonrozsival in #20625
- Fix modal page push in immersive mode by @PavloLukianets in #19903
- [Android Connectivity] Set app package on Intent used to invoke context receiver for network callback by @Redth in #20651
- [iOS] Figure a better EstimatedItemSize for HorizontalList by @rmarinho in #20022
- [Catalyst] Fix Selectors for Menus by @drasticactions in #20699
- [Core][Hosting] Resolve handler services through registered service types by @mdh1418 in #20298
- Traverse ListNode when finding DataType by @StephaneDelcroix in #20742
- [Windows] Implement gestures on Spans by @jsuarezruiz in #17731
- [iOS/Catalyst] Correctly call DidFinishNavigation in NavigationDelegate by @drasticactions in #20725
- [Trimming] Disable query property assignment via reflection on NativeAOT by @simonrozsival in #20731
- Fix usage of feature switches in Debug mode by @simonrozsival in #20748
- [Window] Fix transforms being offset by 0.5x0.5 by @Foda in #20454
- [XamlC] Fix typed binding static property by @simonrozsival in #20769
- Add the trailing .0 to all the windows things by @mattleibow in #20792
- Support the unpackaged format for font loading by @mattleibow in #20790
- [iOS] NullReferenceException for Span GridItemsLayout fix by @kubaflo in #20492
- Restructured CodeBehindGenerator pipeline by @mgoertz-msft in #20524
- Fallback if user doesn't specify ext on image by @PureWeen in #20796
- Fix XAML intellisense and hot reload in Visual Studio 2022 by @spadapet in #20851
- Fix page swap from background by @PureWeen in #19532
- [XamlC] Prioritize compiled markup extensions over primitive types by @simonrozsival in #20808
- [ios] fix memory leak in SearchBar by @jonathanpeppers in #16383
- iOS Shell TitleView Update Height by @tj-devel709 in #20795
- Ignore ScrollRectToVisible if KeyboardAutoManagerScroll is enabled in ItemsViewController by @artemvalieiev in #19875
- [Trimming] Fix event trigger trimming warnings by @simonrozsival in #20810
- [Windows] Handle ConnectionProfiles exception by @Foda in #20757
- Fix crash if users only sets selected color on android bottom tabs by @PureWeen in #20793
- Check if CV Item Handler has been created by @PureWeen in #20900
- Do not reference MSBuild tasks in the app by @mattleibow in #20899
- Fixed Shell.NavBarHasShadow on Android by @kubaflo in #20188
- Graphics TextAttribute wrongly uses FontName value for FontSize by @jfversluis in #20861
- [XamlC] Fix error XDataTypeSyntax message format by @simonrozsival in #20787
- [Windows] Registering new double-tap event can end up in the event being firing more times than expected by @MartyIX in #20905
- Updated Development guide by @jsuarezruiz in #20543
- [release/9.0.1xx-preview2] Update aotprofile by @rmarinho in #20901
- Remove Switch On/Off content by @dotMorten in #20487
- [Windows] Fix template check for item recycle by @Foda in #20875
- Restore iOS/macOS SecureStorage.DefaultAccessible default value by @jfversluis in #20914
- [C] Propagate Resource changes to Background by @StephaneDelcroix in #20637
- [Trimming] Use type...