diff --git a/VERSIONS.txt b/VERSIONS.txt index 943f869a80..aa7af56286 100644 --- a/VERSIONS.txt +++ b/VERSIONS.txt @@ -22,9 +22,9 @@ System.IO.UnmanagedMemoryStream release 4.3.0 System.Drawing.Common release 4.5.1 SharpVk release 0.4.2 Uno.UI release 3.7.6 -Microsoft.ProjectReunion release 0.8.0 -Microsoft.ProjectReunion.Foundation release 0.8.0 -Microsoft.ProjectReunion.WinUI release 0.8.0 +Microsoft.ProjectReunion release 0.8.1 +Microsoft.ProjectReunion.Foundation release 0.8.1 +Microsoft.ProjectReunion.WinUI release 0.8.1 Microsoft.Maui.Graphics release 6.0.100-preview.5.246 Microsoft.Windows.SDK.NET.Ref release 10.0.18362.15 diff --git a/cake/UtilsManaged.cake b/cake/UtilsManaged.cake index 7093338413..b663b3ad56 100644 --- a/cake/UtilsManaged.cake +++ b/cake/UtilsManaged.cake @@ -137,7 +137,7 @@ IEnumerable<(DirectoryPath path, string platform)> GetPlatformDirectories(Direct // try find any cross-platform frameworks foreach (var dir in platformDirs) { var d = dir.GetDirectoryName().ToLower(); - if (d.StartsWith("netstandard") || d.StartsWith("portable")) { + if (d.StartsWith("netstandard") || d.StartsWith("portable") || d.Equals("net6.0")) { // we just want this single platform yield return (dir, null); yield break; @@ -306,6 +306,11 @@ async Task DownloadPackageAsync(string id, DirectoryPath outputDirectory) Information($"Downloading '{currentId}' version '{currentVersion}'..."); + if (currentId == "_nativeassets.maccatalyst") { + Warning($"Skipping '{currentId}' because we do not yet have this package working..."); + return; + } + var root = await comparer.ExtractCachedPackageAsync(currentId, currentVersion); var toolsDir = $"{root}/tools/"; if (DirectoryExists(toolsDir)) { diff --git a/nuget/SkiaSharp.Views.Maui.Controls.Compatibility.nuspec b/nuget/SkiaSharp.Views.Maui.Controls.Compatibility.nuspec index a37892e242..df0701e153 100644 --- a/nuget/SkiaSharp.Views.Maui.Controls.Compatibility.nuspec +++ b/nuget/SkiaSharp.Views.Maui.Controls.Compatibility.nuspec @@ -27,6 +27,9 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release © Microsoft Corporation. All rights reserved. + + + @@ -45,6 +48,7 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release + diff --git a/nuget/SkiaSharp.Views.Maui.Controls.nuspec b/nuget/SkiaSharp.Views.Maui.Controls.nuspec index 3ccd5e0297..92e181f4c4 100644 --- a/nuget/SkiaSharp.Views.Maui.Controls.nuspec +++ b/nuget/SkiaSharp.Views.Maui.Controls.nuspec @@ -27,12 +27,9 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release © Microsoft Corporation. All rights reserved. - @@ -51,8 +48,7 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release - - + diff --git a/nuget/SkiaSharp.Views.Maui.Core.nuspec b/nuget/SkiaSharp.Views.Maui.Core.nuspec index b1bc92ce72..4369369b1d 100644 --- a/nuget/SkiaSharp.Views.Maui.Core.nuspec +++ b/nuget/SkiaSharp.Views.Maui.Core.nuspec @@ -27,12 +27,9 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release © Microsoft Corporation. All rights reserved. - @@ -55,8 +52,7 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release - - + diff --git a/samples/Basic/Maui/SkiaSharpSample.WinUI/SkiaSharpSample.WinUI.csproj b/samples/Basic/Maui/SkiaSharpSample.WinUI/SkiaSharpSample.WinUI.csproj index 8e8192374d..b49d768389 100644 --- a/samples/Basic/Maui/SkiaSharpSample.WinUI/SkiaSharpSample.WinUI.csproj +++ b/samples/Basic/Maui/SkiaSharpSample.WinUI/SkiaSharpSample.WinUI.csproj @@ -8,6 +8,7 @@ SkiaSharpSample true win-x64 + 9.0 true @@ -31,9 +32,9 @@ - - - + + + diff --git a/samples/Basic/Maui/SkiaSharpSample/SkiaSharpSample.csproj b/samples/Basic/Maui/SkiaSharpSample/SkiaSharpSample.csproj index 5e6e1ccd6a..ccced9a141 100644 --- a/samples/Basic/Maui/SkiaSharpSample/SkiaSharpSample.csproj +++ b/samples/Basic/Maui/SkiaSharpSample/SkiaSharpSample.csproj @@ -10,6 +10,7 @@ 1.0 1 true + 9.0 diff --git a/samples/Basic/WinUI/Desktop/SkiaSharpSample.Package/SkiaSharpSample.Package.wapproj b/samples/Basic/WinUI/Desktop/SkiaSharpSample.Package/SkiaSharpSample.Package.wapproj index dc6cb28229..93fa3e3315 100644 --- a/samples/Basic/WinUI/Desktop/SkiaSharpSample.Package/SkiaSharpSample.Package.wapproj +++ b/samples/Basic/WinUI/Desktop/SkiaSharpSample.Package/SkiaSharpSample.Package.wapproj @@ -64,10 +64,10 @@ - + build - + build diff --git a/samples/Basic/WinUI/Desktop/SkiaSharpSample/SkiaSharpSample.csproj b/samples/Basic/WinUI/Desktop/SkiaSharpSample/SkiaSharpSample.csproj index 83d3af861c..d5fb0e531c 100644 --- a/samples/Basic/WinUI/Desktop/SkiaSharpSample/SkiaSharpSample.csproj +++ b/samples/Basic/WinUI/Desktop/SkiaSharpSample/SkiaSharpSample.csproj @@ -11,9 +11,9 @@ - - - + + + diff --git a/samples/Directory.Build.props b/samples/Directory.Build.props index de297e327e..11601da4e0 100644 --- a/samples/Directory.Build.props +++ b/samples/Directory.Build.props @@ -9,4 +9,14 @@ false + + + true + + + + + + + \ No newline at end of file diff --git a/scripts/azure-pipelines.yml b/scripts/azure-pipelines.yml index 9be2ee9f84..f6c69e6835 100644 --- a/scripts/azure-pipelines.yml +++ b/scripts/azure-pipelines.yml @@ -25,7 +25,7 @@ variables: XCODE_VERSION: 12.4 DOTNET_VERSION_PREVIOUS: 3.1.410 DOTNET_VERSION: 5.0.301 - DOTNET_VERSION_PREVIEW: 6.0.100-preview.7.21369.5 + DOTNET_VERSION_PREVIEW: 6.0.100-preview.7.21377.3 VS_VERSION_PREVIEW: 16/pre CONFIGURATION: 'Release' VM_IMAGE_WINDOWS: windows-2019 diff --git a/scripts/install-maui.ps1 b/scripts/install-maui.ps1 index 3e7523c8ad..73ef6fceab 100644 --- a/scripts/install-maui.ps1 +++ b/scripts/install-maui.ps1 @@ -1,6 +1,5 @@ Param( - [string] $InstallDir, - [string] $Manifest + [string] $InstallDir ) $ErrorActionPreference = 'Stop' @@ -12,7 +11,7 @@ Write-Host "Installing maui-check..." Write-Host "Installing Maui..." & maui-check ` - --preview ` + --main ` --verbose --ci --fix --non-interactive ` --skip androidsdk ` --skip xcode ` diff --git a/source/SkiaSharp.Build.props b/source/SkiaSharp.Build.props index b6624a146b..84df9a5674 100644 --- a/source/SkiaSharp.Build.props +++ b/source/SkiaSharp.Build.props @@ -34,10 +34,24 @@ $(DefineConstants);THROW_OBJECT_EXCEPTIONS + + $(DefineConstants);NETSTANDARD + + true + + + true + + + + + + + true diff --git a/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKCanvasViewRendererBase.cs b/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKCanvasViewRendererBase.cs index fee4b023a8..e4f9935e5f 100644 --- a/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKCanvasViewRendererBase.cs +++ b/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKCanvasViewRendererBase.cs @@ -1,4 +1,5 @@ -using System; +#if !NETSTANDARD +using System; using System.ComponentModel; #if __MAUI__ @@ -298,3 +299,4 @@ private void OnGetCanvasSize(object sender, GetPropertyValueEventArgs e) } } } +#endif diff --git a/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKGLViewRendererBase.cs b/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKGLViewRendererBase.cs index 2a08f6fd11..656280e9a9 100644 --- a/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKGLViewRendererBase.cs +++ b/source/SkiaSharp.Views.Forms/SkiaSharp.Views.Forms.Native.Shared/SKGLViewRendererBase.cs @@ -1,4 +1,4 @@ -#if !__GTK__ && !WINDOWS +#if !__GTK__ && !WINDOWS && !NETSTANDARD using System; using System.ComponentModel; diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/AppHostBuilderExtensions.cs b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/AppHostBuilderExtensions.cs index dbac6dcf89..f824885adb 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/AppHostBuilderExtensions.cs +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/AppHostBuilderExtensions.cs @@ -10,6 +10,7 @@ public static IAppHostBuilder UseSkiaSharpCompatibilityRenderers(this IAppHostBu builder .ConfigureMauiHandlers(handlers => { +#if !NETSTANDARD handlers.AddCompatibilityRenderer(typeof(SKCanvasView), typeof(SKCanvasViewRenderer)); #if !WINDOWS handlers.AddCompatibilityRenderer(typeof(SKGLView), typeof(SKGLViewRenderer)); @@ -19,6 +20,7 @@ public static IAppHostBuilder UseSkiaSharpCompatibilityRenderers(this IAppHostBu CompatRegistrar.Registered.Register(typeof(SKBitmapImageSource), typeof(SKImageSourceHandler)); CompatRegistrar.Registered.Register(typeof(SKPixmapImageSource), typeof(SKImageSourceHandler)); CompatRegistrar.Registered.Register(typeof(SKPictureImageSource), typeof(SKImageSourceHandler)); +#endif }); } } diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/SkiaSharp.Views.Maui.Controls.Compatibility.csproj b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/SkiaSharp.Views.Maui.Controls.Compatibility.csproj index bd1ea07699..f001d21853 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/SkiaSharp.Views.Maui.Controls.Compatibility.csproj +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls.Compatibility/SkiaSharp.Views.Maui.Controls.Compatibility.csproj @@ -1,6 +1,6 @@  - net6.0-ios;net6.0-maccatalyst;net6.0-android + net6.0;net6.0-ios;net6.0-maccatalyst;net6.0-android $(TargetFrameworks);net6.0-windows10.0.19041 10.0.17763.0 SkiaSharp.Views.Maui.Controls.Compatibility diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls/SkiaSharp.Views.Maui.Controls.csproj b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls/SkiaSharp.Views.Maui.Controls.csproj index 48817bacb4..f76293c6de 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls/SkiaSharp.Views.Maui.Controls.csproj +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Controls/SkiaSharp.Views.Maui.Controls.csproj @@ -1,6 +1,6 @@  - net6.0-ios;net6.0-maccatalyst;net6.0-android + net6.0;net6.0-ios;net6.0-maccatalyst;net6.0-android $(TargetFrameworks);net6.0-windows10.0.19041 10.0.17763.0 SkiaSharp.Views.Maui.Controls diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Android.cs b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Android.cs index ab19b9f18a..f1433a9422 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Android.cs +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Android.cs @@ -31,7 +31,7 @@ protected override void DisconnectHandler(SKCanvasView nativeView) // Mapper actions / properties - public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView) + public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView, object? args) { handler.NativeView?.Invalidate(); } diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Ref.cs b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Ref.cs index 5e099ed826..fecf162900 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Ref.cs +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Ref.cs @@ -11,6 +11,6 @@ public static void MapIgnorePixelScaling(SKCanvasViewHandler handler, ISKCanvasV public static void MapEnableTouchEvents(SKCanvasViewHandler handler, ISKCanvasView canvasView) { } - public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView) { } + public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView, object? args) { } } } diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Windows.cs b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Windows.cs index 2eed7b3c51..2acee105f7 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Windows.cs +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.Windows.cs @@ -30,7 +30,7 @@ protected override void DisconnectHandler(SKXamlCanvas nativeView) // Mapper actions / properties - public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView) + public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView, object? args) { handler.NativeView?.Invalidate(); } diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.cs b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.cs index 410b2551e9..dd9deea98e 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.cs +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.cs @@ -10,20 +10,21 @@ public partial class SKCanvasViewHandler { [nameof(ISKCanvasView.EnableTouchEvents)] = MapEnableTouchEvents, [nameof(ISKCanvasView.IgnorePixelScaling)] = MapIgnorePixelScaling, + }; - Actions = - { - [nameof(ISKCanvasView.InvalidateSurface)] = OnInvalidateSurface, - } + public static CommandMapper SKCanvasViewCommandMapper = + new CommandMapper() + { + [nameof(ISKCanvasView.InvalidateSurface)] = OnInvalidateSurface, }; public SKCanvasViewHandler() - : base(SKCanvasViewMapper) + : base(SKCanvasViewMapper, SKCanvasViewCommandMapper) { } - public SKCanvasViewHandler(PropertyMapper? mapper) - : base(mapper ?? SKCanvasViewMapper) + public SKCanvasViewHandler(PropertyMapper? mapper, CommandMapper? commands) + : base(mapper ?? SKCanvasViewMapper, commands ?? SKCanvasViewCommandMapper) { } } diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.iOS.cs b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.iOS.cs index 0806300bff..fd777a88e1 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.iOS.cs +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Handlers/SKCanvasView/SKCanvasViewHandler.iOS.cs @@ -31,7 +31,7 @@ protected override void DisconnectHandler(SKCanvasView nativeView) // Mapper actions / properties - public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView) + public static void OnInvalidateSurface(SKCanvasViewHandler handler, ISKCanvasView canvasView, object? args) { handler.NativeView?.SetNeedsDisplay(); } diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/SkiaSharp.Views.Maui.Core.csproj b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/SkiaSharp.Views.Maui.Core.csproj index de8fdde160..78f083e315 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/SkiaSharp.Views.Maui.Core.csproj +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/SkiaSharp.Views.Maui.Core.csproj @@ -1,6 +1,6 @@  - net6.0-ios;net6.0-maccatalyst;net6.0-android + net6.0;net6.0-ios;net6.0-maccatalyst;net6.0-android $(TargetFrameworks);net6.0-windows10.0.19041 10.0.17763.0 SkiaSharp.Views.Maui.Core diff --git a/source/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI.csproj b/source/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI.csproj index 8d0e3e317f..d7ed9fb321 100644 --- a/source/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI.csproj +++ b/source/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI/SkiaSharp.Views.WinUI.csproj @@ -7,7 +7,7 @@ SkiaSharp.Views.WinUI - +