.NET MAUI 10.0.130 Release Notes
.NET MAUI 10.0.130 introduces significant improvements across all platforms with focus on quality, performance, and developer experience. This release includes 123 commits with various improvements, bug fixes, and enhancements.
Ai Agents
Blazor
-
[inflight/current] Fix BlazorWebView root component subscriptions on disconnect (#39247) by @kubaflo in #39252
-
Fix iOS BlazorWebView callbacks after disconnection by @sheiksyedm in #39430
-
[WPF] Fix BlazorWebView disposal hanging when cleanup awaits JS interop by @sheiksyedm in #39497
Border
- ContentView and Border: hidden content shouldn't take up space by @FullDevStudio in #39560
Button
-
[Android] Fix ImageButton not rendering when CornerRadius is larger than half its size by @KirkPatrickJunsay in #39344
-
[iOS/Mac] Fix Button with gradient Background ignores CornerRadius by @HarishwaranVijayakumar in #39484
-
[Android]Fix for Android ImageButton Border Visibility and Update Test Snapshots for Issue by @BagavathiPerumal in #39526
CollectionView
-
[Inflight/Current] [iOS]Fix for CollectionView layout issue after iOS device rotation by @BagavathiPerumal in #38771
-
[Windows] Fix doubled CollectionView item spacing by @jfversluis in #38960
-
[Android] Fix O(nΒ²) layout cost in CollectionView GridItemsLayout (SpacingItemDecoration + ObservableGroupedSource) by @unrateddi in #38969
π§ Fixes
- [Android] CollectionView with GridItemsLayout: SpacingItemDecoration walks all positions for every cell β ItemsSource assignment and scrolling take seconds to minutes, ANR on fling (regression in 10.0.100)
- [Android] CollectionView GridItemsLayout: span lookups over uncached positions are O(position) per cell, O(positionΒ²) when grouped β ScrollTo last group takes ~38 s for 10 000 items, scrolling up after a jump stutters
-
[inflight/current] [Mac] Fix VoiceOver announcement for actionable CollectionView items by @kubaflo in #39012
-
[Android] CollectionView GridItemsLayout: resolve span index and row from the items source instead of walking every position by @unrateddi in #39063
-
[Android] Keep CarouselView Position when CurrentItem isn't in the ItemsSource by @MykhailoDav in #39151
-
[Android] Prevent unnecessary CollectionView item recreation on Header/Footer updates by @SuthiYuvaraj in #38808
-
[Android] Keep EmptyViewAdapter view types from matching the items adapter's by @MykhailoDav in #39193
-
[iOS] Fix vertical CarouselView Position synchronization by @SubhikshaSf4851 in #39377
-
[Windows] Fix excessive blank space between CollectionView grid items by @Shalini-Ashokan in #39429
-
[iOS/MacCatalyst] Fixed CollectionView: Preserve visible position when item spacing changes by @KarthikRajaKalaimani in #37032
π§ Fixes
-
[iOS/Mac] Fix CollectionView2 height not updating when ItemsSource changes by @SyedAbdulAzeemSF4852 in #38441
-
[Windows] Fix EmptyViewTemplate not displayed when ItemsSource is set to Null by @devanathan-vaithiyanathan in #39513
-
[Windows] Avoid CollectionView GroupHeaderStyleSelector accumulation by @sheiksyedm in #39525
-
[iOS] Collapse CollectionView group headers when their content is hidden by @carloshenriquecarniatto in #39533
-
[iOS] Fix Label truncation after item text updates in CollectionView by @devanathan-vaithiyanathan in #39558
-
[Windows] Fix Compatibility CollectionView compilation on inflight/candidate by @sheiksyedm in #39662
-
[iOS, Catalyst] Fix IndicatorView not visible when applying RTL FlowDirection with IndicatorTemplate by @devanathan-vaithiyanathan in #39501
-
[inflight/Candidate]Fix CollectionViewItemSafeAreaEdgesShouldBePreservedWithShadow UI test failure by @devanathan-vaithiyanathan in #39698
-
[Inflight/Candidate][Revert] [iOS] Fix for CollectionView layout issue after iOS device rotation #38771 by @TamilarasanSF4853 in #39707
-
[iOS/Mac][Revert] CollectionView2 height-update fix (#38441) by @SyedAbdulAzeemSF4852 in #39855
-
[iOS/MacCatalyst] Fix RTL CollectionView item positioning after rotation by @sheiksyedm in #39891
Drawing
-
Fix TransformGroup memory leak with shared TransformCollection by @SyedAbdulAzeemSF4852 in #38738
-
Fix GeometryHelper flatteners generating NaN points when segment count truncates to 0 by @HarishwaranVijayakumar in #38814
-
Fix PathFigure memory leak with shared PathSegmentCollection by @devanathan-vaithiyanathan in #38744
-
[Android] Fix Shape clipping after display density changes by @HarishwaranVijayakumar in #39249
-
[iOS] Fix SafeAreaEdges on a CollectionView/CarouselView item template root is ignored when the root has a Shadow by @KarthikRajaKalaimani in #39255
-
Fix Rectangle Rendering as a Thin Line for Small Heights by @Dhivya-SF4094 in #37319
Editor
-
[Android] Fix Material 3 Editor expanding to MaximumHeightRequest by @Shalini-Ashokan in #38587
Entry
-
[Android] Fix numeric Entry decimal-point input in comma-decimal cultures by @sheiksyedm in #39286
Essentials
-
[iOS] Fix OrientationStateTrigger updates on iOS 27 by @sheiksyedm in #39709
-
[iOS] DeviceDisplay: Track scene geometry and display handoffs (.NET 10) by @jfversluis in #39879
Essentials Devicedisplay
General
Gestures
-
[Android] Don't throw when a PanUpdated handler removes the view as the pan starts by @MykhailoDav in #39153
Grid
- Fix Grid definition and nested-grid position invalidation by @mattleibow in #39409
Hybridwebview
-
[iOS]Fix for HybridWebView JavaScript Evaluation Exceptions and Incomplete Requests by @BagavathiPerumal in #39469
Image
-
[leak scan] Fix image-source service collection retention leak by @SubhikshaSf4851 in #38743
-
[Windows] Fix Image AspectFit when the bitmap is already decoded by @Empiree in #39343
-
[Graphics] PlatformImage: Read PNG dimensions from IHDR by @Nacl-HCl in #39378
-
[Candidate-TestFailure][Windows] Render registered toolbar font icons through the image service by @sheiksyedm in #39750
Layout
-
[Android] Fix popup centering when content and margins exceed layout bounds by @sheiksyedm in #39561
-
[inflight/current] [iOS] Use window scene display for layout decisions by @kubaflo in #39595
Listview
-
[iOS] Don't update a disconnected image handler when a cancelled load fails by @MykhailoDav in #39149
Localization
- [inflight/current] Fix culture-dependent FontSize design-time validation by @noiseonwires in #39694
Mediapicker
-
[Android] Fix MediaPicker launcher disposal after garbage collection by @sheiksyedm in #39710
Navigation
-
Throw a clear exception when a Shell route doesn't create a Page by @MykhailoDav in #39186
-
[Android] Don't throw an IllegalArgumentException for every page popped from a NavigationPage by @MykhailoDav in #39183
-
[Android] Don't throw when a modal NavigationPage is dismissed while it's navigating by @MykhailoDav in #39181
-
[Android] Fix stretched Shell back button icon when IconOverride is not square by @KirkPatrickJunsay in #39366
-
[iOS] Prevent NavigationRenderer pop continuation from accessing a disposed renderer by @sheiksyedm in #39458
Performance
- Fix [leak-scan] VisualStateGroupList.Clear β removed groups keep triggers attached by @KarthikRajaKalaimani in #38439
-
[leak scan] Fix handler collection retention memory leak by @Shalini-Ashokan in #38768
-
[leak-scan] Fix VisualState trigger lifecycle when states are added or removed by @Vignesh-SF3580 in #38550
-
[Leak scan] Fix MauiHotReloadHelper.currentViews β disabled unregister leaves views rooted by @SubhikshaSf4851 in #38657
Picker
-
Select a Picker SelectedItem that was set before its ItemsSource by @MykhailoDav in #39175
Refreshview
-
[iOS, Mac] Fix RefreshView pull gesture when IsRefreshEnabled is false by @SyedAbdulAzeemSF4852 in #39486
SafeArea
-
[Android] Fix incorrect top padding when translating views offscreen by @devanathan-vaithiyanathan in #37772
ScrollView
-
[Android] ScrollView: Apply runtime padding updates immediately by @Dhivya-SF4094 in #38985
-
[Android] Fix ScrollToAsync UI-thread livelock caused by the MapRequestScrollTo retry loop by @philipag in #39213
Shapes
-
Minimize CI workflow failures and pipeline start comments by @kubaflo in #39564
-
docs: fix Helix queues and device-test pipeline path in DevelopmentTips by @ZainnQureshii in #38850
-
Fix PathGeometry leak with shared PathFigureCollection by @SyedAbdulAzeemSF4852 in #38946
Shell
-
Fix Leak Fixer validation shell permissions by @kubaflo in #39475
-
Fix CI-fixer empty-queue PowerShell module discovery by @kubaflo in #39522
-
[Material3] Fix tab selection indicator color on theme change by @SyedAbdulAzeemSF4852 in #38445
-
Fix ShellItem.MenuItem memory leak caused by implicit wrapper by @devanathan-vaithiyanathan in #38804
-
[iOS] Ignore a pending Shell back navigation after the section renderer is disposed by @MykhailoDav in #39152
π§ Fixes
-
[Windows] Shell: Apply TabBarDisabledColor to disabled tabs by @Dhivya-SF4094 in #35885
-
[iOS] Fix iOS 26 blank page on rapid Shell tab re-selection by @SubhikshaSf4851 in #39360
-
[Android] Fix SearchHandler toolbar icon tint when Shell.ForegroundColor is set on a TabBar, Tab, or ShellContent by @edgiardina in #39346
-
[Windows] Fix crash when clicking a tab with sub tabs in the Shell TabBar overflow menu by @Empiree in #39412
-
[Android] Fix Shell Renderer Content Layout in RTL Locked Mode by @Vignesh-SF3580 in #39462
-
Fix Shell Flyout item ordering when CurrentItem is set in XAML by @SubhikshaSf4851 in #39541
Single Project
-
[iOS] Fix splash screen image not appearing by @SubhikshaSf4851 in #39426
SwipeView
-
Fix SwipeItemView Command Memory Leak by @devanathan-vaithiyanathan in #38316
-
Fix SwipeMenuItems were rendered to the full width of the SwipeView instead of their measured width on Android, iOS, and macOS by @KarthikRajaKalaimani in #38271
-
Wait for SwipeView command result before UI assertion by @kubaflo in #39092
-
[Testing] Refactoring Feature Matrix UITest Cases for SwipeView Control by @LogishaSelvarajSF4525 in #38193
-
[Android] Fix SwipeItem tap with fixed-width SwipeView content by @Shalini-Ashokan in #39314
-
[Android] Fix xUnit2031 warning in Android SwipeView device test by @HarishwaranVijayakumar in #39375
TabbedPage
-
[Android] Fix TabbedPage: Selected tab icon loses SelectedTabColor after rebuilding Children by @SubhikshaSf4851 in #38801
-
[iOS 26] Fix TabbedPage tab bar layout by @SyedAbdulAzeemSF4852 in #38659
Toolbar
-
[Windows] Fix font toolbar icons when text is present by @jfversluis in #39685
π§ Fixes
WebView
-
[Windows] Fixed : WebView CanGoBack Returns true when it Shouldn't by @SubhikshaSf4851 in #37648
-
[Windows] Fix WebView rendering alongside HybridWebView by @sheiksyedm in #39512
Xaml
-
[CI] Reduce build and Windows XAML warnings by @rmarinho in #38735
-
[Windows] Restore native binding metadata baseline to fix maui-pr by @kubaflo in #39622
-
Improve error message xaml sg by @pictos in #38712
π§ Fixes
-
[XSG] Make global xmlns generation deterministic by @noiseonwires in #38842
-
Fix typed bindings invoking generated getters with missing ancestor sources by @jfversluis in #39470
π§ Infrastructure (8)
-
[ci] Remove unused SDK insertion templates by @kubaflo in #39519
-
[ci] Retry pre-test setup up to five total attempts by @kubaflo in #39549
-
[CI-Improvement]Retry only failed individual UI tests across all platforms by @Ahamed-Ali in #39509
-
Bump the aspnetcore group with 3 updates by @dependabot[bot] in #39683
-
Fix memory leak when replacing IndicatorView.IndicatorTemplate by @devanathan-vaithiyanathan in #39353
-
Create CI fix PRs directly without scan issues by @kubaflo in #39711
-
Bump the windowsappsdk group with 1 update by @dependabot[bot] in #39745
π¦ Other (16)
-
Add 10.0.120 to bug report version dropdowns by @kubaflo in #39494
-
Fix duplicate-detector MCP gateway startup by @kubaflo in #39589
-
Add /review expert-review GitHub workflow by @kubaflo in #39325
-
[Testing] Launch UI fixtures directly instead of navigating through the gallery by @kubaflo in #39621
-
[Revert] [Testing] Launch UI fixtures directly instead of navigating through the gallery by @NafeelaNazhir in #39723
-
[iOS] Replace managed KVO observers with a Swift-owned observation to fix a crash in -[UIView dealloc] on iOS 17 by @albyrock87 in #38662
-
Address contextual PoliCheck findings by @dalexsoto in #39532
π§ Fixes
-
[inflight/current] Add iPhone Duo support to Controls.Foldable by @kubaflo in #39596
-
Avoid redundant boxing in coerceValue lambdas for value-type by @pictos in #39576
-
[Android] SafeArea: let empty insets reach tracked views so SoftInput padding resets by @kevin68 in #39672
-
[Revert][inflight/Candidate][Testing] Launch UI fixtures directly instead of navigating through the gallery by @NafeelaNazhir in #39730
-
[Testing] Fixed Test case failure in PR 39597- Candidate - 1 by @NafeelaNazhir in #39664
-
Use GPT-6.1 Sol for test failure reviews by @PureWeen in #39738
-
October 23rd, Candidate β .NET 10 SR13 (10.0.130) by @kubaflo in #39597
-
Fix Windows debugging failure with .NET 10 SR13 by @devanathan-vaithiyanathan in #39830
Full Changelog: 10.0.120...release/10.0.1xx-sr13