v10.0.110
.NET MAUI 10.0.110 Release Notes
.NET MAUI 10.0.110 introduces significant improvements across all platforms with focus on quality, performance, and developer experience. This release includes 181 commits with various improvements, bug fixes, and enhancements.
Ai Agents
- Fix Copilot CLI path for agentic workflows by @kubaflo in https://github.com/dotnet/maui/pull/37447 <details> <summary>π§ Fixes</summary>
- [[aw] CI Failure Fixer (main) failed](https://github.com/dotnet/maui/issues/37430)
- [[aw] CI Failure Fixer (net11.0) failed](https://github.com/dotnet/maui/issues/37431)
- [[aw] Memory Leak Fixer failed](https://github.com/dotnet/maui/issues/37432)
- [[aw] Daily Memory Leak Hunter failed](https://github.com/dotnet/maui/issues/37435)
- [[aw] Daily Repo Status failed](https://github.com/dotnet/maui/issues/37442) </details>
- [release-readiness] Add RC release support by @PureWeen in https://github.com/dotnet/maui/pull/37856
- Update Vally to 0.14.0 by @PureWeen in https://github.com/dotnet/maui/pull/37907
- Fix CI scanner threat-detection contract by @PureWeen in https://github.com/dotnet/maui/pull/38196
Blazor
- [tizen] align BlazorWebView TizenMauiAssetFileProvider with other platforms by @jonathanpeppers in https://github.com/dotnet/maui/pull/37972
- [Android] Fix: WebView clamping small CSS font sizes by @SubhikshaSf4851 in https://github.com/dotnet/maui/pull/36559 <details> <summary>π§ Fixes</summary>
BlazorWebView
- [Android] BlazorWebView: Simplify Blazor startup scripts by @mattleibow in https://github.com/dotnet/maui/pull/35053
- [Candidate] Fix Build failure in MauiBlazorWebView DeviceTests by @Dhivya-SF4094 in https://github.com/dotnet/maui/pull/37669
Border
- [Windows] Fix: StrokeLineCap values have no effect on Windows platform by @SubhikshaSf4851 in https://github.com/dotnet/maui/pull/36442 <details> <summary>π§ Fixes</summary>
Button
- [iOS] Fix Button Content Overlap in RTL Layout by @devanathan-vaithiyanathan in https://github.com/dotnet/maui/pull/38339 <details> <summary>π§ Fixes</summary>
- [iOS] Button: Fix text updates with CharacterSpacing by @jfversluis in https://github.com/dotnet/maui/pull/36326 <details> <summary>π§ Fixes</summary>
- [leak-fix] Fix BackButtonBehavior.Command memory leak (Fixes #36345) by @github-actions[bot] in https://github.com/dotnet/maui/pull/36370 <details> <summary>π§ Fixes</summary>
- [[leak-scan] Shell BackButtonBehavior.Command leaks via strong ICommand.CanExecuteChanged (no weak proxy, no detach teardown)](https://github.com/dotnet/maui/issues/36345) </details>
- [iOS, MacCatalyst] Fix Image and ImageButton BackgroundColor does not reset when set to null by @devanathan-vaithiyanathan in https://github.com/dotnet/maui/pull/36427 <details> <summary>π§ Fixes</summary>
- [[iOS, MacCatalyst] Image and ImageButton BackgroundColor does not reset when set to null](https://github.com/dotnet/maui/issues/36302) </details>
- [iOS] Fix Button TextColor not updating when CharacterSpacing is set by @Shalini-Ashokan in https://github.com/dotnet/maui/pull/36699 <details> <summary>π§ Fixes</summary>
- [[iOS] Button TextColor does not update when CharacterSpacing is set](https://github.com/dotnet/maui/issues/36697) </details>
- [iOS] Add spacing below Done accessory button by @Redth in https://github.com/dotnet/maui/pull/36756
CollectionView
- [iOS] CollectionView: Fix pull-to-refresh when empty by @kubaflo in https://github.com/dotnet/maui/pull/38296 <details> <summary>π§ Fixes</summary>
- [[iOS] RefreshView pull-to-refresh does nothing when the CollectionView is empty (regression in 10.0.90, from #32674)](https://github.com/dotnet/maui/issues/37361) </details>
- [iOS/MacCatalyst] Fix CollectionView (CV2) expanding to fill available space when no items are present by @SyedAbdulAzeemSF4852 in https://github.com/dotnet/maui/pull/36127 <details> <summary>π§ Fixes</summary>
- [[iOS] Empty CollectionView Incorrect Height](https://github.com/dotnet/maui/issues/35889) </details>
- [leak-fix] Fix IndicatorView.ItemsSource memory leak (Fixes #35775) by @kubaflo in https://github.com/dotnet/maui/pull/36252 <details> <summary>π§ Fixes</summary>
- IndicatorView leaks when CarouselView.IndicatorView is bound to a shared ObservableCollection </details>
- [Android, iOS/Mac] Fix IsSwipeEnabled Not Working on CarouselView by @Dhivya-SF4094 in https://github.com/dotnet/maui/pull/36428 <details> <summary>π§ Fixes</summary>
- [[iOS] IsSwipeEnabled Not Working on CarouselView (CV2)](https://github.com/dotnet/maui/issues/36267) </details>
- [iOS/Mac] Fix CarouselView Position and IndicatorView Not Updating When Moving to Next Item in CV2 by @Dhivya-SF4094 in https://github.com/dotnet/maui/pull/36287 <details> <summary>π§ Fixes</summary>
- [[iOS] - CarouselView Position and IndicatorView Not Updating When Moving to Next Item in CV2](https://github.com/dotnet/maui/issues/29312) </details>
- [Mac] Fix Prevent CollectionView scroll position reset on Mac Catalyst after Picker interaction by @Vignesh-SF3580 in https://github.com/dotnet/maui/pull/36431 <details> <summary>π§ Fixes</summary>
- [[Unstable] I9_Scrolling - Changing/Hovering the 'ScrollToPosition' would cause the item to scroll without clicking the button](https://github.com/dotnet/maui/issues/34271) </details>
- [Android] Fix for CurrentItem is updated incorrectly when the CarouselView is bound to an ObservableCollection with Loop = false by @BagavathiPerumal in https://github.com/dotnet/maui/pull/36243 <details> <summary>π§ Fixes</summary>
- [iOS] Fix: Carouselview restores stale Position over CurrentItem after off-screen ItemsSource Change by @SubhikshaSf4851 in https://github.com/dotnet/maui/pull/36681 <details> <summary>π§ Fixes</summary>
- [[inflight regression] iOS CarouselView restores stale Position over CurrentItem after off-screen ItemsSource replacement](https://github.com/dotnet/maui/issues/36602) </details>
- Fix inconsistent Grouped CollectionView (GridItemsLayout) rendering on Windows and iOS/macOS by @Shalini-Ashokan in https://github.com/dotnet/maui/pull/36561 <details> <summary>π§ Fixes</summary>
- [[windows, iOS & macOS]Grouped CollectionView with GridItemsLayout renders inconsistent layout across platforms](https://github.com/dotnet/maui/issues/36545) </details>
- [iOS/MacCatalyst] Controls.Core: Enable MemoryAnalyzers by @kubaflo in https://github.com/dotnet/maui/pull/36312
- Fix grouped CollectionView section removal on iOS by @baaaaif in https://github.com/dotnet/maui/pull/36758 <details> <summary>π§ Fixes</summary>
- [[iOS] CollectionView (grouped): ArgumentOutOfRangeException in ObservableGroupedSource.GetGroupCount when removing a section](https://github.com/dotnet/maui/issues/34691) </details>
- Fix and Re-enable ItemsSource and ScrollView Memory Leak Device Tests by @BagavathiPerumal in https://github.com/dotnet/maui/pull/36695 <details> <summary>π§ Fixes</summary>
- [[Testing] Re-enable ItemsSource and ScrollView Memory Leak Device Tests for June 08 Candidate Branch](https://github.com/dotnet/maui/issues/36612) </details>
- [iOS & Mac] Fix and Re-enable "Cells Do Not Leak" and "Handler Does Not Leak" Device Tests by @BagavathiPerumal in https://github.com/dotnet/maui/pull/36698 <details> <summary>π§ Fixes</summary>
- [[Testing] Re-enable Cells and Handler Memory Leak Device Tests for June 08 Candidate Branch](https://github.com/dotnet/maui/issues/35985) </details>
- Revert - [iOS & Mac] Fix and Re-enable "Cells Do Not Leak" and "Handler Does Not Leak" Device Tests by @BagavathiPerumal in https://github.com/dotnet/maui/pull/37672 <details> <summary>π§ Fixes</summary>
- [[inflight regression] NavigateForwardWhenLooped, NavigateBackWhenLooped UI test failing in candidate PR 37393](https://github.com/dotnet/maui/issues/37571) </details>
- [release/10.0.1xx-sr11] [Android] Fix ArgumentOutOfRangeException when removing items from grouped CollectionView by @github-actions[bot] in https://github.com/dotnet/maui/pull/38482
- [release/10.0.1xx-sr11] [iOS/MacCatalyst] Fix Editor and CarouselView remaining non-interactive after IsEnabled toggle by @github-actions[bot] in https://github.com/dotnet/maui/pull/38480
- [release/10.0.1xx-sr11] Use CollectionView2 for test GroupedCollectionViewRemovalsUseCurrentAdapterPositions by @Vignesh-SF3580 in https://github.com/dotnet/maui/pull/38588
Controls
- Remove XF previewer fallback from TryGetResource by @albyrock87 in https://github.com/dotnet/maui/pull/37065 <details> <summary>π§ Fixes</summary>
Core Lifecycle
- [tests] Re-enable Android memory-leak UI tests (#27411) by @kubaflo in https://github.com/dotnet/maui/pull/36480 <details> <summary>π§ Fixes</summary>
- [[net10.0] Enable back Memory leak tests on Android](https://github.com/dotnet/maui/issues/27411) </details>
- Fixed When focus is on entry and closing the app the "object disposed exception is thrown in windows platform" by @KarthikRajaKalaimani in https://github.com/dotnet/maui/pull/34354 <details> <summary>π§ Fixes</summary>
DateTimePicker
- [iOS/MacCatalyst] DatePicker and TimePicker Background is not cleared when set to null at runtime by @HarishwaranVijayakumar in https://github.com/dotnet/maui/pull/36934 <details> <summary>π§ Fixes</summary>
- [[iOS/MacCatalyst] DatePicker and TimePicker Background is not cleared when set to null at runtime](https://github.com/dotnet/maui/issues/36933) </details>
Drawing
- Fix GradientBrush.GradientStops.Clear() leaks brushes when stops are shared by @devanathan-vaithiyanathan in https://github.com/dotnet/maui/pull/36746 <details> <summary>π§ Fixes</summary>
- [inflight] Fix netstandard build break: ReferenceEqualityComparer in GradientBrush by @kubaflo in https://github.com/dotnet/maui/pull/36808
Entry
- [iOS] Entry: Fix Done accessory hit testing by @Redth in https://github.com/dotnet/maui/pull/36413 <details> <summary>π§ Fixes</summary>
- [[iOS] Done keyboard accessory (MauiDoneAccessoryView) is full-width and blocks taps on the Entry above the keyboard](https://github.com/dotnet/maui/issues/36412) </details>
- [Windows] Fix Entry.Completed firing during IME candidate confirmation by @HarishwaranVijayakumar in https://github.com/dotnet/maui/pull/36577 <details> <summary>π§ Fixes</summary>
- [iOS/MacCatalyst] Fix Entry clear button appearing dimmed compared to TextColor by @SyedAbdulAzeemSF4852 in https://github.com/dotnet/maui/pull/36472 <details> <summary>π§ Fixes</summary>
- [[MacCatalyst] [Entry] ClearButtonVisibility color appears dimmed compared to TextColor](https://github.com/dotnet/maui/issues/35517) </details>
- [iOS] Add legacy Done accessory compatibility switch by @Redth in https://github.com/dotnet/maui/pull/36776
- [iOS And Windows] Fix Entry IsPassword ignored when Keyboard is set to Password by @SyedAbdulAzeemSF4852 in https://github.com/dotnet/maui/pull/36677 <details> <summary>π§ Fixes</summary>
- [[Android] Keyboard Password seems to force IsPassword to True on Entry](https://github.com/dotnet/maui/issues/35650) </details>
- [iOS/Mac] Fix UI becoming unresponsive when adding many Entry/Editor children to AbsoluteLayout by @praveenkumarkarunanithi in https://github.com/dotnet/maui/pull/36671 <details> <summary>π§ Fixes</summary>
- [Android] Entry: Expose SemanticProperties.Description as ContentDescription by @devanathan-vaithiyanathan in https://github.com/dotnet/maui/pull/37276 <details> <summary>π§ Fixes</summary>
- [release/10.0.1xx-sr11] [Android] Fix Keyboard="Numeric" Entry no longer accepts OS-locale decimal separator by @github-actions[bot] in https://github.com/dotnet/maui/pull/38483
Essentials
- [Android] Fix Screenshot.CaptureAsync deadlock for synchronous UI-thread callers by @praveenkumarkarunanithi in https://github.com/dotnet/maui/pull/37680 <details> <summary>π§ Fixes</summary>
- [[Android] Screenshot.CaptureAsync deadlocks when awaited synchronously from the UI thread (regression in 10.0.90)](https://github.com/dotnet/maui/issues/37638) </details>
- Fix for memory leak in Accelerometer.ReadingChanged/ShakeDetected by using weak event source by @BagavathiPerumal in https://github.com/dotnet/maui/pull/36503 <details> <summary>π§ Fixes</summary>
- [Android] Fix PickPhotosAsync remains pending when its activity is recreated while Photo Picker is open by @HarishwaranVijayakumar in https://github.com/dotnet/maui/pull/36767 <details> <summary>π§ Fixes</summary>
- [[inflight regression] Android PickPhotosAsync remains pending when its activity is recreated while Photo Picker is open](https://github.com/dotnet/maui/issues/36523) </details>
- Fix stale Android permission requests after off-main-thread failures by @jpd21122012 in https://github.com/dotnet/maui/pull/37056 <details> <summary>π§ Fixes</summary>
- Revert #36503: Weak event handling for Accelerometer events by @HarishwaranVijayakumar in https://github.com/dotnet/maui/pull/38096 <details> <summary>π§ Fixes</summary>
- [[inflight regression] Accelerometer exact composite unsubscription can retain the removed subscriber](https://github.com/dotnet/maui/issues/36574) </details>
General
- [HouseKeeping] Removed deprecated ViewCompat methods by @NirmalKumarYuvaraj in https://github.com/dotnet/maui/pull/37136
- [Windows] Map: Fix crash when leaving a page by @jfversluis in https://github.com/dotnet/maui/pull/37154 <details> <summary>π§ Fixes</summary>
- [[Windows] Declaring a Map in XAML Causes Fault on Page Exit](https://github.com/dotnet/maui/issues/37096) </details>
- [Android] Fix TalkBack forward-swipe navigation in Task and Project Details by @Vignesh-SF3580 in https://github.com/dotnet/maui/pull/38416 <details> <summary>π§ Fixes</summary>
- August 10th, Candidate by @kubaflo in https://github.com/dotnet/maui/pull/37393
Gestures
- [leak-fix] Fix SwipeItemView.Command memory leak (Fixes #36343) by @github-actions[bot] in https://github.com/dotnet/maui/pull/36357 <details> <summary>π§ Fixes</summary>
- [[leak-scan] SwipeItemView.Command leaks the control via strong ICommand.CanExecuteChanged (no weak proxy, no unload teardown)](https://github.com/dotnet/maui/issues/36343) </details>
Hybridwebview
- [inflight/candidate] Backport BlazorWebView and HybridWebView fixes by @kubaflo in https://github.com/dotnet/maui/pull/38126
Image
- [Windows] Fix COMException when changing Image BackgroundColor via binding after navigation by @Shalini-Ashokan in https://github.com/dotnet/maui/pull/36747 <details> <summary>π§ Fixes</summary>
- [[Windows] Setting BackgroundColor on Image causes InteropServices.COMException](https://github.com/dotnet/maui/issues/36694) </details>
Label
- Fix FlexLayout measuring items wider than their arranged size by @Kas-code in https://github.com/dotnet/maui/pull/36416 <details> <summary>π§ Fixes</summary>
- [Testing] Refactoring Feature Matrix UITest Cases for Label Control by @NafeelaNazhir in https://github.com/dotnet/maui/pull/36275
- [iOS] Fix Span TapGestureRecognizer hitbox misalignment in FormattedString when font contains a STAT table by @devanathan-vaithiyanathan in https://github.com/dotnet/maui/pull/36564 <details> <summary>π§ Fixes</summary>
- [[iOS] Span TapGestureRecognizer hitbox is mispositioned inside FormattedString when the font contains a STAT table (line-height/leading mismatch)](https://github.com/dotnet/maui/issues/36505) </details>
- Fix FormattedString memory leak caused by shared Span by @Dhivya-SF4094 in https://github.com/dotnet/maui/pull/36294 <details> <summary>π§ Fixes</summary>
- [Windows]Fix: Label.FormattedText does not clear previous TextHighlighters by @SubhikshaSf4851 in https://github.com/dotnet/maui/pull/36608 <details> <summary>π§ Fixes</summary>
- [[Windows, 10.0.71] Windows Label.FormattedText does not clear previous TextHighlighters when updating spans, leading to overlapping highlights & memory leaks](https://github.com/dotnet/maui/issues/36519) </details>
- [Windows]Fix: Label Formatted Text crashed with out of memory Exception by @SubhikshaSf4851 in https://github.com/dotnet/maui/pull/36828 <details> <summary>π§ Fixes</summary>
- [iOS/Mac] Fix RightToLeft does not apply for FormattedText by @Dhivya-SF4094 in https://github.com/dotnet/maui/pull/36277 <details> <summary>π§ Fixes</summary>
- RightToLeft does not apply for FormattedText </details>
Layout
- [main] [ci-fix] De-fl