unoplatform / uno

Open-source platform for building cross-platform native Mobile, Web, Desktop and Embedded apps quickly. Create rich, C#/XAML, single-codebase apps from any IDE. Hot Reload included! 90m+ NuGet Downloads!!
https://platform.uno
Apache License 2.0
8.89k stars 720 forks source link

Add support for features required by `OxyPlot` #7616

Open HavenDV opened 2 years ago

HavenDV commented 2 years ago

What would you like to be added:

OxyPlot specific methods:

warning Uno0001: Windows.UI.Xaml.UIElement.CompositeMode is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Media.ElementCompositeMode.SourceOver is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Media.EllipseGeometry is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Media.EllipseGeometry.Center is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Media.EllipseGeometry.RadiusX is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Media.EllipseGeometry.RadiusY is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Controls.Control.OnPointerWheelChanged(Windows.UI.Xaml.Input.PointerRoutedEventArgs) is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Shapes.Shape.StrokeLineJoin is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Media.PenLineJoin.Round is not implemented in Uno
warning Uno0001: Windows.UI.Xaml.Media.PenLineJoin.Bevel is not implemented in Uno

Why is this needed:

To support OxyPlot

For which Platform:

Anything else we need to know?

A library and apps for testing progress are also available here: https://github.com/HavenDV/H.OxyPlot

jeromelaban commented 2 years ago

It would be best to use the SkiaSharp version of the OxyPlot source, in this case.

GeraudFabien commented 2 years ago

It may be related to https://github.com/oxyplot/oxyplot/issues/1829 since you only ask for WebAssembly

robloo commented 2 years ago

It would be best to use the SkiaSharp version of the OxyPlot source, in this case.

Uno has a lot of issues rendering XAML. Using OxyPlot XAML rendering would be a good test case for the Uno Team. That said, I also moved on to SkiaSharp due to the performance improvements and much better stability.

HavenDV commented 2 years ago

I've added partial OxyPlot support for Uno WebAssembly. There's a simple test application there: https://havendv.github.io/H.OxyPlot/