Skip to content

[release/10.0.1xx-sr10] Integrate .NET MAUI 10.0.101 VS insertion payload - #37745

Closed
kubaflo wants to merge 44 commits into
release/10.0.1xx-sr10from
vs/10.0.101
Closed

[release/10.0.1xx-sr10] Integrate .NET MAUI 10.0.101 VS insertion payload#37745
kubaflo wants to merge 44 commits into
release/10.0.1xx-sr10from
vs/10.0.101

Conversation

@kubaflo

@kubaflo kubaflo commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Integrates the staged .NET MAUI 10.0.101 VS insertion payload from vs/10.0.101 into release/10.0.1xx-sr10.

The staging branch contains seven servicing-regression backports plus the SkiaSharp 4.150.1 update. The component PRs were merged into the staging branch in payload order, with Skia last.

Included component PRs

Component CI disposition

Release gates

  • Confirm a matching SkiaSharp 4.150.1 native-assets/PDB build for _SkiaSharpNativeAssetsVersion, or record an explicit release-owner waiver.
  • Require aggregate-PR CI and explicit disposition of any failures before merge.
  • Require independent human maintainer approval on the current head.
  • The final PatchVersion bump, tag, and publication are not included in this payload PR.

Relates to #37723.

KarthikRajaKalaimani and others added 30 commits August 21, 2026 23:32
Manual backport of #35944 for .NET MAUI 10.0.101.

Source head: d5a1ae0

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Manual backport of #37710 for .NET MAUI 10.0.101.

Source head: e0c13d7

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Manual backport of #36820 for .NET MAUI 10.0.101.

Source head: afab3f6

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Manual backport of #36769 for .NET MAUI 10.0.101.

Source head: 348f69b

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Manual backport of #36430 for .NET MAUI 10.0.101.

Source head: 6aa094e

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Manual backport of #37033 for .NET MAUI 10.0.101.

Source head: 7b2bdbb

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Manual backport of #37709 for .NET MAUI 10.0.101.

Source head: 270c687

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Manual backport of #36255 from candidate commit 08a2078 for .NET MAUI 10.0.101.

Also includes only the SkiaSharpAppIconTools.cs AddCircle compatibility hunk from #36787 (81c9eca).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1e7f77e3-4862-4b92-a662-d12b5918bb59
Pass the actual light-theme state to the status bar appearance helper so the fallback path remains meaningful.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Name and describe the Android regression test after the native self-sizing behavior it directly verifies.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Describe the height comparison as scenario-specific evidence because AtMost can otherwise legitimately consume all available space.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Guard the nullable UIButton background before reading its RGBA components so the HostApp reports a deterministic test failure instead of crashing.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Remove unused launcher helpers, provide actionable ComponentActivity guidance, and make the Android regression test fail deterministically when required state is missing.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Key pending Android photo-picker tasks by the activity ViewModelStore so recreated activities can deliver results, and run the child-activity regression in the existing Essentials lane.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Use platform-view lifecycle state rather than window attachment to preserve native styling only on the initial map, while clearing later detached updates. Extend the regression coverage for the detached-view case.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>\nCopilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Fall back to Panel.Children when a reused platform view is parented by a non-MAUI WinUI panel, covering wrapped views in both ContentView and Border handlers.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>\nCopilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Measure a nested marker through no-, single-, and shared-edge states so the regression catches cross-edge suppression and double padding. Ignore sub-pixel ancestor insets when resolving blocked edges.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>\nCopilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Exercise the original CollectionView scenarios with 1, 5, and 20 items and verify the rendered native icon and text remain grouped.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Use the opposite fallback so the test can only pass when the Material 3 surface color resolves.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Only clear a null background after MAUI applied one, and cover reconnecting the same native button to a new virtual view.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Use SKPathBuilder, explicit text alignment, and explicit bitmap sampling so normal warnings-as-errors builds succeed after the package update.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Wait for the native action container rather than the pre-existing content view, and allow the existing one-pixel tolerance on both sides of the glyph boundary.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Reject overlapping activity-result launches, cancel abandoned activity owners, and extend the regression coverage for the affected AndroidX picker path.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Create the weak background state only after MAUI applies a real paint and remove it again when that background is cleared.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Compile and classify the nested per-edge safe-area scenario for both Apple targets so MacCatalyst receives the same guard as iOS.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Keep the Issue36749 result stable when the page appears again after the native platform view has already been detached.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Include Svg.SceneGraph and Svg.Animation in the explicit third-party signing set now that both assemblies ship in the Resizetizer package.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d00747b7-96f3-4e7a-8dfb-e3a48db04b2d
Integrate this SR10.1 payload through vs/10.0.101. Final release review remains on the aggregate PR into release/10.0.1xx-sr10.
Integrate this SR10.1 payload through vs/10.0.101. Final release review remains on the aggregate PR into release/10.0.1xx-sr10.
Integrate this SR10.1 payload through vs/10.0.101. Final release review remains on the aggregate PR into release/10.0.1xx-sr10.
Copilot AI lite review requested due to automatic review settings August 22, 2026 14:42
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:42 — with GitHub Actions Inactive
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Dogfood this PR with:

⚠️ WARNING: Do not do this without first carefully reviewing the code of this PR to satisfy yourself it is safe.

curl -fsSL https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.sh | bash -s -- 37745

Or

  • Run remotely in PowerShell:
iex "& { $(irm https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.ps1) } 37745"

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
There may be pipelines that require an authorized user to comment /azp run to run.

@kubaflo

kubaflo commented Aug 22, 2026

Copy link
Copy Markdown
Contributor Author

Replaced by #37746 after the head branch was renamed to inflight/10.0.101.

@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:44 — with GitHub Actions Inactive
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:44 — with GitHub Actions Inactive
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:44 — with GitHub Actions Inactive
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:46 — with GitHub Actions Inactive
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:47 — with GitHub Actions Inactive
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:47 — with GitHub Actions Inactive
@github-actions github-actions Bot added area-drawing Shapes, Borders, Shadows, Graphics, BoxView, custom drawing platform/android platform/ios platform/macos macOS / Mac Catalyst platform/windows labels Aug 22, 2026
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:48 — with GitHub Actions Inactive
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:48 — with GitHub Actions Inactive
@kubaflo
kubaflo temporarily deployed to copilot-pat-pool August 22, 2026 14:49 — with GitHub Actions Inactive

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Integrates the staged .NET MAUI 10.0.101 Visual Studio insertion payload into release/10.0.1xx-sr10, bringing in a set of servicing regression backports plus the SkiaSharp 4.150.1 dependency update and associated API migrations across build tooling and graphics code.

Changes:

  • Update SkiaSharp/Svg.Skia (and related deps), including Resizetizer + Graphics.Skia API migrations (e.g., SKPathBuilder, SKSamplingOptions, SKFont changes).
  • Improve Android activity-result handling for Essentials/MediaPicker across child activities, activity recreation, and task removal; add dedicated device tests.
  • Fix/adjust platform behaviors and add regression tests: iOS safe-area per-edge arbitration, Android SwipeItem layout alignment, Windows content reparenting, and back navigation override detection.

Reviewed changes

Copilot reviewed 47 out of 50 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/SingleProject/Resizetizer/test/UnitTests/ResizetizeImagesTests.cs Updates Resizetizer SVG test coverage to separate valid vs invalid SVG inputs.
src/SingleProject/Resizetizer/test/UnitTests/images/invalid.svg Adds a deliberately invalid SVG fixture for negative test cases.
src/SingleProject/Resizetizer/src/TizenSplashUpdater.cs Removes obsolete SkiaSharp FilterQuality usage in splash rendering path.
src/SingleProject/Resizetizer/src/SkiaSharpTools.cs Removes obsolete SkiaSharp FilterQuality usage from shared paint configuration.
src/SingleProject/Resizetizer/src/SkiaSharpAppIconTools.cs Adds targeted pragma around obsolete SKPath.AddCircle for compatibility.
src/SingleProject/Resizetizer/src/ResizetizerPackages.projitems Adds new Svg.* assemblies to package/reference inclusion for tooling.
src/Graphics/tests/Graphics.Tests/ImageAssert.cs Fixes assertion message to report the actual threshold parameter.
src/Graphics/src/Graphics.Skia/SKPaintExtensions.cs Removes reliance on obsolete SKPaint text/font members when copying paint.
src/Graphics/src/Graphics.Skia/SkiaTextLayout.cs Routes SKPaint-based ctor to SKFont overload with null font (SkiaSharp 4.x model).
src/Graphics/src/Graphics.Skia/SkiaCanvasStateService.cs Removes obsolete Typeface assignment on SKPaint defaults; uses SKFont path.
src/Graphics/src/Graphics.Skia/SkiaCanvasState.cs Migrates internal text state from SKPaint text fields to SKFont; updates reset path.
src/Graphics/src/Graphics.Skia/SkiaCanvas.cs Migrates arc/path creation to SKPathBuilder, updates text draw and bitmap sampling call.
src/Graphics/src/Graphics.Skia/SKGraphicsExtensions.cs Migrates PathF → Skia path conversion from SKPath to SKPathBuilder.
src/Essentials/test/DeviceTests/Tests/ActivityStateManagerRecreation_Tests.Android.cs Adds Android device tests validating activity-result behavior across recreation/task removal.
src/Essentials/test/DeviceTests/Tests/ActivityStateManager_Tests.cs Adds unit test for adopting pending request state after activity recreation.
src/Essentials/src/Platform/ActivityStateManager.android.cs Registers activity-result requests per activity lifecycle; adds teardown support and state callbacks.
src/Essentials/src/Platform/ActivityForResultRequest.android.cs Reworks request ownership/launching to be per-activity and recreation-safe, with task removal monitoring.
src/Essentials/src/MediaPicker/MediaPicker.android.cs Ensures photo-picker launches use a ComponentActivity owner and updated launcher API.
src/Core/tests/DeviceTests/Handlers/Window/WindowHandlerTests.Android.cs Adds test coverage for Material 2 vs Material 3 status bar appearance selection logic.
src/Core/tests/DeviceTests/Handlers/Button/ButtonHandlerTests.iOS.cs Adds iOS device tests ensuring native UIButton background styling isn’t cleared unexpectedly.
src/Core/src/Platform/iOS/SafeAreaPadding.cs Adds descendant invalidation helper and per-edge parent-blocked edge resolution.
src/Core/src/Platform/iOS/MauiView.cs Implements per-edge safe-area ancestor arbitration with caching and invalidation.
src/Core/src/Platform/iOS/MauiScrollView.cs Aligns scroll-view safe area logic with per-edge arbitration and both inset calculation paths.
src/Core/src/Platform/iOS/ButtonExtensions.cs Preserves native UIButton background unless MAUI previously applied a background; tracks state per button.
src/Core/src/Platform/Android/WindowExtensions.cs Switches status bar appearance resolution to use Material3 surface vs Material2 primary color.
src/Core/src/Platform/Android/MauiSwipeView.cs Adjusts SwipeItem measurement modes to improve icon/text vertical alignment.
src/Core/src/Handlers/View/ViewHandler.iOS.cs Forces safe-area invalidation through descendants when SafeAreaEdges mapping changes.
src/Core/src/Handlers/ContentView/ContentViewHandler.Windows.cs Fixes WinUI reparenting by removing platform view from existing parents to avoid COM exceptions.
src/Core/src/Handlers/Border/BorderHandler.Windows.cs Same WinUI reparenting fix pattern for Border content updates.
src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue37706.cs Adds Android UI test for root-page OnBackButtonPressed override invocation.
src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue36749.cs Adds iOS/MacCatalyst UI test for preserving native UIButton styling vs MAUI clears.
src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue36298.cs Adds UI test validating dynamic content switching doesn’t crash on Windows ContentPresenter scenarios.
src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue35826.cs Adds Android UI test coverage for child-activity MediaPicker completion and cancellation paths.
src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue34563.cs Adds iOS/MacCatalyst safe-area UI test for per-edge arbitration when parent/child edges differ.
src/Controls/tests/TestCases.HostApp/MauiProgram.cs Registers custom handler used by Issue36749 HostApp scenario.
src/Controls/tests/TestCases.HostApp/Issues/Issue37706.cs Adds HostApp page reproducer for root-page back handling.
src/Controls/tests/TestCases.HostApp/Issues/Issue36749.cs Adds HostApp page + custom handler reproducer for native-styled UIButton background preservation.
src/Controls/tests/TestCases.HostApp/Issues/Issue36298.cs Adds HostApp repro for dynamic content switching (RefreshView/ScrollView) on Windows.
src/Controls/tests/TestCases.HostApp/Issues/Issue35826.cs Adds HostApp repro using a child Android activity to exercise MediaPicker completion paths.
src/Controls/tests/TestCases.HostApp/Issues/Issue34563.cs Adds HostApp safe-area repro page for parent/child mismatched edge handling.
src/Controls/tests/DeviceTests/Elements/SwipeView/SwipeViewTests.cs Ensures required handlers are registered for new SwipeView/CollectionView device test coverage.
src/Controls/tests/DeviceTests/Elements/SwipeView/SwipeViewTests.Android.cs Adds Android device test validating SwipeItem icon+text alignment with CollectionView content.
src/Controls/tests/Core.UnitTests/WindowsTests.cs Adds unit tests for back navigation consumption based on back-button override presence.
src/Controls/src/Core/Window/Window.cs Updates back navigation consumption logic to consider OnBackButtonPressed overrides.
src/Controls/src/Core/Page/Page.cs Adds cached detection of whether OnBackButtonPressed is overridden (cross-assembly).
eng/Versions.props Bumps SkiaSharp/HarfBuzz/Svg.Skia/ExCSS and related versions for the payload.
eng/Signing.props Adds signing entries for newly included Svg.* assemblies.
eng/NuGetVersions.targets Ensures new Svg.* package references are version-pinned via central versioning.

Comment on lines +68 to +72
var appearance = WindowExtensions.GetStatusBarAppearance(
themedContext,
isLightTheme: isDarkTheme,
isMaterial3: true);

Comment on lines +63 to 67
// Remove previous background gradient layer if any.
// Safe to call when MAUI has not applied a gradient because this is a no-op.
// Running it before the paint guard ensures any previously-applied gradient is cleaned
// up regardless of the new paint value.
platformButton.RemoveBackgroundLayer();
kubaflo added a commit that referenced this pull request Sep 1, 2026
…load (#37746)

<!-- Please let the below note in for people that find this PR -->
> [!NOTE]
> Are you waiting for the changes in this PR to be merged?
> It would be very helpful if you could [test the resulting
artifacts](https://github.com/dotnet/maui/wiki/Testing-PR-Builds) from
this PR and let us know in a comment if this change resolves your issue.
Thank you!

<!-- release-readiness-agent: human-approval-required -->
## Summary

Integrates the staged **.NET MAUI 10.0.101 (SR10.1)** payload from
`inflight/10.0.101` into `release/10.0.1xx-sr10`, based on the shipped
`10.0.100` release.

The full release inventory and servicing decisions are tracked in
#37723. The [authoritative regression
query](https://github.com/dotnet/maui/issues?q=repo%3Adotnet%2Fmaui%20is%3Aissue%20is%3Aopen%20%28label%3A%22regressed-in-10.0.10%22%20OR%20label%3A%22regressed-in-10.0.20%22%20OR%20label%3A%22regressed-in-10.0.30%22%20OR%20label%3A%22regressed-in-10.0.40%22%20OR%20label%3A%22regressed-in-10.0.50%22%20OR%20label%3A%22regressed-in-10.0.60%22%20OR%20label%3A%22regressed-in-10.0.70%22%20OR%20label%3A%22regressed-in-10.0.80%22%20OR%20label%3A%22regressed-in-10.0.90%22%20OR%20label%3A%22regressed-in-10.0.100%22%29)
remains the source for the servicing-regression scope.

> [!IMPORTANT]
> Checked items under **Staged in this PR** are merged into
`inflight/10.0.101`, not yet into `release/10.0.1xx-sr10`. They reach
the release branch only when this aggregate PR is merged.

## Status at a glance

- [x] Stage the selected regression backports independently on
`inflight/10.0.101`.
- [x] Stage the SkiaSharp 4.150.1 payload and selective
`SKPath.AddCircle` compatibility fix.
- [x] Stage the isolated iOS 26 Liquid Glass TabBar payload from #37542.
- [ ] Complete or explicitly defer the six unresolved servicing
regressions listed below.
- [ ] Complete the release gates and merge this PR into
`release/10.0.1xx-sr10`.

## Staged in this PR

### Servicing regressions

- [x] #35826 — Android MediaPicker completion from child activities.
Source #35944; component backport #37724.
- [x] #36298 — Windows dynamic `ContentPresenter` assignment. Source
#36430; component backport #37725.
- [x] #36749 — preserve custom iOS Button styling. Source #36769;
component backport #37726.
- [x] #36736 — align Android SwipeItem content. Source #36820; component
backport #37727.
- [x] #34563 — per-edge iOS safe-area handling. Source #37033; component
backport #37728.
- [x] #37706 — Android root-page back handling. Source #37709; component
backport #37729.
- [x] #37705 — Android Material 3 status-bar contrast. Source #37710;
component backport #37730.
- [x] #37423 — restore native iOS 26 Liquid Glass TabBar behavior
through the isolated four-file payload from merged PR #37542.
- [x] #37418 — Android off-screen `TranslationY` layout padding. Source
fix #37772; focused backport commit `10799e67df`.
- [x] #37361 — iOS RefreshView pull-to-refresh with an empty
CollectionView. Source fix #37404; focused backport commit `d26faa8e93`.
- [x] #37638 — Android `Screenshot.CaptureAsync` synchronous UI-thread
deadlock. Source fix #37680; focused backport commit `778040a233`.

### Planned Skia payload

- [x] Port the Skia/Svg.Skia update from #36255 through component
backport #37731.
- [x] Include only the required `SKPath.AddCircle` compatibility change
from #36787; exclude its unrelated SourceGen changes.
- [x] Confirm a matching SkiaSharp 4.150.1 native-assets/PDB build for
`_SkiaSharpNativeAssetsVersion`, or record an explicit release-owner
waiver.

### Integration follow-ups

- [x] Apply the aggregate review fixes for safe-area cache invalidation,
Activity-for-result cancellation ownership, and Android theme-test
semantics.
- [x] Keep the final branch payload as focused release commits without
unrelated `inflight/current` history.
- [x] Validate the #37418 and #37638 focused Android UI tests on the
aggregate branch (2/2 passed).
- [ ] Validate the #37361 focused iOS UI test on the aggregate branch.

## Already present on the SR10 base — no new merge needed

- [x] #36852 — Android Shell hidden-fragment leak; fix #36903 is already
in SR10.
- [x] #36735 — Android ActivityIndicator visibility; fix #36748 is
already in SR10.
- [x] #36853 — Android Shell DI-singleton route blank page; fix #36903
is already in SR10.
- [x] #36942 — Android UI event handling; fix #36988 is already in SR10.
- [x] #37281 — Android scrolling inside shadowed containers; backport
#37312 is already in SR10.

## Completed disposition — no backport required

- [x] #37700 — closed as intended SR10 `SwipeView.Threshold` behavior
from #36878; any SwipeItem sizing concern should be tracked separately.

## Not included yet — merge, defer, or explicitly disposition before
payload freeze

- [ ] #35301 — Windows CollectionView applies WinUI styling by default;
no linked fix PR.
- [ ] #34491 — Android CollectionView selection with
`PointerGestureRecognizer`; replacement fix #37952 remains draft against
`main`.
- [ ] #35059 — iOS app becomes unresponsive when opening a ComboBox
dropdown in landscape; no linked fix PR.
- [ ] #37407 — iOS TimePicker default `t` format forces en-US; fix
#37797 remains draft against `main`.
- [ ] #36269 — Android `SafeAreaEdges` with Shell tab navigation and
hidden TabBar; source fix #36474 remains open against `main` and has no
SR10 backport.
- [ ] #37657 — Android Shell/root-page `OnBackButtonPressed()` in
Release builds; no linked fix PR.

## Release completion

### Before merging this PR

- [ ] Refresh the authoritative query and reconcile #37723 with its
current results.
- [ ] Record an include/defer/close decision for every unresolved
regression above.
- [ ] Validate every included regression on its reported OS/version
using the `10.0.101` candidate packages.
- [ ] Complete current-head aggregate CI and resolve or explicitly waive
every required build/device/UI-test failure.
- [ ] Resolve or waive the Skia native-assets/PDB release gate.
- [ ] Bump `eng/Versions.props` from patch `100` to `101` after the
payload is frozen.
- [ ] Obtain the required independent current-head maintainer approvals.
- [ ] Merge #37746 into `release/10.0.1xx-sr10`.

### After merge

- [ ] Confirm BAR promotion and the per-build validation feed used by
the ship assessment.
- [ ] Publish and tag `10.0.101`.
- [ ] Complete the Visual Studio insertion/default-MAUI-version update.

## Notes

- No automated `/backport` command was used for this release payload.
- Supersedes #37745, which GitHub automatically closed when the
integration branch was renamed from `vs/10.0.101` to
`inflight/10.0.101`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-drawing Shapes, Borders, Shadows, Graphics, BoxView, custom drawing platform/android platform/ios platform/macos macOS / Mac Catalyst platform/windows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants