Open ajpinedam opened 2 hours ago
cc: @Youssef1313 I saw this issue while debugging a fix on PR https://github.com/unoplatform/uno/pull/18492
That's quite strange. The implementation is currently:
if (details?.GetBaseValueSource() == DependencyPropertyValuePrecedences.Local)
While debugging the code entered here
if (details?.GetBaseValueSource() == DependencyPropertyValuePrecedences.Local)
{
return details.GetBaseValue();
}
and
return details.GetBaseValue();
is returning null instead of UnsetValue
cc: @Youssef1313
That should mean that a local value of null was set. Are you able to track the SetValue calls?
This is for the SelectedItem
on the TabView
(TabView.Properties
file). I set a breakpoint inside the Set
, which is never hit before hitting this method call.
We can get some time tomorrow and do a quick sync whenever you're available to look into it
cc: @Youssef1313
Current behavior
There are a few places in the Uno code where we use
ReadLocalValue
to validate whether aDependencyProperty
has been set, returningUnsetValue
. I have seen situations where we are returning null for DPs that still need to be set, and this behavior change is causing some issues.Expected behavior
No response
How to reproduce it (as minimally and precisely as possible)
No response
Workaround
N/A
Works on UWP/WinUI
None
Environment
Uno.WinUI / Uno.WinUI.WebAssembly / Uno.WinUI.Skia
NuGet package version(s)
5.6.0-dev.149
Affected platforms
WebAssembly, Android, iOS, Mac Catalyst, Skia (WPF), Skia (Linux X11), Skia (macOS), Skia (Linux Framebuffer), Skia (GTK)
IDE
Visual Studio 2022, Visual Studio Code
IDE version
No response
Relevant plugins
No response
Anything else we need to know?
No response