Skip to content

feat: Add FrameworkElement.GetBindingExpression - #24375

Open
MartinZikmund wants to merge 4 commits into
masterfrom
dev/mazi/fe-getbindingexpression
Open

feat: Add FrameworkElement.GetBindingExpression#24375
MartinZikmund wants to merge 4 commits into
masterfrom
dev/mazi/fe-getbindingexpression

Conversation

@MartinZikmund

Copy link
Copy Markdown
Member

GitHub Issue: closes #24374

PR Type:

✨ Feature

What changed? 🚀

Adds the public FrameworkElement.GetBindingExpression(DependencyProperty) that WinUI declares and Uno never implemented.

Current behavior. Until 7.0, Uno exposed a public DependencyObject.GetBindingExpression(DependencyProperty). That member was Uno-only — WinUI declares GetBindingExpression on FrameworkElement, not DependencyObject — and 1237cecff83 demoted it to internal while narrowing the public surface for BC26. That was the right call, but Uno never had the WinUI-parity member either; the sync generator records it as:

// src/Uno.UI/Generated/3.0.0.0/Microsoft.UI.Xaml/FrameworkElement.cs:144
// Forced skipping of method Microsoft.UI.Xaml.FrameworkElement.GetBindingExpression(Microsoft.UI.Xaml.DependencyProperty)

So 7.0 removed the Uno-only API with no parity replacement, leaving no supported way to read a property's BindingExpression.

WinUI reference. microsoft.ui.xaml.coretypes.idl:2520, inside unsealed runtimeclass FrameworkElement, immediately after SetBinding; implemented at FrameworkElement_Partial.cpp:89,118.

This change adds the member on FrameworkElement rather than restoring it on DependencyObject, which would re-widen the surface past WinUI's. The internal DependencyObject member stays — Setter and ImageSource call it on non-FrameworkElement receivers. new is required because the internal base member is accessible in-assembly. The signature is left nullable-oblivious to match the historical public shape, per 4eab3fa9a5f.

Why now. This unblocks first-party libraries on 7.0. All five broken call sites in Uno.Toolkit.UI have FrameworkElement receivers, so this fix covers every one:

Call site Receiver type
Behaviors/CommandExtensions.cs:188 ContentPresenter
Controls/LoadingView/LoadingView.HotReload.cs:31 LoadingView : ContentControl
Controls/LoadingView/LoadingView.HotReload.cs:35 LoadingView : ContentControl
Controls/TabBar/TabBar.HotReload.cs:29 TabBar : ItemsControl
Uno.Toolkit.RuntimeTests/Tests/TabBarTests.cs:461 (test) TabBar

Validation

Runtime, Skia Desktop net11.0-desktop, Release — Given_FrameworkElement, 3/3 pass.

The two behavioral tests are deliberately not the guard: Uno.UI grants InternalsVisibleTo to the runtime test assembly, so they compile and pass against the internal DependencyObject member. Verified by deleting the new member and re-running — 2 passed, 1 failed, with only When_GetBindingExpression_Then_Declared_Public_On_FrameworkElement going red. That surface test is the real negative control, and it holds on native WinUI too, since WinUI declares the member publicly as well.

PR Checklist ✅

🤖 Generated with Claude Code

https://claude.ai/code/session_019vRaBaNK2HnyWeg3TBzEu6

MartinZikmund and others added 2 commits September 3, 2026 09:34
WinUI declares GetBindingExpression on FrameworkElement, next to
SetBinding (microsoft.ui.xaml.coretypes.idl, FrameworkElement runtime
class). Uno never implemented it - the sync generator records it as a
forced-skipped method - and instead carried an Uno-only public
GetBindingExpression on DependencyObject, which 1237cec rightly
demoted to internal when narrowing the 7.0 surface for BC26.

That left no parity replacement, so reading the BindingExpression of a
bound property became impossible for external consumers, breaking
shipped call sites in Uno.Toolkit.UI and Uno.Extensions with CS1061.

Add the public member on FrameworkElement rather than restoring it on
DependencyObject, which would re-widen the surface past WinUI's. The
internal DependencyObject member stays: Setter and ImageSource call it
on non-FrameworkElement receivers.

The signature is left nullable-oblivious to match the historical public
shape, per 4eab3fa.

Fixes #24374

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019vRaBaNK2HnyWeg3TBzEu6
The behavioral tests alone guard nothing: Uno.UI grants InternalsVisibleTo
to the runtime test assembly, so they compile and pass against the internal
DependencyObject member with the public FrameworkElement one removed
(verified - 2 passed, 0 failed, on Skia desktop with the member deleted).

Add a surface test asserting the method is declared public on
FrameworkElement, which is the actual negative control. Native WinUI
declares it too, so the assertion holds there as well.

Skia desktop, net11.0-desktop: 3/3 pass with the fix; without it the
surface test fails while the other two still pass.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019vRaBaNK2HnyWeg3TBzEu6
Copilot AI lite review requested due to automatic review settings September 3, 2026 07:42

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.

Warning

Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.

Pull request overview

Adds WinUI-parity API surface by introducing a public FrameworkElement.GetBindingExpression(DependencyProperty) and corresponding runtime tests to ensure it’s publicly declared and behaves as expected.

Changes:

  • Added FrameworkElement.GetBindingExpression(DependencyProperty) (as new) forwarding to the internal base implementation.
  • Added runtime tests verifying the API is publicly declared on FrameworkElement and returns an expression / null as appropriate.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
src/Uno.UI/UI/Xaml/FrameworkElement.mux.cs Introduces the public WinUI-parity FrameworkElement.GetBindingExpression API.
src/Uno.UI.RuntimeTests/Tests/Windows_UI_Xaml/Given_FrameworkElement.cs Adds tests validating public surface and basic runtime behavior for GetBindingExpression.

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/Uno.UI/UI/Xaml/FrameworkElement.mux.cs Outdated
@unodevops

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-24375/wasm-skia-net9/index.html

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Claude finished @MartinZikmund's task in 4m 27s —— View job


Review: FrameworkElement.GetBindingExpression

Todo list:

  • Gather context (PR description, diff, AGENTS.md)
  • Read changed files in full
  • Review FrameworkElement.mux.cs change (API surface, new keyword usage, nullability, WinUI parity)
  • Review runtime test file (coverage, test discipline)
  • Check for related internal DependencyObject.GetBindingExpression usages for consistency
  • Post inline findings (if any)
  • Post summary

Verdict: Ship

No inline findings — the change is small, well-scoped, and correctly reasoned. Highlights:

  • new is correctly required and justified. FrameworkElement now hides the internal DependencyObject.GetBindingExpression (DependencyObject.Binder.cs:909) with a public WinUI-parity member, matching the WinUI IDL (FrameworkElement, not DependencyObject). Verified Setter.cs:202 and a test's ImageSource/BitmapImage call site still correctly use the internal member since neither derives from FrameworkElement.
  • Nullable-oblivious signature is intentional and safe. The base internal member is BindingExpression? (nullable-enabled file); the new public member is null-oblivious by omitting #nullable enable, matching the historical public shape. I traced every internal call site that unqualifiedly invokes GetBindingExpression from a FrameworkElement-derived type (ContentPresenter.cs, ItemsControl.cs, TreeViewList.cs, PasswordBox.Host.cs, TextBox.Host.cs) — member lookup now resolves to the new public wrapper instead of the internal member directly, but every one of those call sites already null-safely pattern-matches (is { } / is null) rather than blindly dereferencing, so this is a no-op behaviorally, not a regression.
  • Test coverage is appropriate: a reflection-based "declared public on FrameworkElement" surface test (the real negative control, per the PR's own validation write-up) plus two behavioral tests for bound/unbound properties. The description's claim that the behavioral tests alone wouldn't catch a regression (due to InternalsVisibleTo) checks out against the code.
  • Doc comment, XML summary, file placement (FrameworkElement.mux.cs, alongside the MUX Reference FrameworkElement_partial.cpp header) and commit hygiene all line up with repo conventions.

One cross-cutting, non-blocking observation (outside the diff, so no inline comment could be anchored to it): src/Uno.WinAppSDKSyncGenerator/Generator.cs:1571-1580 force-skips WinAppSDK-sync generation for FrameworkElement.GetBindingExpression/SetBinding with the comment "located in DependencyObject but will need to be moved up." This PR is precisely that move for GetBindingExpression — skipping it from generation is still correct (it's now hand-authored), but the comment is now stale for that case and could mislead a future reader into thinking it's still TODO. Worth a follow-up comment tweak, not blocking this PR.
· Branch: dev/mazi/fe-getbindingexpression

@nventive-devops

Copy link
Copy Markdown
Contributor

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

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

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

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AppBar_KeyBoard.png-dark
    • ApplicationViewSpanningRectsPage.png
    • AuthenticationBroker_Demo.png-dark
    • AutomationProperties_AutomationId.png
    • AutoSuggestBox_Reason.png-dark
    • BasicAutoSuggestBox.png
    • Battery.png-dark
    • BenchmarkDotNet.png
    • BitmapImage_vs_SvgImageSource.png-dark
    • BitmapImage_vs_SvgImageSource.png
    • Border_AntiAlias.png
    • Border_BorderThickness.png-dark
    • Border_CornerRadius_with_Opacity.png
    • Border_Corner_Overlap.png-dark
    • Border_With_Off_Centre_ScaleTransform.png
    • Border_With_RotateTransform.png-dark
    • Button_Click_Verify_SynchronizationContext.png-dark
    • Button_Click_Verify_SynchronizationContext.png
    • CheckBox_Button.png-dark
    • CheckBox_Button.png
  • wasm: 11 changed over 1076

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

The public FrameworkElement member hid the internal DependencyObject one
of the same name, so it needed `new` and left two same-named members one
inheritance step apart - the resolved overload then depended on the static
type of the receiver.

Rename the DependencyObject worker to GetBindingExpressionInternal,
matching the SetBindingInternal it sits next to in DependencyObject.Binder.cs,
leaving the public FrameworkElement member as the only GetBindingExpression
in the hierarchy. The two call sites with a non-FrameworkElement receiver -
Setter.RefreshBindingPath and the XamlReader test reading an ImageSource
binding - move to the new name; every other one already had a
FrameworkElement receiver and now binds to the public member.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VhhVh3h6q4un8Ma3zvKxDt
Copilot AI review requested due to automatic review settings September 4, 2026 12:45
@github-actions github-actions Bot added the area/automation Categorizes an issue or PR as relevant to project automation label Sep 4, 2026
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Claude finished @MartinZikmund's task in 1m 57s —— View job


Review: FrameworkElement.GetBindingExpression (re-review after sync commit)

Todo list:

  • Gather context (diff vs origin/master, AGENTS.md rules)
  • Read changed files in full
  • Review nullability of GetBindingExpression return type (flagged by Copilot review)
  • Review DependencyObject.Binder.cs and Setter.cs diffs (updated since last review)
  • Review Given_XamlReader.cs change for relevance
  • Post inline findings (if any)
  • Post summary

Verdict: Ship

No inline findings on the latest commit (2911dec3). 0 issues found across correctness, contract, style, and test-coverage dimensions.

What changed since the last review pass: the earlier new-hiding design (public FrameworkElement.GetBindingExpression shadowing the internal DependencyObject member) was replaced by renaming the DependencyObject worker to GetBindingExpressionInternal (mirroring the existing SetBindingInternal). This removes the new keyword entirely and leaves exactly one GetBindingExpression in the hierarchy — the public, WinUI-parity one on FrameworkElement. This is a cleaner resolution than the new-based approach from the prior commit and sidesteps the overload-resolution-depends-on-static-type hazard that shadowing would have introduced.

I traced every remaining GetBindingExpression/GetBindingExpressionInternal call site in src/ (via full-repo grep) to confirm the rename was applied consistently:

  • The two non-FrameworkElement receivers — Setter.RefreshBindingPath (Setter.cs:202) and the ImageSource/BitmapImage call in Given_XamlReader.cs:150 — correctly moved to GetBindingExpressionInternal.
  • Every other call site (ContentPresenter, ItemsControl, TreeViewList, PasswordBox/TextBox host, CommandingHelpers, and all test files) has a FrameworkElement-derived static receiver type and now correctly binds to the new public member.

On the nullability point Copilot raised earlier: still intentional and unchanged by this commit — FrameworkElement.mux.cs has no #nullable enable, so the public signature stays null-oblivious by design, matching the pre-7.0 public shape (per 4eab3fa9a5f) while the internal worker in the nullable-enabled DependencyObject.Binder.cs is correctly annotated BindingExpression?. No action needed.

Non-blocking, unchanged from prior review: src/Uno.WinAppSDKSyncGenerator/Generator.cs:1575-1576 still carries the comment "Those two members are located in DependencyObject but will need to be moved up" for GetBindingExpression/SetBinding — now stale for GetBindingExpression specifically, since this PR is that move. Still not part of this PR's diff, so no inline comment could anchor to it; worth a follow-up wording tweak, not a blocker.

Test coverage (Given_FrameworkElement.cs) is unaffected by this commit besides the internal rename and remains appropriate: a reflection-based public-surface guard plus two behavioral tests.
· Branch: dev/mazi/fe-getbindingexpression

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.

🟢 Approval recommended

The change cleanly adds the missing public WinUI API with appropriate internal plumbing updates and targeted runtime tests validating both surface and behavior.

Review details
  • Files reviewed: 5/5 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

Comment thread src/Uno.UI.UnitTests/Windows_UI_Xaml_Markup/XamlReaderTests/Given_XamlReader.cs Dismissed
@unodevops

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-24375/wasm-skia-net9/index.html

@nventive-devops

Copy link
Copy Markdown
Contributor

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

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

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

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AnimatedIconPage.png
    • ApplicationViewSizing.png-dark
    • AppXamlDefinedResources.png
    • Attributed_text_Simple.png
    • AutoBorderStretchwithrightmargin.png
    • AutoSuggestBoxChosenSuggestion.png-dark
    • BackGesture.png-dark
    • BasicEnability.png
    • BitmapIcon_Generic.png
    • BitmapIcon_Monochromatic.png-dark
    • BorderRightwithmargins.png-dark
    • BorderRightwithmargins.png
    • Border_CornerRadius_Alignments.png
    • Border_CornerRadius_Binding.png-dark
    • Border_Simple.png
    • Border_Simple_No_Background.png-dark
    • Border_With_RotateTransform.png-dark
    • Border_With_RotateTransform.png
    • Button_IsEnabled_Automated.png-dark
    • Button_IsEnabled_Automated.png
  • wasm: 11 changed over 1076

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • SamplesApp.Wasm.Windows_UI_Xaml_Controls.ListView.ListView_IsSelected
    • 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
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage
    • SamplesApp.Windows_UI_Xaml_Controls.ListView.ListViewSelectedItems
    • UITests.Uno_Web.Http.CookieManagerTests
    • UITests.Windows_UI_Xaml_Media_Animation.ColorAnimation_Background
    • Uno.UI.Samples.Content.UITests.WebView.WebView_AnchorNavigation
    • SamplesApp.Microsoft_UI_Xaml_Controls.WebView2Tests.WebView2_EnableDevTools
    • UITests.Windows_UI_Xaml_Controls.CalendarView.CalendarView_Theming

@unodevops

Copy link
Copy Markdown
Contributor

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

When_PasswordChar_Visual_Comparison fails consistently on the tvOS Skia
runtime tests. The pixel comparison against an equivalent TextBox is
unrelated to this branch's change; exclude SkiaTvOS until the rendering
difference is investigated.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LYdwu4PvsQCH7DD5UJjyiv
Copilot AI review requested due to automatic review settings September 4, 2026 16:22
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Claude finished @MartinZikmund's task in 1m 59s —— View job


Review: FrameworkElement.GetBindingExpression (re-review after tvOS test-disable commit)

Todo list:

  • Gather context (diff vs 9c4f769b merge-base, AGENTS.md rules)
  • Identify what's new since the last review pass (commit 0c0b4adc)
  • Review Given_PasswordBox.cs platform-condition change (convention, bit-flag correctness, issue reference)
  • Re-check core implementation files (FrameworkElement.mux.cs, DependencyObject.Binder.cs, Setter.cs) for drift since last pass
  • Re-check Given_XamlReader.cs:150 null-deref flagged by the code-quality bot
  • Post inline findings (if any)
  • Post summary

Verdict: Ship

0 new issues. The only change since the previous review pass is commit 0c0b4adc, which is unrelated to the GetBindingExpression feature: it excludes SkiaTvOS from Given_PasswordBox.When_PasswordChar_Visual_Comparison via RuntimeTestPlatforms.Skia & ~RuntimeTestPlatforms.SkiaTvOS, referencing tracked issue #9080. This exact Skia & ~RuntimeTestPlatforms.SkiaX pattern is already established elsewhere (Given_PasswordBox.cs:171, Given_ListViewBase.cs:5520), and disabling a single flaky platform variant of an unrelated pre-existing test via a follow-up commit matches this repo's established practice (recent history has several test: Disable X on Skia Y commits for the same reason). No correctness issue with the bitwise flag usage.

The core implementation (FrameworkElement.mux.cs, DependencyObject.Binder.cs, Setter.cs) is unchanged since commit 2911dec3, which the prior review pass already covered in depth (the GetBindingExpressionInternal rename, nullable-oblivious public signature, and all call-site updates).

On the code-quality bot's Given_XamlReader.cs:150 null-dereference flag: verified this is not a regression introduced by this PR — the same Assert.IsNotNull(photoTemplateImage) followed by an unguarded photoTemplateImage.Source.... dereference existed identically before this branch (pre-PR blob at the merge-base shows the identical pattern, just calling the old GetBindingExpression name). The rename to GetBindingExpressionInternal only shifted which line the analyzer's null-tracking re-flagged; it didn't change the risk. Consistent with the file's existing Assert.IsNotNull + direct-dereference idiom used throughout (lines 131–144). Not blocking, and out of scope for this PR to fix.

Cross-cutting, still non-blocking (carried over from the prior review pass, unchanged): src/Uno.WinAppSDKSyncGenerator/Generator.cs:1575-1576's comment "located in DependencyObject but will need to be moved up" is now stale for GetBindingExpression, since this PR is that move. Still outside this PR's diff — worth a follow-up wording tweak, not a blocker here.
· Branch: dev/mazi/fe-getbindingexpression

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.

🟢 Approval recommended

The API addition is minimal and consistent with the existing binding implementation, and it is covered by targeted runtime tests for both surface and behavior.

Review details
  • Files reviewed: 6/6 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

@unodevops

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-24375/wasm-skia-net9/index.html

@nventive-devops

Copy link
Copy Markdown
Contributor

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

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

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

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AppBarButtonTest.png
    • AndroidWindowInsets.png
    • AnimatedIconPage.png-dark
    • Accessibility_ScreenReader.png-dark
    • AppBar_KeyBoard.png-dark
    • AppBarToggleButtonTest.png-dark
    • AppBarButtonWithIconTest.png
    • ApplicationViewSpanningRectsPage.png
    • AppBar_KeyBoard.png
    • ApplicationViewSizing.png
    • ApplicationViewSpanningRectsPage.png-dark
    • AppWindowTitleBar Properties.png
    • ApplicationViewMode.png
    • AppWindowPositionAndSize.png
    • AppWindowTitleBar Properties.png-dark
    • Attributed_text_Simple.png
    • ApplicationViewSizing.png-dark
    • Arrange_Performance01.png-dark
    • ArcSegment.png
    • AutoBorderStretchwithleftmargin.png-dark
  • wasm: 11 changed over 1076

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

@unodevops

Copy link
Copy Markdown
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/automation Categorizes an issue or PR as relevant to project automation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FrameworkElement.GetBindingExpression is missing in 7.0 (WinUI parity)

5 participants