unoplatform / Uno.Themes

This library is designed to help you use the Material, Fluent or Cupertino design system with the Uno Platform
https://platform.uno
Apache License 2.0
167 stars 28 forks source link

[Gallery][All Platform]progress Ring/Bar- The ProgressRing is missing for 'ProgressRing' section #1365

Closed sakshi173 closed 1 month ago

sakshi173 commented 2 months ago

Current behavior

Progressring issue

Expected behavior

ProgressRing should be present.

How to reproduce it (as minimally and precisely as possible)

  1. Open Uno Gallery APP
  2. Click Burger Menu on the left top right.
  3. Click "Progress Ring/Bar" from the "Component" list.
  4. Observe that the Progress Ring is missing for 'ProgressRing' section.

Workaround

No response

Works on UWP/WinUI

None

Environment

No response

NuGet package version(s)

No response

Affected platforms

WebAssembly, Android, iOS

IDE

No response

IDE version

No response

Relevant plugins

No response

Anything else we need to know?

No response

jeromelaban commented 1 month ago

@Youssef1313 could you take a look? This is likely a regression.

Youssef1313 commented 1 month ago

@jeromelaban This is a breaking change from Uno.Themes

https://github.com/unoplatform/Uno.Themes/blob/db37dce41bcb0b663461cddd18ee645b790044b9/doc/material-migration.md?plain=1#L396-L403

Those keys are removed. The crash is:

fail: CommunityToolkit.WinUI.Lottie.LottieVisualSourceBase[0]
      Failed to update lottie player for [embedded://uno.material/Uno.Material.Assets.MaterialDeterminate.json]
      System.IO.FileNotFoundException: Could not load file or assembly 'uno.material, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
      File name: 'uno.material, Culture=neutral, PublicKeyToken=null'
         at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
         at System.Reflection.Assembly.Load(String assemblyString)
         at CommunityToolkit.WinUI.Lottie.LottieVisualSourceBase.TryLoadEmbeddedJson(Uri uri, CancellationToken ct) in /__w/1/s/src/AddIns/Uno.UI.Lottie/LottieVisualSourceBase.cs:line 286
         at CommunityToolkit.WinUI.Lottie.LottieVisualSourceBase.TryLoadDownloadJson(Uri uri, CancellationToken ct) in /__w/1/s/src/AddIns/Uno.UI.Lottie/LottieVisualSourceBase.cs:line 253
         at CommunityToolkit.WinUI.Lottie.LottieVisualSourceBase.<>c__DisplayClass13_0.<<InnerUpdate>g__SetProperties|0>d.MoveNext() in /__w/1/s/src/AddIns/Uno.UI.Lottie/LottieVisualSource.Skottie.cs:line 93

The deleted key is still referenced by https://github.com/unoplatform/Uno.Themes/blob/db37dce41bcb0b663461cddd18ee645b790044b9/src/library/Uno.Material/Styles/Controls/v2/ProgressRing.xaml#L14-L17

jeromelaban commented 1 month ago

/cc @kazo0

kazo0 commented 1 month ago

Ah, this is an unintended result of the split of the csproj in Material. We now have an Uno.Material.WinUI.csproj and an Uno.Material.csproj. So now for WinUI apps the embedded path should be embedded://Uno.Material/Uno.Material.WinUI.Assets.MaterialDeterminate.json instead of embedded://Uno.Material/Uno.Material.Assets.MaterialDeterminate.json

Trying to think of a better solution for this :/

cc: @Youssef1313 / @jeromelaban