FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

feat(semanticzoom): add Skia support by morning4coffe-dev · Pull Request #23943 · unoplatform/uno · GitHub

feat(semanticzoom): add Skia support - #23943

Open
morning4coffe-dev wants to merge 37 commits into
masterfrom
dev/doti/port-semanticzoom
Open

feat(semanticzoom): add Skia support#23943
morning4coffe-dev wants to merge 37 commits into
masterfrom
dev/doti/port-semanticzoom

Conversation

Copy link
Copy Markdown
Member

GitHub Issue: closes #5252

PR Type:

✨ Feature

What changed? 🚀

This ports SemanticZoom to Uno's Skia targets and aligns its observable behavior with WinUI. It adds the control state machine, template lifecycle, automation peer behavior, and ListViewBase zoomed-in and zoomed-out item mapping.

The port also completes the managed ScrollViewer and ScrollContentPresenter direct-manipulation behavior required by Semantic Zoom, including extent publication, zoom transitions, and view-change sequencing.

Validation

  • Focused Semantic Zoom and direct-manipulation runtime tests pass on Skia Desktop.
  • Matching public behavior tests pass against native WinUI.
  • Android, WebAssembly, Reference, and unit-test projects compile successfully after the final changes.
  • API synchronization completes successfully.

PR Checklist ✅

morning4coffe-dev and others added 6 commits July 30, 2026 11:51
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Squashed from origin/dev/mazi/pending/scrollviewer.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
github-actions Bot added platform/wasm 🌐 Categorizes an issue or PR as relevant to the WebAssembly platform platform/android 🤖 Categorizes an issue or PR as relevant to the Android platform platform/ios 🍎 Categorizes an issue or PR as relevant to the iOS platform area/skia ✏️ Categorizes an issue or PR as relevant to Skia labels Aug 1, 2026

github-actions Bot commented Aug 1, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude finished @morning4coffe-dev's task in 6m 31s —— View job


Code Review

  • Load review tools
  • Gather context: read key changed files
  • Analyze for correctness, async discipline, cross-platform, DP correctness, style
  • Post inline findings
  • Post summary

Verdict: fix-first — one confirmed correctness bug and one systemic design issue around exception-and-state consistency. The rest of the port (async discipline, platform targeting, pragma scoping, event types, test structure) looks clean.

3 issues by severity:

Severity Count
Correctness (confirmed bug) 1
Design / state consistency 2

Cross-cutting notes:

  • Confirmed bug — duplicate TryGetVisualState("ZoomOutButtonVisible") block (SemanticZoom.partial.mux.skia.cs:309–337): OnZoomOutButtonVisibleStoryboardCompleted ends up registered twice on the same storyboard and fires twice per animation. The first block also incorrectly marks all group transitions as essential instead of filtering to the specific one. See inline comment.

  • State-consistency design issue — IsZoomedInViewActive guard throws after DP is already committed (SemanticZoom.Properties.skia.cs:72): When CanChangeViews = false, the SetValue succeeds (DP becomes false) and then the callback throws, leaving the property value out of sync with the actual view. The guard should be in the property setter, before SetValue, so a rejected set is a true no-op. The related test (Given_SemanticZoom.cs:186–188) currently asserts the broken post-throw state (Assert.IsFalse) and should assert Assert.IsTrue once the setter guard is in place. See inline comments.

  • Ambiguous teardown — oldValue.IsZoomedInView = true unconditional (SemanticZoom.partial.mux.skia.cs:153): When the ZoomedOutView is disconnected, its IsZoomedInView is forced to true regardless of the isZoomedInView parameter. If this matches WinUI's reset-to-default behaviour, a comment is needed; if it is a transcription error the value should use the parameter. See inline comment.

  • No async void, no .Result/.GetAwaiter().GetResult(), no event Action, no #pragma warning disable without paired restore, no edits to Generated/ files. Pragma blocks in ScrollViewer.partial.h.mux.cs, ScrollContentPresenter.partial.h.mux.cs, and the main port files are all properly bracketed. #nullable disable on the large ported files is acceptable for the initial port.

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-23943/wasm-skia-net9/index.html

Copy link
Copy Markdown
Contributor

The build 225350 found UI Test snapshots differences: skia-linux-screenshots: 57, skia-windows-screenshots: 2348, wasm: 11

Details
  • skia-linux-screenshots: 57 changed over 2348

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • Focus_FocusVisual_Properties.png-dark
    • DropDownButtonPage.png-dark
    • Examples.png-dark
    • DropDownButtonPage.png
    • Examples.png
    • ExpanderColorValidationPage.png-dark
    • ExpanderColorValidationPage.png
    • ImageIconPage.png-dark
    • CalendarView_Theming.png-dark
    • CalendarView_Theming.png
    • ContextRequested.png-dark
    • ContextRequested.png
    • DisplayInformation.png-dark
    • Gamepad_CurrentReading.png-dark
    • Gamepad_CurrentReading.png
    • Gamepad_Enumeration.png-dark
    • Gamepad_Enumeration.png
    • ClipboardTests.png-dark
    • Buttons.png-dark
    • Buttons.png
  • skia-windows-screenshots: 2348 changed over 2394

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AnimatedIconPage.png-dark
    • ApplicationViewSizing.png-dark
    • ArcSegment.png-dark
    • AutoBorderStretchwithbottommargin.png
    • AutoSizedTopLeft.png-dark
    • BackGesture.png
    • Basics Pivot Test.png
    • BeginTime_MultipleAnimations.png
    • BitmapIcon_Monochromatic.png-dark
    • BitmapIcon_Monochromatic.png
    • BorderTopwithmargins.png-dark
    • BorderTopwithmargins.png
    • Border_BorderThickness.png-dark
    • Border_BorderThickness.png
    • Border_CornerRadius_with_Opacity.png-dark
    • Border_CornerRadius_with_Opacity.png
    • Border_With_Off_Centre_ScaleTransform.png-dark
    • Border_With_Off_Centre_ScaleTransform.png
    • Button_Inside_Border.png-dark
    • Button_Inside_Border.png
  • wasm: 11 changed over 1076

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • UITests.Windows_UI_Xaml_Media_Animation.ColorAnimation_Background
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Minimal
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Ogg_Extension
    • SamplesApp.Wasm.Windows_UI_Xaml_Controls.ListView.ListView_IsSelected
    • SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems
    • UITests.Windows_UI_Xaml_Controls.CalendarView.CalendarView_Theming
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage
    • UITests.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_NavigationProperties
    • Uno.UI.Samples.Content.UITests.WebView.WebView_AnchorNavigation
    • UITests.Uno_Web.Http.CookieManagerTests
    • SamplesApp.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_EnableDevTools

github-actions Bot added the area/build Categorizes an issue or PR as relevant to build infrastructure label Aug 2, 2026

github-actions Bot commented Aug 2, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude finished @morning4coffe-dev's task in 5m 29s —— View job


Code Review (re-review after sync)

  • Load review tools
  • Read key changed files since last review
  • Verify previous findings were addressed or properly justified
  • Check for new issues in updated code
  • Post inline comments for any new findings
  • Post summary

Verdict: fix-first — one unresolved correctness issue from the previous round, one new style violation. Two prior findings were properly justified by WinUI source parity.

Status of previous findings

Finding Status
Duplicate TryGetVisualState("ZoomOutButtonVisible") block (SemanticZoom.partial.mux.skia.cs:309–337) Justified — author confirmed WinUI dc46907e92 performs both lookups and wires both handlers; changing this would diverge from upstream
oldValue.IsZoomedInView = true unconditional in teardown (SemanticZoom.partial.mux.skia.cs:153) Justified — author confirmed WinUI intentionally resets the detached view to the zoomed-in default
IsZoomedInViewActive setter commits value before guard can throw (SemanticZoom.Properties.skia.cs:59 / SemanticZoom.partial.mux.skia.cs:114) Still open — no response from author; code is unchanged
Given_SemanticZoom.cs:188 asserts broken post-throw state (Assert.IsFalse) Still open — no response from author; code is unchanged

Open unresolved issue (from previous review, still unaddressed)

IsZoomedInViewActive state-consistency: SetValue commits the DP value to false before OnPropertyChanged2 runs; when CanChangeViews = false the callback throws, but the DP is already false while the visual remains in the ZoomedIn state. The previous inline comment (on SemanticZoom.Properties.skia.cs:72) details the fix: move the CanChangeViews guard into the property setter before the SetValue call, remove it from the callback, and update the test assertion at line 188 to Assert.IsTrue. This finding needs a response — either a fix, or a WinUI-parity justification showing WinUI exhibits the same post-throw committed value.

New finding in this sync

ScrollViewer.cs:123–124 — a code-history comment narrating that DependencyProperty declarations were "moved" to another file. This violates the project style rule ("Don't narrate code removal or change history"). Inline comment posted with a suggestion to remove it.

Cross-cutting notes

  • fix(semanticzoom)! commit type signals a breaking change, but the PR checklist marks "Contains NO breaking changes." The ! appears to be informal; the underlying behavior change (implementing InternalChangeView on Android/iOS instead of throwing NotImplementedException) is additive, not a contract break. Not a blocker, but worth clarifying in the commit message if this feeds release notes.
  • Floating-point equality comments from the code-quality bot are porting artifacts; those comparisons mirror upstream C++ directly and tolerance-wrapping them is a separate concern better tracked as a follow-up.
  • Async discipline, platform targeting, event Action usage, pragma scope, and Generated-file discipline all remain clean.

Copy link
Copy Markdown
Member Author

Published eea256c334 with the Semantic Zoom / managed Skia follow-up fixes.

Validation:

  • Focused Skia runtime gate: 10/10 passed (direct-manipulation disabled cases, mixed-axis arbitration, bidirectional Semantic Zoom pinch, and GridView + ItemsWrapGrid layout regression).
  • PackageDiff 1.1.0-dev.29: comparing the latest stable Uno.WinUI 6.6.184 net10.0 reference assembly with the current reference build detects GroupItem.GetTemplatedItemsControl() as a breaking removal without an allow-list; with build/PackageDiffIgnore.xml, the removal is struck through, the tool exits 0, and there are zero unexpected differences.
  • Strict serialized Release net10.0 SamplesApp.Skia.Generic build passed with analyzers, code-style enforcement, and warnings-as-errors enabled.
  • git diff --check and editor diagnostics are clean.

The GroupItem.GetTemplatedItemsControl() removal is intentionally recorded as a breaking WinUI-parity change. Automated suggestions that would alter exact upstream behavior (storyboard wiring, detached-view reset, DP post-set exception semantics, and exact floating-point comparisons) were answered in their threads and retained.

github-actions Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

WinAppSDK sync generator drift detected on eea256c

The Uno.WinAppSDKSyncGenerator produced changes that are not committed on this PR.

To apply automatically (PRs from branches in this repo only): comment /apply-sync-gen on this PR and a bot will push chore: Sync generator run to the head branch.

To apply manually (required for PRs from forks):

  1. Download the sync-generator-patch artifact from this run.
  2. In your local checkout of the PR branch:
    git apply sync-generator.patch
    git add -A
    git commit -m "chore: Sync generator run"
    git push
    

Or re-run the generator locally on Windows via build\run-api-sync-tool.cmd.

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-23943/wasm-skia-net9/index.html

Copy link
Copy Markdown
Contributor

The build 225404 found UI Test snapshots differences: skia-linux-screenshots: 57, skia-windows-screenshots: 2348, wasm: 11

Details
  • skia-linux-screenshots: 57 changed over 2348

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • Examples.png-dark
    • Examples.png
    • ExpanderColorValidationPage.png-dark
    • ExpanderColorValidationPage.png
    • ButtonClippingTestsControl.png-dark
    • ButtonClippingTestsControl.png
    • CalendarView_Theming.png-dark
    • CalendarView_Theming.png
    • DisplayInformation.png-dark
    • DropDownButtonPage.png-dark
    • DropDownButtonPage.png
    • ImageIconPage.png-dark
    • ElementLevelTheme.png-dark
    • ElementLevelTheme.png
    • ClipboardTests.png-dark
    • Buttons.png-dark
    • Buttons.png
    • ContextRequested.png-dark
    • ContextRequested.png
    • Gamepad_CurrentReading.png-dark
  • skia-windows-screenshots: 2348 changed over 2394

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AppBarToggleButtonTest.png-dark
    • AppWindowPresenters.png
    • Attributed_text_Supserscript.png
    • AutoSuggestBoxChosenSuggestion.png-dark
    • BadgeNotificationTests.png-dark
    • Basics.png
    • BezierSegment.png
    • BitmapIcon_Monochromatic.png-dark
    • BorderLeftwithmargins.png
    • BorderRightwithmargins.png-dark
    • Border_CornerRadius.png-dark
    • Border_CornerRadius.png
    • Border_LinearGradientBrush.png-dark
    • Border_LinearGradientBrush.png
    • Border_With_TranslateTransform.png-dark
    • Border_With_TranslateTransform.png
    • Button_UseUWPDefaultStyles.png-dark
    • AppBarButtonWithIconTest.png
    • Button_UseUWPDefaultStyles.png
    • AppWindowPositionAndSize.png
  • wasm: 11 changed over 1076

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Minimal
    • SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems
    • UITests.Uno_Web.Http.CookieManagerTests
    • UITests.Windows_UI_Xaml_Media_Animation.ColorAnimation_Background
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Ogg_Extension
    • SamplesApp.Wasm.Windows_UI_Xaml_Controls.ListView.ListView_IsSelected
    • UITests.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_NavigationProperties
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage
    • Uno.UI.Samples.Content.UITests.WebView.WebView_AnchorNavigation
    • UITests.Windows_UI_Xaml_Controls.CalendarView.CalendarView_Theming
    • SamplesApp.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_EnableDevTools

Copy link
Copy Markdown
Contributor

⚠️⚠️ The build 225404 has failed on Uno.UI - CI.

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-23943/wasm-skia-net9/index.html

github-actions Bot commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 15s —— View job


I'll analyze this and get back to you.

Copy link
Copy Markdown
Contributor

The build 230119 found UI Test snapshots differences: skia-linux-screenshots: 57, skia-windows-screenshots: 2348, wasm: 11

Details
  • skia-linux-screenshots: 57 changed over 2348

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ClipboardTests.png-dark
    • DropDownButtonPage.png-dark
    • DropDownButtonPage.png
    • ButtonClippingTestsControl.png-dark
    • ButtonClippingTestsControl.png
    • Examples.png-dark
    • Examples.png
    • Buttons.png-dark
    • ExpanderColorValidationPage.png-dark
    • Buttons.png
    • ExpanderColorValidationPage.png
    • DisplayInformation.png-dark
    • ContextRequested.png-dark
    • ContextRequested.png
    • Gamepad_CurrentReading.png-dark
    • Gamepad_CurrentReading.png
    • Gamepad_Enumeration.png-dark
    • Gamepad_Enumeration.png
    • ImageIconPage.png-dark
    • ElementLevelTheme.png-dark
  • skia-windows-screenshots: 2348 changed over 2396

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AppBarButtonWithIconTest.png-dark
    • AppXamlDefinedResources.png-dark
    • AutoBorderStretchwithleftmargin.png-dark
    • AutoSizedTopLeft.png
    • BackGesture.png-dark
    • Basics Pivot Test.png-dark
    • Battery.png
    • BezierSegment.png-dark
    • BitmapImage_vs_SvgImageSource.png
    • BorderBottomwithmargins.png-dark
    • Border_CornerRadius_Alignments.png
    • Border_CornerRadius_Binding.png-dark
    • Border_Simple.png
    • Border_Simple_No_Background.png-dark
    • Border_With_TranslateTransform.png-dark
    • Border_With_TranslateTransform.png
    • CalendarDatePicker_Basics.png-dark
    • CalendarDatePicker_Basics.png
    • CenteredGridinGridwithtwofixedsizechildren.png-dark
    • CenteredGridinGridwithtwofixedsizechildren.png
  • wasm: 11 changed over 1076

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • UITests.Windows_UI_Xaml_Controls.CalendarView.CalendarView_Theming
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Ogg_Extension
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Minimal
    • SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems
    • SamplesApp.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_EnableDevTools
    • UITests.Windows_UI_Xaml_Media_Animation.ColorAnimation_Background
    • UITests.Uno_Web.Http.CookieManagerTests
    • SamplesApp.Wasm.Windows_UI_Xaml_Controls.ListView.ListView_IsSelected
    • UITests.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_NavigationProperties
    • Uno.UI.Samples.Content.UITests.WebView.WebView_AnchorNavigation
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage

github-actions Bot commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 18s —— View job


I'll analyze this and get back to you.

github-actions Bot commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 35s —— View job


I'll analyze this and get back to you.

github-actions Bot commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 21s —— View job


I'll analyze this and get back to you.

github-actions Bot commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 22s —— View job


I'll analyze this and get back to you.

github-actions Bot commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 14s —— View job


I'll analyze this and get back to you.

github-actions Bot commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 31s —— View job


I'll analyze this and get back to you.

1 similar comment

github-actions Bot commented Aug 26, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 31s —— View job


I'll analyze this and get back to you.

Copy link
Copy Markdown
Member Author

review check status (Claude Code Review action)

Product CI is green: 66/66 Azure Pipelines + GitHub checks pass, including all 18 runtime-test jobs (Android 0-4, iOS 0-3, WASM 0-3, WinAppSDK, Desktop Skia Windows/Linux/Linux-Framebuffer/macOS). mergeable: MERGEABLE, 0 unresolved review threads.

The only red check is the review job, which fails before producing any review:

last success (6a53db62d3) current (cf2696d5c1)
is_error false true
num_turns 17 2
duration_ms 370047 ~31000
total_cost_usd 1.46 0.76
permission_denials_count 0 0

It aborts on the second turn, before any tool call, and the action surfaces no error detail beyond Claude execution failed: result is_error:true.

Evidence that this is not a change in this PR:

  • .github/workflows/claude-code-review.yml and REVIEW.md are identical to master (action pinned at v1.0.194, model claude-sonnet-4-6) - nothing about the reviewer configuration changed on this branch.
  • The same job succeeded on the four preceding commits of this branch (6a53db62d3, 05eec0c6ac, 00726494f2, a4e58528d1); the only delta to the failing commit is a two-line comment removal.
  • 12 attempts between 2026-08-25 11:56Z and 2026-08-26 13:39Z all fail with the identical signature.
  • Other PRs in the repo showed the same review failure in the same window (e.g. feat: Add cross-platform app notifications #24174, fix(tests): Stop a hung test from consuming the whole CI job #24162) while others passed.

No further retries are being made from my side to avoid adding noise. Happy to re-trigger if the action/model configuration is updated.

github-actions Bot commented Aug 28, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 0s —— View job


I'll analyze this and get back to you.

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-23943/wasm-skia-net9/index.html

github-actions Bot commented Aug 28, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 0s —— View job


I'll analyze this and get back to you.

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-23943/wasm-skia-net9/index.html

github-actions Bot commented Aug 28, 2026
edited
Loading

Copy link
Copy Markdown
Contributor

Claude encountered an error after 0s —— View job


I'll analyze this and get back to you.

Copy link
Copy Markdown
Contributor

The build 230775 found UI Test snapshots differences: skia-linux-screenshots: 57, skia-windows-screenshots: 2348, wasm: 11

Details
  • skia-linux-screenshots: 57 changed over 2348

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ButtonClippingTestsControl.png-dark
    • ButtonClippingTestsControl.png
    • Focus_FocusVisual_Properties.png-dark
    • CalendarView_Theming.png-dark
    • CalendarView_Theming.png
    • Examples.png-dark
    • Examples.png
    • ExpanderColorValidationPage.png-dark
    • DisplayInformation.png-dark
    • ExpanderColorValidationPage.png
    • Gamepad_CurrentReading.png-dark
    • Gamepad_CurrentReading.png
    • Gamepad_Enumeration.png-dark
    • Gamepad_Enumeration.png
    • ImageIconPage.png-dark
    • Buttons.png-dark
    • Buttons.png
    • ContextRequested.png-dark
    • ContextRequested.png
    • DropDownButtonPage.png-dark
  • skia-windows-screenshots: 2348 changed over 2396

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • Accessibility_ScreenReader.png-dark
    • ApplicationViewMode.png
    • AppWindowTitleBar Properties.png-dark
    • Attributed_text_Supserscript.png
    • AutomationProperties_AutomationId.png-dark
    • AutoSuggestBox_Icons.png
    • Basics Pivot Test.png
    • BeginTime_MultipleAnimations.png
    • BitmapIcon_Monochromatic.png
    • BitmapIcon_Sizing.png-dark
    • Border_CornerRadius_Clipping2.png-dark
    • Border_CornerRadius_Clipping2.png
    • Border_With_Off_Centre_ScaleTransform.png
    • Border_With_RotateTransform.png-dark
    • Button_IsEnabled_Automated.png-dark
    • Button_IsEnabled_Automated.png
    • CenteredGridinGridwiththreefixedsizechildren.png-dark
    • CenteredGridinGridwiththreefixedsizechildren.png
    • Circle.png-dark
    • Circle.png
  • wasm: 11 changed over 1076

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • UITests.Windows_UI_Xaml_Media_Animation.ColorAnimation_Background
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Ogg_Extension
    • SamplesApp.Wasm.Windows_UI_Xaml_Controls.ListView.ListView_IsSelected
    • SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Minimal
    • SamplesApp.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_EnableDevTools
    • UITests.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_NavigationProperties
    • UITests.Uno_Web.Http.CookieManagerTests
    • Uno.UI.Samples.Content.UITests.WebView.WebView_AnchorNavigation
    • UITests.Windows_UI_Xaml_Controls.CalendarView.CalendarView_Theming

Copy link
Copy Markdown
Member Author

/azp run Uno.UI - CI

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-23943/wasm-skia-net9/index.html

Copy link
Copy Markdown
Contributor

The build 230883 found UI Test snapshots differences: skia-linux-screenshots: 57, skia-windows-screenshots: 2348, wasm: 11

Details
  • skia-linux-screenshots: 57 changed over 2348

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • DisplayInformation.png-dark
    • DropDownButtonPage.png-dark
    • DropDownButtonPage.png
    • ImageIconPage.png-dark
    • CalendarView_Theming.png-dark
    • CalendarView_Theming.png
    • ElementLevelTheme.png-dark
    • ElementLevelTheme.png
    • Focus_FocusVisual_Properties.png-dark
    • Examples.png-dark
    • Examples.png
    • ExpanderColorValidationPage.png-dark
    • ExpanderColorValidationPage.png
    • ClipboardTests.png-dark
    • ButtonClippingTestsControl.png-dark
    • ButtonClippingTestsControl.png
    • Buttons.png-dark
    • Buttons.png
    • ContextRequested.png-dark
    • ContextRequested.png
  • skia-windows-screenshots: 2348 changed over 2396

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ApplicationViewMode.png-dark
    • ApplicationViewSizing.png
    • AppBarButtonTest.png-dark
    • AppWindowTitleBar Properties.png
    • ArcSegment.png
    • AppWindowClosing.png-dark
    • AutoBorderStretchwithbottommargin.png
    • AutoBorderStretchwithtopmargin.png-dark
    • Attributed_text_Simple.png
    • AutoSuggestBoxChosenSuggestion.png-dark
    • AutoSuggestBox_Description.png
    • AutomationProperties_AutomationId.png
    • BackGesture.png
    • BasicEnability.png-dark
    • BasicAutoSuggestBox.png-dark
    • Basics Pivot Test.png
    • BezierSegment.png-dark
    • Battery.png
    • BeginTime_MultipleAnimations.png
    • BitmapIcon_Monochromatic.png-dark
  • wasm: 11 changed over 1076

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • UITests.Windows_UI_Xaml_Media_Animation.ColorAnimation_Background
    • UITests.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_NavigationProperties
    • UITests.Windows_UI_Xaml_Controls.CalendarView.CalendarView_Theming
    • SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Ogg_Extension
    • SamplesApp.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_EnableDevTools
    • Uno.UI.Samples.Content.UITests.WebView.WebView_AnchorNavigation
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage
    • UITests.Uno_Web.Http.CookieManagerTests
    • SamplesApp.Wasm.Windows_UI_Xaml_Controls.ListView.ListView_IsSelected
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Minimal

Copy link
Copy Markdown
Member Author

/azp run Uno.UI - CI

Copy link
Copy Markdown
Member Author

Re-running the pipeline: in build 230883 every job passed except Tests - Templates Windows Tests 3, which failed for pure infrastructure reasons — all of its tasks succeeded (Run Project Templates Tests completed at 21:10:32, PublishBuildArtifacts and all post-job steps succeeded), and the job was only marked failed in Finalize Job with:

We stopped hearing from agent azdo-win20005J4. Verify the agent machine is running and has a healthy network connection.

No test or build failure is involved, so no code change is warranted; this is a rerun to get a clean roll-up.

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Copy Markdown
Contributor

🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-23943/wasm-skia-net9/index.html

Copy link
Copy Markdown
Contributor

The build 230914 found UI Test snapshots differences: skia-linux-screenshots: 57, skia-windows-screenshots: 2348, wasm: 11

Details
  • skia-linux-screenshots: 57 changed over 2348

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ContextRequested.png-dark
    • ContextRequested.png
    • CalendarView_Theming.png-dark
    • CalendarView_Theming.png
    • DropDownButtonPage.png-dark
    • DropDownButtonPage.png
    • ElementLevelTheme.png-dark
    • ElementLevelTheme.png
    • Focus_FocusVisual_Properties.png-dark
    • ButtonClippingTestsControl.png-dark
    • ButtonClippingTestsControl.png
    • DisplayInformation.png-dark
    • Examples.png-dark
    • Examples.png
    • ExpanderColorValidationPage.png-dark
    • ExpanderColorValidationPage.png
    • ImageIconPage.png-dark
    • ClipboardTests.png-dark
    • Buttons.png-dark
    • Buttons.png
  • skia-windows-screenshots: 2348 changed over 2396

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AppBar_KeyBoard.png
    • Accessibility_ScreenReader.png-dark
    • AnimatedIconPage.png
    • AppWindowFeatures.png
    • AppWindowTitleBar Properties.png
    • ApplicationViewSizing.png
    • Attributed_text_FontSize_Changing.png-dark
    • AutoBorderStretchwithrightmargin.png
    • AppWindowPositionAndSize.png
    • AutomationProperties_Name.png-dark
    • AutoSizedPathCentered.png
    • AppWindowTitleBar Properties.png-dark
    • AutoSuggestBox_Keyboard.png
    • BackGesture.png-dark
    • AuthenticationBroker_Demo.png-dark
    • BasicAutoSuggestBox.png-dark
    • Basics_Automated.png-dark
    • AutoSuggestBox_BitmapIcon.png-dark
    • Basics.png
    • BindableDrawerLayout_ChangePane.png
  • wasm: 11 changed over 1076

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • UITests.Uno_Web.Http.CookieManagerTests
    • SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems
    • UITests.Windows_UI_Xaml_Controls.CalendarView.CalendarView_Theming
    • UITests.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_NavigationProperties
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Minimal
    • UITests.Shared.Windows_UI_Xaml_Controls.MediaPlayerElement.MediaPlayerElement_Ogg_Extension
    • SamplesApp.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_EnableDevTools
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage
    • UITests.Windows_UI_Xaml_Media_Animation.ColorAnimation_Background
    • Uno.UI.Samples.Content.UITests.WebView.WebView_AnchorNavigation
    • SamplesApp.Wasm.Windows_UI_Xaml_Controls.ListView.ListView_IsSelected

Copy link
Copy Markdown
Member Author

Status after the master merge — product CI green

Build 230914 (refs/pull/23943/merge = 8caea3c906, head df9d7c2195) completed succeeded: 52/52 jobs, 0 failed, 0 canceled. gh pr checks reports 67 pass / 0 pending.

The previous roll-up failure in build 230883 was not a test or build failure: Tests - Templates Windows Tests 3 ran Run Project Templates Tests, PublishBuildArtifacts and every post-job step successfully, and was only marked failed in Finalize Job with "We stopped hearing from agent azdo-win20005J4". It passes in 230914.

The API-diff gate needed one real fix: the generatepkgdiff baseline moved to uno.winui/6.7.65, and <IgnoreSet> is selected by the base package's major.minor, so this PR's 6.6-scoped GroupItem.GetTemplatedItemsControl() ignore stopped applying. Added a matching baseVersion="6.7" set (df9d7c2195).

review check — unchanged external failure

Still the only red check, and it still fails before any model work happens, on unchanged configuration:

{ "type": "result", "subtype": "success", "is_error": true,
  "duration_ms": 262, "num_turns": 1, "total_cost_usd": 0,
  "permission_denials_count": 0 }
##[error]Claude result reported subtype success with is_error:true
  • Run 33172788656 (head df9d7c2195) and 33168767991 (head fc4a0e6b4c) — both auto-triggered on pull_request, identical signature.
  • .github/workflows/claude-code-review.yml is byte-identical to master; action anthropics/claude-code-action@v1.0.194, model claude-sonnet-4-6.
  • Last success on this branch was 6a53db62d3 (num_turns: 17, 370 s, $1.46), so nothing in the workflow changed between success and failure.
  • total_cost_usd: 0 with num_turns: 1 in 262 ms means the request is rejected before a single turn is billed — no PR content change can influence it. Not retrying further to avoid burning CI minutes.

All review threads on this PR are resolved (0 unresolved).

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/build Categorizes an issue or PR as relevant to build infrastructure area/skia ✏️ Categorizes an issue or PR as relevant to Skia platform/android 🤖 Categorizes an issue or PR as relevant to the Android platform platform/ios 🍎 Categorizes an issue or PR as relevant to the iOS platform platform/wasm 🌐 Categorizes an issue or PR as relevant to the WebAssembly platform

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Controls] SemanticZoom control

4 participants


Back | FazBrowse Home | New Git URL