Commit c17c624
authored
[main] Net10.0 (#32110)
## What's Changed
.NET MAUI main-to-net10.0 introduces significant improvements across all
platforms with focus on quality, performance, and developer experience.
This release includes 159 commits with various improvements, bug fixes,
and enhancements.
## .NET MAUI Product Fixes
## .NET 10 Features
- [net10.0] Merge main to net10 by @rmarinho in
#31210
- [net10.0] Move to net10 rc2 by @rmarinho in
#31511
- [net10.0] Update net10 by @rmarinho in
#31296
- [NET10] Make IPlatformMeasureInvalidationController public by @Copilot
in #31133
- [net10.0] Update net10.0 with main by @PureWeen in
#31699
- [net10.0] Merge main to net10.0 by @rmarinho in
#31792
- [net10.0] [housekeeping] Update maui net9 by @github-actions[bot] in
#31856
<details>
<summary>🔧 Fixes</summary>
- [[housekeeping] Update maui
net9](#31853)
</details>
- [net10] Move to rtm by @rmarinho in
#31883
- [net10.0] Bumps Syncfusion.Maui.Toolkit dependency to version 1.0.7 by
@github-actions[bot] in #31952
<details>
<summary>🔧 Fixes</summary>
- [Bumps Syncfusion.Maui.Toolkit dependency to version
1.0.7](#31932)
</details>
- [NET10.0] Change ContentPage SafeAreaEdges default to None for
consistent edge-to-edge behavior by @Copilot in
#31926
<details>
<summary>🔧 Fixes</summary>
- [[NET10.0] Change all defaults of SafeAreaEdges so that they will
return "None" as the default if the user hasn't set the
value](#31925)
</details>
## Android
- [Testing] Run UI tests with CoreCLR on Android by @rmarinho in
#30842
<details>
<summary>🔧 Fixes</summary>
- [[Testing] Run UI tests with CoreCLR on
Android](#30278)
</details>
- [android] 20250820 net10.0 ecosystem updates by @jonathanpeppers in
#31265
- [android] update AOT profile for .NET 10 RC 2 by @jonathanpeppers in
#31768
- Implement SafeAreaEdges property and per-edge safe area control for
Android by @NirmalKumarYuvaraj in
#31022
## Aspire
- Only enable Aspire functionality in non-optimized builds (i.e. Debug)
by @jfversluis in #31494
## BlazorWebView
- Use the WebView2CompositionControl in Blazor WPF by @mattleibow in
#31777
## Collectionview
- [NET 10/ WinUI] Open item template context by @pictos in
#30852
<details>
<summary>🔧 Fixes</summary>
- [[NET 10] Open more APIs](#30762)
</details>
- Update ui-tests.yml timeout to account for CollectionView by @PureWeen
in #31233
- [net10.0] [Testing] Fix for flaky
test(CollectionViewHeaderShouldNotScroll) in CI by @github-actions[bot]
in #31933
<details>
<summary>🔧 Fixes</summary>
- [[Testing] Fix for flaky test(CollectionViewHeaderShouldNotScroll) in
CI](#31914)
</details>
## Controls Dialogalert
- Fix `DisplayAlert` to properly pass the `cancel` parameter to
`DisplayAlertAsync` by @thisisthekap in
#31474
<details>
<summary>🔧 Fixes</summary>
- [Page.DisplayAlert(title, message, accept, cancel, flowDirection) is
causing
ArgumentNullException](#31473)
</details>
## Controls Hybridwebview
- HybridWebView Bi-Directional Exception Handling by @Copilot in
#31521
<details>
<summary>🔧 Fixes</summary>
- [HybridWebView needs a consistent and usable story for handling C#
methods that throw
exceptions](#27096)
</details>
## Controls Radiobutton
- [.NET 10] Fix RadioButton Test Failure by @Tamilarasan-Paranthaman in
#31772
## Core
- Make more .NET MAUI Views public by @jsuarezruiz in
#30872
<details>
<summary>🔧 Fixes</summary>
- [[NET 10] Open more APIs](#30762)
</details>
- [android] update AOT profile for .NET 10 RC 1 by @jonathanpeppers in
#31187
## Core Lifecycle
- Dispose IServiceScope when window is destroyed to prevent memory leaks
by @Copilot in #30196
<details>
<summary>🔧 Fixes</summary>
- [IServiceScope should get disposed when the associated window is
destroyed or closed](#8538)
</details>
- Expose Android Activity and Modal Dialog OnKey* overrides via
ConfigureLifecycleEvents with generalized context parameter by @Copilot
in #31206
<details>
<summary>🔧 Fixes</summary>
- [Expose Android Activity OnKey* overrides via
ConfigureLifecycleEvents](#31205)
</details>
## DateTimePicker
- Fix DatePicker displays today's date instead of blank state when Date
is null by @prakashKannanSf3972 in
#30657
<details>
<summary>🔧 Fixes</summary>
- [[iOS] Fix DatePicker to default to Today's date when Date is
null/MinimumDate](#30642)
- [[iOS/Catalyst] If the user specifies NULL for the DatePicker then the
picker should default to Todays date when it's
opened](#30641)
</details>
- Fixed DatePicker's DateSelected event not firing on Windows - NET 10
Preview 6 by @Dhivya-SF4094 in #30748
<details>
<summary>🔧 Fixes</summary>
- [DatePicker's DateSelected event not firing on Windows - .NET 10
Preview 6](#30736)
</details>
- Add converters to DatePicker and TimePicker for DateOnly and TimeOnly
by @Vignesh-SF3580 in #30790
<details>
<summary>🔧 Fixes</summary>
- [XAML DatePicker Control Does Not Update DateOnly
Items](#20438)
</details>
## Docs
- DependencyService API docs fixes by @jfversluis in
#31392
## Essentials
- [Essentials] Add microphone permission handling on Windows and tests
by @morning4coffe-dev in #31451
<details>
<summary>🔧 Fixes</summary>
- [`Permissions.Microphone` returns `Granted` on Windows (partial trust)
even when denied](#31413)
</details>
## Essentials Texttospeech
- [Essentials: Text to speech] Overwrite system default voice by @yeelut
in #31105
<details>
<summary>🔧 Fixes</summary>
- [Text-To-Speech unable to override system's default
voices](#26853)
</details>
## Flyout
- 30985:Fix FlyoutPage Navigating args to not reach down into the
NavigationPage by @SuthiYuvaraj in
#31232
<details>
<summary>🔧 Fixes</summary>
- [[Enhancement] Changes in navigation events
parameters](#28384)
- [[NET10.0] Fix FlyoutPage Navigating args to not reach down into the
NavigationPAge](#30985)
</details>
## Frame
- Use `ToLowerInvariant().Contains(...)` for .NET Framework by
@StephaneDelcroix in #31353
## Gestures
- Align `OnDoubleTap` behavior on Windows and Android by @MartyIX in
#20870
<details>
<summary>🔧 Fixes</summary>
- [TapGestureRecognizer NumberOfTapsRequired=2 Handled Differently on
Windows and Android](#16235)
</details>
- Implement `PointerGestureRecognizer` Buttons by @morning4coffe-dev in
#31214
<details>
<summary>🔧 Fixes</summary>
- [Differentiate Left/Right click in
PointerGestureRecognizer](#24666)
</details>
## Image
- [Windows] Fix `ImageHandler` Vertical&Horizontal Options with
AspectFit by @morning4coffe-dev in
#30936
<details>
<summary>🔧 Fixes</summary>
- [Image under WinUI does not respect VerticalOptions and
HorizontalOptions](#30403)
</details>
## Infrastructure
- Net10 merge main by @PureWeen in
#31160
- [net10.0] Update to RC1 by @rmarinho in
#31171
- [android] 20250618 net10.0 ecosystem updates by @jonathanpeppers in
#30059
- Mark Performance and IPerformanceProvider types as obsolete and remove
all usages by @Copilot in #30942
<details>
<summary>🔧 Fixes</summary>
- [[Copilot] Set Microsoft.Maui.Controls.Internals.Performance and
Microsoft.Maui.Controls.Internals.IPerformanceProvider to Obsolete with
ISError set to true](#30385)
</details>
- [ci] Update rc1 dependencies by @rmarinho in
#31211
- [XSG] enable/disable feature in msbuild by @StephaneDelcroix in
#31349
- Localized file check-in by OneLocBuild Task: Build definition ID
13330: Build ID 12341555 by @dotnet-bot in
#31479
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #31594
- [ci] Fix find simulator with new Xcode on the machine by @rmarinho in
#31586
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #31613
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #31635
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #31678
- [net10.0] Update dependencies from dotnet/macios by
@dotnet-maestro[bot] in #31679
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #31690
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #31698
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #31767
- [net10.0] Update dependencies from dotnet/dotnet by
@dotnet-maestro[bot] in #31600
- [ci] Update to latest rc2 by @rmarinho in
#31771
- [ci] Add internal release trigger by @rmarinho in
#31809
- Separate snapshot diffs artifacts in CI by @jfversluis in
#31724
- Localized file check-in by OneLocBuild Task: Build definition ID
13330: Build ID 12504892 by @dotnet-bot in
#31845
- [ci] Update maui to 9.0.111 by @rmarinho in
#31864
- [net10.0] Update dependencies from dotnet/dotnet by
@dotnet-maestro[bot] in #31983
- [net10.0] Update dependencies from dotnet/macios by
@dotnet-maestro[bot] in #32022
- [net10.0] Update dependencies from dotnet/android by
@dotnet-maestro[bot] in #32024
- [net10.0] Update dependencies from dotnet/dotnet by
@dotnet-maestro[bot] in #32074
- [net10.0] Update dependencies from dotnet/macios by
@dotnet-maestro[bot] in #32075
- [ci] Update Xcode and correct simulator by @rmarinho in
#32095
- [net10.0] Update dependencies from dotnet/dotnet by
@dotnet-maestro[bot] in #32085
## Layout
- Mark CompressedLayout API as obsolete and remove XML documentation by
@Copilot in #31052
- Remove edge to edge from top level container by @PureWeen in
#31193
<details>
<summary>🔧 Fixes</summary>
- [[Android] EdgeToEdge does not work for Modal
page](#24903)
- [Your app uses deprecated APIs or parameters for edge-to-edge (Android
15)](#26788)
- [The status bar is blank when ManualMAUITests sample project debugging
on the “Android16.0- API 36”
emulator](#29954)
</details>
- Change ComputeConstraintForView to return LayoutConstraint instead of
using side effects by @Copilot in
#31091
<details>
<summary>🔧 Fixes</summary>
- [Change ComputeConstraintForView to return constraint and set
ComputedConstraint via return value (.NET
10.0)](#31083)
</details>
- [Android] Create a Java layer for LayoutViewGroup by @albyrock87 in
#31601
<details>
<summary>🔧 Fixes</summary>
- [Reduce layout pass java to dotnet jni
calls](#31595)
</details>
## Localization
- fix resources localization by @StephaneDelcroix in
#31466
## Mediapicker
- Fix wrongful closing modal when using MediaPicker by @jfversluis in
#31500
<details>
<summary>🔧 Fixes</summary>
- [[iOS] Fix MediaPicker modal dismissal issue in
CapturePhotoAsync/CaptureVideoAsync](#31470)
- [[iOS] MAUI Essentials MediaPicker.CapturePhotoAsync /
CaptureVideoAsync causes modal page to dismiss
unexpectedly](#31075)
</details>
## Navigation
- [Net10] [iOS] Set NavigationBar.Translucent based on NavigationPage
BarBackgroundColor transparency by @Tamilarasan-Paranthaman in
#30981
- [net10.0] Invert NavigationPage UseMauiHandler flag by
@github-actions[bot] in #31873
<details>
<summary>🔧 Fixes</summary>
- [Invert NavigationPage UseMauiHandler
flag](#31859)
</details>
## Other
- [XC|XSG] fix target resolution by @StephaneDelcroix in
#31229
<details>
<summary>🔧 Fixes</summary>
- [XamlC error XC0000 when using VisualState on custom
control](#31186)
</details>
- NET 10 - Added command and command parameter for CheckBox control by
@NirmalKumarYuvaraj in #31036
<details>
<summary>🔧 Fixes</summary>
- [Command is missing on Checkbox
control](#7394)
- [added Command and CommandParameter on
CheckBox](#20717)
</details>
- [XSG] simple support for `required` by @StephaneDelcroix in
#30928
<details>
<summary>🔧 Fixes</summary>
- [[XSG] Get `required`
working](#30491)
</details>
- [XSG] double cast on Add by @StephaneDelcroix in
#31367
- Mark OffscreenPageLimitProperty as obsolete and remove unused code by
@Copilot in #31306
- [XSG] simplify OnPlatform by @StephaneDelcroix in
#31421
- [XSG] Fix ValueProvider creation by @StephaneDelcroix in
#31434
<details>
<summary>🔧 Fixes</summary>
- [XSG generate call to obsolete ctor
SimpleValueTargetProvider](#31381)
</details>
- [XSG] Refactor ProjectItem by @StephaneDelcroix in
#31427
- [XSG] report diagnostic if we can't Add by @StephaneDelcroix in
#31462
- Enhance maui-mobile developer sample with recent updates by
@Vignesh-SF3580 in #31489
- Add DisplayRotationStateTrigger for granular device rotation control
by @Copilot in #31297
- [Testing] Fixed Test case failure in Update main net10 by
@TamilarasanSF4853 in #31592
- [X] remove IElementNode interface by @StephaneDelcroix in
#31559
- [Testing] Fixed Test case failure in Update main net10 - 2 by
@TamilarasanSF4853 in #31632
- [X] avoid enumerating 3 times by @StephaneDelcroix in
#31622
<details>
<summary>🔧 Fixes</summary>
- [[NET10.0] Performance Regression related to XAML
Parsing](#31172)
</details>
- [SG] generated code behind for RD in global xmlns by @StephaneDelcroix
in #31623
<details>
<summary>🔧 Fixes</summary>
- [Build succeeds with bad XAML - source
gen](#31602)
</details>
- [XSG] make sure RD are properly inflated, and loaded by
@StephaneDelcroix in #31482
<details>
<summary>🔧 Fixes</summary>
- [.NET10-rc1 - XamlSourceGen - Partial method
XXX.InitializeComponent()' must have an implementation part because it
has accessibility
modifiers.](#31571)
</details>
- [XSG] support xClassModifier by @StephaneDelcroix in
#31754
<details>
<summary>🔧 Fixes</summary>
- [.NET10-rc1 The type or namespace name 'XamlProcessingAttribute' could
not be found](#31550)
</details>
- LEGO: Pull request from
lego/hb_aa4ddd3b-37ca-4d87-a058-1e95d9ca2d38_20251001194204838 to
net10.0 by @csigs in #31841
- [XSG] trim color by @StephaneDelcroix in
#32035
<details>
<summary>🔧 Fixes</summary>
- [[XSG] input needs to be
trimmed](#32034)
</details>
- Merge main into net10 by @PureWeen in
#32079
## ProgressBar
- [Testing] Fix for the ProgressSpinnerWorksWhenReEnabled flaky test in
CI by @TamilarasanSF4853 in #31951
## RefreshView
- Add IsRefreshEnabled Property and Platform-Consistent IsEnabled
Semantics to RefreshView by @Copilot in
#30692
<details>
<summary>🔧 Fixes</summary>
- [[Android] Swapping out the content of a RefreshView breaks on
Android](#28361)
- [Proposal: Add IsRefreshEnabled Property and Platform-Consistent
IsEnabled Semantics to
RefreshView](#30690)
</details>
## Shapes
- [XSG] Correct lineinfo for expanded markups by @StephaneDelcroix in
#31641
<details>
<summary>🔧 Fixes</summary>
- [[XSG] fix line and position error
reporting](#30855)
</details>
- [Windows] Fix `LineHeight` values <1 having no effect by setting
`LineStackingStrategy` to `BlockLineHeight` by @MartyIX in
#31289
<details>
<summary>🔧 Fixes</summary>
- [[Windows] Change the LineStackingStrategy to BlockLineHeight for
Labels on Windows](#24520)
- [[Windows] Fix LineHeight values < 1 having no effect by setting
LineStackingStrategy to
BlockLineHeight](#31219)
</details>
## Shell
- Check if tab bar hidden value actually changed for Shell by
@jfversluis in #31149
- [iOS] Auto Resize chrome icons on iOS to make it more consistent with
other platforms - Toolbar items by @kubaflo in
#30995
<details>
<summary>🔧 Fixes</summary>
- [[iOS] Auto Resize chrome icons on iOS to make it more consistent with
other platforms - Toolbar
items](#30994)
</details>
- Fix modal and Shell edge to edge scenarios by @PureWeen in
#31221
<details>
<summary>🔧 Fixes</summary>
- [[Android] EdgeToEdge does not work for Modal
page](#24903)
</details>
- Shell - Propagate BackButtonBehaviorProperty by @kubaflo in
#28615
<details>
<summary>🔧 Fixes</summary>
- [Setting BackButtonBehavior to not visible or not enabled does not
work](#28570)
</details>
## Templates
- Removed ListView styles from the default project template by
@sheiksyedm in #31155
<details>
<summary>🔧 Fixes</summary>
- [The warning of XLS1111 appears once open MAUI App file
Resources\Styles\Styles.xaml](#31146)
</details>
- Update .NET Bot for .NET 10 by @jfversluis in
#31161
- [net10.0] Fix DeveloperBalance ProjectList page fails to load
correctly by @SuthiYuvaraj in #31158
<details>
<summary>🔧 Fixes</summary>
- [[net10.0] DeveloperBalance ProjectList page fails to load
correctly](#31152)
</details>
- Enhance maui-mobile developer sample with recent updates by
@SuthiYuvaraj in #31151
<details>
<summary>🔧 Fixes</summary>
- [Sync back accessibility fixes from Developer Balance sample to
templates](#31069)
</details>
- Revert template changes by @PureWeen in
#31301
- Fix Aspire ServiceDefaults project template naming by @jfversluis in
#31616
<details>
<summary>🔧 Fixes</summary>
- [Aspire ServiceDefaults project name doesn't use provided
name](#30365)
</details>
- Update the Blazor project templates by @mattleibow in
#31721
<details>
<summary>🔧 Fixes</summary>
- [Keep Blazor Hybrid templates in sync with Blazor &
MAUI](#26439)
</details>
- [net10.0] Delete GlobalXmlns.cs from maui-mobile template by
@github-actions[bot] in #31744
<details>
<summary>🔧 Fixes</summary>
- [Delete GlobalXmlns.cs from maui-mobile
template](#31730)
</details>
- Update multi-project template to .NET 10 by @jfversluis in
#31774
- Clean up Extensions.cs by removing TODO comments by @jfversluis in
#31901
- Enable OpenTelemetry metrics and tracing for MAUI in Service Defaults
by @jfversluis in #31900
<details>
<summary>🔧 Fixes</summary>
- [Enable MAUI SDK diagnostics by default for
Aspire](#31846)
</details>
- Enhance maui-mobile developer sample with recent updates by
@Vignesh-SF3580 in #31646
- [net10.0] Clean up template options for the CLI by @mattleibow in
#31849
<details>
<summary>🔧 Fixes</summary>
- [Blazor Hybrid & Web Solution Template: Template options need updating
](#23168)
</details>
- Remove DisableDevCertSecurityCheck method in Aspire Service Defaults
template by @jfversluis in #31965
- Disable MAUI telemetry for Aspire ServiceDefaults by default by
@jfversluis in #32089
## Theming
- Fix loading ResourceDictionary from source by @simonrozsival in
#31435
<details>
<summary>🔧 Fixes</summary>
- [[NET10.0] Unable to deploy basic template on ios/android in release
mode](#31308)
</details>
## Toolbar
- [iOS] ToolbarItems can no longer be manipulated after an incomplete
"Back" gesture on iOS - fix by @kubaflo in
#31303
<details>
<summary>🔧 Fixes</summary>
- [[iOS] `ToolbarItems` can no longer be manipulated after an incomplete
"Back" gesture on iOS.](#31278)
</details>
## WebView
- [net10.0] Temporarily disable flaky WebView tests using FlakyTest
attribute by @github-actions[bot] in
#31882
<details>
<summary>🔧 Fixes</summary>
- [Temporarily disable flaky WebView tests using FlakyTest
attribute](#31868)
</details>
## Window
- Make IsActivated property public in Window.cs by @pictos in
#30987
<details>
<summary>🔧 Fixes</summary>
- [[NET 10] Open more APIs](#30762)
</details>
## Windows
- Revert "Expose DispatcherExtensions so it could be used outside of
Maui as well" by @jfversluis in
#31184
<details>
<summary>🔧 Fixes</summary>
- [[net10.0] MAUI no longer marshalls bindable updates to the UI
thread](#31139)
- [Expose DispatcherExtensions so it could be used outside of Maui as
well](#30488)
</details>
## Xaml
- Xaml Inflator parameters by @StephaneDelcroix in
#30980
<details>
<summary>🔧 Fixes</summary>
- [[XSG] Passing parameters to the
inflators](#30877)
</details>
- Always use dot separators in XAML SG converters by @jfversluis in
#31225
<details>
<summary>🔧 Fixes</summary>
- [[.NET10-preview7] XAML Source Generator - Grid Error +
Warnings](#31142)
</details>
- fix10 by @StephaneDelcroix in
#31459
- [XSG] Use absolute file paths when generating #line by @simonrozsival
in #31519
<details>
<summary>🔧 Fixes</summary>
- [[XG] XamlG generates invalid #line
paths](#31454)
</details>
- Refactor XAML SourceGen TypeConverters by @jfversluis in
#31467
- [templates] do not use 'required' in xaml controls by
@StephaneDelcroix in #31564
- [XSG] Fix enum converter by @simonrozsival in
#31702
- [X|C] only use a single GridLengthTypeConverter by @StephaneDelcroix
in #29376
<details>
<summary>🔧 Fixes</summary>
- [OnIdiom<GridLength> throws an not implemented Exception (in
GridLengthTypeConverter)](#29334)
</details>
- [XSG] Simplify ColorConverter by @simonrozsival in
#31660
## iOS
- Avoid useless measure passes on iOS by @albyrock87 in
#31485
<details>
<summary>🔧 Fixes</summary>
- [[Testing] UITest to measure layout passes on a common
scenario](#25671)
</details>
- [NET10] [iOS] Fix SafeArea does not correctly account for the view
area under the soft input by @Tamilarasan-Paranthaman in
#31352
<details>
<summary>🔧 Fixes</summary>
- [[iOS] SafeArea doesn't properly account for how much of a view is
under the soft input](#31191)
</details>
- [iOS] Update net10 iOS to rc2 by @rmarinho in
#31749
<details>
<summary>🧪 Testing (17)</summary>
- [Testing] Feature matrix UITest Cases for ScrollView Control by
@NafeelaNazhir in #30188
- [net10.0, Testing] Fixed test failures on merge main net10.0 by
@NafeelaNazhir in #31168
- [net10.0] Add UnconditionalSuppressMessage attributes to fix NativeAOT
by @rmarinho in #31231
- [MacCatalyst] DatePicker null date handling by @jsuarezruiz in
#31365
<details>
<summary>🔧 Fixes</summary>
- [[MacCatalyst] Setting NULL for the DatePicker then the picker should
default to Todays date when it's
opened](#31124)
</details>
- Added a README with details about how to compile the manual tests by
@jsuarezruiz in #31373
- [Testing] Re-enable iOS NativeAOT and Mono full trimming tests by
handling ObjCRuntime warnings by @jsuarezruiz in
#31397
<details>
<summary>🔧 Fixes</summary>
- [[testing] Reenable "NativeAOT" and "Mono full" tests for
iOS](#29059)
</details>
- [Testing] Fix for flaky test(PullToRefreshWorksWhenEnabled) in CI by
@NafeelaNazhir in #31625
- [Testing] Added new SafeAreaEdges categories in UITest and adjusted
screenshot logic for API 36 by @Ahamed-Ali in
#31655
<details>
<summary>🔧 Fixes</summary>
- [[Testing] Added new SafeAreaEdges categories in UITest and created
separate lane to run the category in API
36](#31355)
</details>
- [Testing] Feature matrix UITest Cases for ScrollView with
LayoutOptions by @NafeelaNazhir in
#31650
<details>
<summary>🔧 Fixes</summary>
- [[Testing] Add tests validating all the permutations of layoutoptions
with scrollview](#30698)
- [[Testing] Feature matrix UITest Cases for ScrollView with
LayoutOptions](#31122)
</details>
- Add 'SafeAreaEdges' to UI tests configuration by @jfversluis in
#31709
<details>
<summary>🔧 Fixes</summary>
- [[Testing] Added new SafeAreaEdges categories in UITest and adjusted
screenshot logic for API 36
](#31655)
</details>
- [Testing] Fixed Test case failure in Update main net10 by
@TamilarasanSF4853 in #31729
- Fixed the compilation issue to merge main changes to net10 by
@sheiksyedm in #31762
- [Testing] Fixed Test case failure in net10_main_merge by
@TamilarasanSF4853 in #31773
- [ci] Fix helix local by @rmarinho in
#31796
- [tests] Try run device tests with CoreClr by @rmarinho in
#30686
<details>
<summary>🔧 Fixes</summary>
- [[Testing] Run Controls.DeviceTests with CoreCLR on
Android](#30277)
</details>
- [ci] Fix net10 UiTests by @rmarinho in
#31837
- [testing] Update device testing by @rmarinho in
#31909
</details>
<details>
<summary>🏠 Housekeeping (7)</summary>
- remove dupe by @StephaneDelcroix in
#31420
- [net10.0] [ci] Fix branch classification by @github-actions[bot] in
#31812
<details>
<summary>🔧 Fixes</summary>
- [[ci] Fix branch
classification](#31811)
</details>
- [housekeeping] Automated PR to fix formatting errors on main by
@github-actions[bot] in #31802
- [ci] Fix branch classification by @rmarinho in
#31816
- LEGO: Pull request from
lego/hb_aa4ddd3b-37ca-4d87-a058-1e95d9ca2d38_20251002185521508 to
net10.0 by @csigs in #31851
- Localized file check-in by OneLocBuild Task: Build definition ID
13330: Build ID 12507670 by @dotnet-bot in
#31854
- [net10.0] [c] Run apiscan on release branches and main by
@github-actions[bot] in #31904
<details>
<summary>🔧 Fixes</summary>
- [[c] Run apiscan on release branches and
main](#31903)
</details>
</details>
**Full Changelog**:
main...net10.0File tree
3,939 files changed
+83279
-35032
lines changed- .config
- .github
- ISSUE_TEMPLATE
- docs
- design
- eng
- automation
- cspell
- cake
- common
- core-templates
- jobs
- job
- post-build
- steps
- cross
- armel
- native
- post-build
- sdl
- templates-official
- job
- steps
- templates
- job
- steps
- devices
- pipelines
- common
- scripts
- loc
- cs/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- de/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- es/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- fr/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- it/src
- Controls/src
- Build.Tasks
- Core/Compatibility/iOS/Resources
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- ja/src
- Controls/src
- Build.Tasks
- Core/Compatibility/iOS/Resources
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- ko/src
- Controls/src
- Core/Compatibility/iOS/Resources
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- pl/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- pt-BR/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- ru/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- tr/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- zh-Hans/src
- Controls/src
- Build.Tasks
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- zh-Hant/src
- Controls/src
- Core/Compatibility/iOS/Resources
- SourceGen
- Templates/src/templates
- maui-aspire-servicedefaults/.template.config/localize
- maui-blazor-solution/.template.config/localize
- maui-blazor/.template.config/localize
- maui-contentpage-csharp/.template.config/localize
- maui-contentpage-xaml/.template.config/localize
- maui-contentview-csharp/.template.config/localize
- maui-contentview-xaml/.template.config/localize
- maui-lib/.template.config/localize
- maui-mobile/.template.config/localize
- maui-multiproject/.template.config/localize
- maui-resourcedictionary-xaml/.template.config/localize
- maui-window-csharp/.template.config/localize
- maui-window-xaml/.template.config/localize
- src
- BlazorWebView
- samples
- BlazorWinFormsApp
- BlazorWpfApp
- src
- Maui
- Android
- PublicAPI
- net-android
- net-ios
- net-maccatalyst
- net-windows
- net
- Windows
- iOS
- Wpf
- tests/DeviceTests
- Components
- Elements
- Platforms/Android
- Compatibility
- Android.AppLinks/src
- Core
- src
- Android
- AppCompat
- CollectionView
- FastRenderers
- Renderers
- GTK
- Windows
- iOS
- Renderers
- tests/Compatibility.UnitTests
- Maps/src
- Android
- iOS
- Controls
- Foldable/src
- Android
- docs
- Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific
- Microsoft.Maui.Controls
- samples
- Controls.Sample.Embedding
- Platforms
- Android
- MacCatalyst
- Windows
- iOS
- Resources/Styles
- Controls.Sample.Profiling
- Controls.Sample.Sandbox
- Controls.Sample
- Behaviors
- Pages
- Blazor
- Compatibility/ListViewGalleries
- Controls
- CarouselViewGalleries
- CollectionViewGalleries
- CarouselViewGalleries
- ReorderingGalleries
- MapsGalleries
- SwipeViewGalleries
- WebViewGalleries
- Core
- Others
- PlatformSpecifics
- Android
- Windows
- iOS
- UserInterface
- Resources/Raw/HybridSamplePage
- ViewModels
- src
- BindingSourceGen
- Build.Tasks
- CompiledConverters
- CompiledMarkupExtensions
- CompiledValueProviders
- Properties
- nuget/buildTransitive/netstandard2.0
- xlf
- Core.Design
- Core
- Border
- Brush
- Button
- CarouselPage
- Cells
- CheckBox
- Compatibility
- Android
- Extensions
- Resources/layout
- Handlers
- Android
- FlyoutPage/iOS
- ListView
- Android
- Windows
- iOS
- Shell
- Android
- iOS
- TabbedPage/iOS
- TableView
- Android
- Windows
- iOS
- iOS
- iOS
- Extensions
- Resources
- ContentPage
- HideSoftInputOnTappedChanged
- ContentView
- DatePicker
- Diagnostics
- DragAndDrop
- Element
- Embedding
- FlyoutPage
- Handlers
- Items2/iOS
- Items
- Android
- iOS
- Hosting
- HybridWebView
- ImageButton
- InitializationAwareWebView
- InputView
- Internals
- Items
- Label
- Layout
- LegacyLayouts
- ListView
- Menu
- Page
- Picker
- PlatformConfiguration
- AndroidSpecific
- WindowsSpecific
- iOSSpecific
- Platform
- AlertManager
- Android
- Extensions
- GestureManager
- Tizen/Extensions
- Windows
- CollectionView
- Extensions
- Styles
- iOS
- Extensions
- Properties
- PublicAPI
- net-android
- net-ios
- net-maccatalyst
- net-tizen
- net-windows
- netstandard
- net
- RadioButton
- RefreshView
- ScrollView
- SearchBar
- Shapes
- Shell
- Stepper
- StyleSheets
- SwipeView
- Switch
- TabbedPage
- TableView
- TemplatedView
- TimePicker
- TitleBar
- Toolbar
- VisualElement
- WebRequestInterceptingWebView
- WebView
- Window
- Xaml/Diagnostics
- SourceGen
- Properties
- TypeConverters
- Visitors
- xlf
- Xaml
- MarkupExtensions
- Properties
- PublicAPI
- net-android
- net-ios
- net-maccatalyst
- net-tizen
- net-windows
- netstandard
- net
- tests
- BindingSourceGen.UnitTests
- Core.UnitTests
- Gestures
- Shapes
- DeviceTests
- Elements
- AlertDialog
- BoxView
- Button
- CheckBox
- CollectionView
- Compatibility
- DatePicker
- Editor
- Entry
- FlyoutPage
- HybridWebView
- Label
- Layout
- ListView
- Page
- RadioButton
- RefreshView
- ScrollView
- SearchBar
- Shell
- SwipeView
- TabbedPage
- TemplatedView
- Toolbar
- View
- VisualElementTree
- WebView
- Window
- Memory
- Resources/Raw/HybridTestRoot
- TestCases
- Xaml
- ManualTests
- SourceGen.UnitTests
- InitializeComponent
- TestCases.Android.Tests
- snapshots
- android-notch-36
- android
- TestCases.HostApp
- Concepts
- CoreViews
- Elements
- CollectionView
- ReorderingGalleries
- FeatureMatrix
- Border
- CarouselView
- CheckBox
- CollectionView
- ScrollingFeature
- ContentPage
- DatePicker
- EntryControl
- ScrollViewWithLayoutOptions
- ScrollView
- Stepper
- TimePicker
- ToolbarItem
- Issues
- Bugzilla
- XFIssue
- Platforms/Android
- Resources/Raw/hybridroot
- assets
- issues
- TestCases.Mac.Tests
- snapshots/mac
- TestCases.WinUI.Tests
- snapshots/windows
- TestCases.iOS.Tests
- snapshots/ios
- Xaml.UnitTests.ExternalAssembly
- Xaml.UnitTests.InternalsHiddenAssembly
- Xaml.UnitTests.InternalsVisibleAssembly
- Xaml.UnitTests
- AppResources
- InflatorSwitch
- Issues
- Bz31234/A
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
3,939 files changed
+83279
-35032
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
| 27 | + | |
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
77 | 89 | | |
78 | 90 | | |
79 | 91 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
186 | 186 | | |
187 | 187 | | |
188 | 188 | | |
189 | | - | |
| 189 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
276 | 276 | | |
277 | 277 | | |
278 | 278 | | |
279 | | - | |
| 279 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
| 47 | + | |
47 | 48 | | |
48 | 49 | | |
49 | 50 | | |
| |||
186 | 187 | | |
187 | 188 | | |
188 | 189 | | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | 190 | | |
193 | 191 | | |
194 | 192 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
5 | 15 | | |
6 | 16 | | |
| 17 | + | |
| 18 | + | |
7 | 19 | | |
8 | 20 | | |
9 | 21 | | |
| |||
33 | 45 | | |
34 | 46 | | |
35 | 47 | | |
36 | | - | |
| 48 | + | |
37 | 49 | | |
38 | 50 | | |
39 | 51 | | |
| |||
46 | 58 | | |
47 | 59 | | |
48 | 60 | | |
49 | | - | |
| 61 | + | |
50 | 62 | | |
51 | 63 | | |
52 | 64 | | |
53 | 65 | | |
54 | | - | |
| 66 | + | |
55 | 67 | | |
56 | 68 | | |
57 | 69 | | |
| |||
117 | 129 | | |
118 | 130 | | |
119 | 131 | | |
120 | | - | |
121 | | - | |
| 132 | + | |
| 133 | + | |
122 | 134 | | |
123 | 135 | | |
124 | 136 | | |
| |||
145 | 157 | | |
146 | 158 | | |
147 | 159 | | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
153 | 165 | | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
159 | 171 | | |
160 | 172 | | |
161 | 173 | | |
162 | 174 | | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
167 | 179 | | |
168 | 180 | | |
169 | 181 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
38 | | - | |
39 | 37 | | |
40 | 38 | | |
41 | 39 | | |
42 | 40 | | |
43 | | - | |
44 | | - | |
45 | 41 | | |
46 | 42 | | |
47 | 43 | | |
48 | 44 | | |
49 | | - | |
50 | | - | |
51 | 45 | | |
52 | 46 | | |
53 | 47 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
212 | 212 | | |
213 | 213 | | |
214 | 214 | | |
| 215 | + | |
| 216 | + | |
215 | 217 | | |
216 | 218 | | |
217 | 219 | | |
| |||
539 | 541 | | |
540 | 542 | | |
541 | 543 | | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
542 | 548 | | |
543 | 549 | | |
544 | 550 | | |
| |||
636 | 642 | | |
637 | 643 | | |
638 | 644 | | |
| 645 | + | |
639 | 646 | | |
640 | 647 | | |
641 | 648 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
190 | | - | |
191 | | - | |
192 | 190 | | |
193 | 191 | | |
194 | 192 | | |
| |||
515 | 513 | | |
516 | 514 | | |
517 | 515 | | |
518 | | - | |
519 | | - | |
520 | | - | |
521 | | - | |
522 | 516 | | |
523 | 517 | | |
524 | 518 | | |
| |||
726 | 720 | | |
727 | 721 | | |
728 | 722 | | |
729 | | - | |
730 | 723 | | |
731 | 724 | | |
732 | 725 | | |
| |||
0 commit comments