Merge remote-tracking branch 'origin/main' into develop

This commit is contained in:
Matthew Leibowitz 2021-06-12 12:52:54 +02:00
Родитель 3342c4d7d7 80860aacf3
Коммит fe7f7a861e
59 изменённых файлов: 1148 добавлений и 55 удалений

Просмотреть файл

@ -1,5 +1,5 @@
# dependencies
mdoc release 5.8.2
mdoc release 5.8.3
harfbuzz release 2.6.1
skia release m88
xunit release 2.4.1
@ -21,7 +21,7 @@ System.Memory release 4.5.3
System.IO.UnmanagedMemoryStream release 4.3.0
System.Drawing.Common release 4.5.1
SharpVk release 0.4.2
Uno.UI release 3.7.4
Uno.UI release 3.7.6
Microsoft.ProjectReunion release 0.5.0
Microsoft.ProjectReunion.Foundation release 0.5.0
Microsoft.ProjectReunion.WinUI release 0.5.0

Просмотреть файл

@ -6,7 +6,7 @@
#addin nuget:?package=Mono.ApiTools.NuGetDiff&version=1.3.2&loaddependencies=true
#addin nuget:?package=Xamarin.Nuget.Validator&version=1.1.1
#tool nuget:?package=mdoc&version=5.8.2
#tool nuget:?package=mdoc&version=5.8.3
#tool nuget:?package=xunit.runner.console&version=2.4.1
#tool nuget:?package=vswhere&version=2.7.1
@ -50,7 +50,7 @@ DirectoryPath DOCS_PATH = MakeAbsolute(ROOT_PATH.Combine("docs/SkiaSharpAPI"));
var PREVIEW_LABEL = Argument ("previewLabel", EnvironmentVariable ("PREVIEW_LABEL") ?? "preview");
var FEATURE_NAME = EnvironmentVariable ("FEATURE_NAME") ?? "";
var BUILD_NUMBER = EnvironmentVariable ("BUILD_NUMBER") ?? "0";
var BUILD_NUMBER = Argument ("buildNumber", EnvironmentVariable ("BUILD_NUMBER") ?? "0");
var GIT_SHA = Argument ("gitSha", EnvironmentVariable ("GIT_SHA") ?? "");
var GIT_BRANCH_NAME = Argument ("gitBranch", EnvironmentVariable ("GIT_BRANCH_NAME") ?? "");

Просмотреть файл

@ -299,6 +299,16 @@ Task ("docs-format-docs")
}
}
// remove any assembly attributes for now: https://github.com/mono/api-doc-tools/issues/560
if (xdoc.Root.Name == "Overview") {
xdoc.Root
.Elements ("Assemblies")
.Elements ("Assembly")
.Elements ("Attributes")
.Elements ("Attribute")
.Remove ();
}
// remove any duplicate AssemblyVersions
if (xdoc.Root.Name == "Type") {
foreach (var info in xdoc.Root.Descendants ("AssemblyInfo")) {

2
docs

@ -1 +1 @@
Subproject commit 344d2be82b193e435bcf140b6e9771998ae7552f
Subproject commit 4eaaabdfba22d042856d59c8ce4f3eabe87a972c

Просмотреть файл

@ -11,6 +11,12 @@ bool SUPPORT_VULKAN = SUPPORT_VULKAN_VAR == "1" || SUPPORT_VULKAN_VAR.ToLower ()
string VARIANT = BUILD_VARIANT ?? "windows";
Information("Native Arguments:");
Information($" {"LLVM_HOME".PadRight(30)} {{0}}", LLVM_HOME);
Information($" {"SUPPORT_VULKAN".PadRight(30)} {{0}}", SUPPORT_VULKAN);
Information($" {"VARIANT".PadRight(30)} {{0}}", VARIANT);
Information($" {"CONFIGURATION".PadRight(30)} {{0}}", CONFIGURATION);
Task("libSkiaSharp")
.IsDependentOn("git-sync-deps")
.WithCriteria(IsRunningOnWindows())

Просмотреть файл

@ -28,24 +28,24 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release
<dependencies>
<group targetFramework="netstandard2.0">
<dependency id="Uno.UI" version="3.7.4" />
<dependency id="Uno.UI" version="3.7.6" />
<dependency id="SkiaSharp" version="1.0.0" />
<dependency id="SkiaSharp.NativeAssets.WebAssembly" version="1.0.0" />
</group>
<group targetFramework="monoandroid1.0">
<dependency id="Uno.UI" version="3.7.4" />
<dependency id="Uno.UI" version="3.7.6" />
<dependency id="SkiaSharp" version="1.0.0" />
</group>
<group targetFramework="xamarinios1.0">
<dependency id="Uno.UI" version="3.7.4" />
<dependency id="Uno.UI" version="3.7.6" />
<dependency id="SkiaSharp" version="1.0.0" />
</group>
<group targetFramework="xamarinmac2.0">
<dependency id="Uno.UI" version="3.7.4" />
<dependency id="Uno.UI" version="3.7.6" />
<dependency id="SkiaSharp" version="1.0.0" />
</group>
<group targetFramework="uap10.0">
<dependency id="Uno.UI" version="3.7.4" />
<dependency id="Uno.UI" version="3.7.6" />
<dependency id="SkiaSharp" version="1.0.0" />
<dependency id="SkiaSharp.Views" version="1.0.0" />
</group>
@ -59,6 +59,8 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release
<file src="lib/netstandard2.0/SkiaSharp.Views.UWP.xml" />
<file src="uno-runtime/webassembly/SkiaSharp.Views.UWP.dll" />
<file src="uno-runtime/webassembly/SkiaSharp.Views.UWP.xml" />
<file src="uno-runtime/skia/SkiaSharp.Views.UWP.dll" />
<file src="uno-runtime/skia/SkiaSharp.Views.UWP.xml" />
<file platform="macos,windows" src="lib/monoandroid1.0/SkiaSharp.Views.UWP.dll" />
<file platform="macos,windows" src="lib/monoandroid1.0/SkiaSharp.Views.UWP.xml" />
<file platform="macos" src="lib/xamarinios1.0/SkiaSharp.Views.UWP.dll" />

Просмотреть файл

@ -27,9 +27,6 @@ Please visit https://go.microsoft.com/fwlink/?linkid=868517 to view the release
<copyright>© Microsoft Corporation. All rights reserved.</copyright>
<dependencies>
<group>
<dependency id="SkiaSharp" version="1.0.0" />
</group>
<group targetFramework="net462">
<dependency id="SkiaSharp" version="1.0.0" />
<dependency id="SkiaSharp.Views.Desktop.Common" version="1.0.0" />

Просмотреть файл

@ -56,8 +56,8 @@
<Reference Include="Mono.Android.Export" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UniversalImageLoader" Version="1.9.33" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />

Просмотреть файл

@ -22,8 +22,8 @@
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
<PackageReference Include="Uno.UI.WebAssembly" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI.WebAssembly" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.Wasm.Bootstrap" Version="2.1.0" />
<PackageReference Include="Uno.Wasm.Bootstrap.DevServer" Version="2.1.0" />
</ItemGroup>

Просмотреть файл

@ -95,8 +95,8 @@
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
</ItemGroup>

Просмотреть файл

@ -41,8 +41,8 @@
<Reference Include="System.Memory" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
</ItemGroup>

Просмотреть файл

@ -2,7 +2,7 @@
using System.IO;
using System.Linq;
using Xamarin.Essentials;
#if __WASM__
#if __WASM__ || HAS_UNO_SKIA
using System.Runtime.InteropServices;
using Windows.ApplicationModel;
using Windows.Storage;
@ -47,7 +47,7 @@ namespace SkiaSharpSample
{
var fontName = "content-font.ttf";
#if WINDOWS_UWP
#if WINDOWS_UWP || HAS_UNO_SKIA
var pkg = Package.Current.InstalledLocation.Path;
var path = Path.Combine(pkg, "Assets", "Media", fontName);
#elif __IOS__ || __TVOS__ || __MACOS__
@ -86,7 +86,7 @@ namespace SkiaSharpSample
var localStorage = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments);
#elif __DESKTOP__
var localStorage = System.Windows.Forms.Application.LocalUserAppDataPath;
#elif __WASM__
#elif __WASM__ || HAS_UNO_SKIA
var localStorage = ApplicationData.Current.LocalFolder.Path;
#endif

Просмотреть файл

@ -57,8 +57,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Xamarin.Essentials" Version="1.5.1" />
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UniversalImageLoader" Version="1.9.33" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />

Двоичный файл не отображается.

Просмотреть файл

@ -0,0 +1,24 @@
using System;
using GLib;
using Uno.UI.Runtime.Skia;
namespace SkiaSharpSample.Gtk
{
class Program
{
static void Main(string[] args)
{
SkiaSharp.Views.UWP.SKSwapChainPanel.RaiseOnUnsupported = false;
ExceptionManager.UnhandledException += delegate (UnhandledExceptionArgs expArgs)
{
Console.WriteLine("GLIB UNHANDLED EXCEPTION" + expArgs.ExceptionObject.ToString());
expArgs.ExitApplication = true;
};
var host = new GtkHost(() => new App(), args);
host.Run();
}
}
}

Просмотреть файл

@ -0,0 +1,39 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType Condition="'$(Configuration)'=='Release'">WinExe</OutputType>
<OutputType Condition="'$(Configuration)'=='Debug'">Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
<ItemGroup Condition="exists('..\SkiaSharpSample.UWP')">
<EmbeddedResource Include="..\SkiaSharpSample.UWP\Package.appxmanifest" LogicalName="Package.appxmanifest" />
<Content Include="..\SkiaSharpSample.UWP\Assets\StoreLogo.scale-400.png" Link="Assets\StoreLogo.png" />
<Content Include="Assets\Fonts\uno-fluentui-assets.ttf" />
</ItemGroup>
<ItemGroup>
<UpToDateCheckInput Include="..\SkiaSharpSample.Shared\**\*.xaml" />
</ItemGroup>
<ItemGroup>
<!-- Note that for WebAssembly version 1.1.1 of the console logger required -->
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
<PackageReference Include="Uno.UI.Skia.Gtk" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
</ItemGroup>
<Import Project="..\SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems" Label="Shared" />
<ItemGroup>
<ProjectReference Include="..\..\..\..\binding\SkiaSharp\SkiaSharp.csproj" />
<ProjectReference Include="..\..\..\..\binding\HarfBuzzSharp\HarfBuzzSharp.csproj" />
<ProjectReference Include="..\..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj" />
<ProjectReference Include="..\..\..\..\source\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz.csproj" />
</ItemGroup>
<ItemGroup>
<Content Include="..\..\..\..\output\native\windows\x64\*.dll" Visible="False" />
<Content Include="..\..\..\..\output\native\linux\x64\*.so" Visible="False" />
<Content Include="..\..\..\..\output\native\osx\*.dylib" Visible="False" />
<Content Include="..\..\Shared\Media\content-font.ttf">
<Link>Assets\Media\content-font.ttf</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<Import Project="..\..\..\..\output\SkiaSharp.Views.Uno\nuget\build\netstandard2.0\SkiaSharp.Views.Uno.targets" Condition="Exists('..\..\..\..\output\SkiaSharp.Views.Uno\nuget\build\netstandard2.0\SkiaSharp.Views.Uno.targets')" />
</Project>

Просмотреть файл

@ -11,6 +11,12 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp", "..\..\..\binding\SkiaSharp\SkiaSharp.csproj", "{409AF271-D8B7-4F79-B293-02F562A51955}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{E9507AEE-7C7C-4495-9698-D95DEBAA2AD0}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.HarfBuzz", "..\..\..\source\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz.csproj", "{D0580308-2C5A-4B6D-8884-25CA3A5AD304}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp", "..\..\..\binding\HarfBuzzSharp\HarfBuzzSharp.csproj", "{42F0E7DE-941E-4348-ACDE-7DCF61D05E6B}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{6279c845-92f8-4333-ab99-3d213163593c}*SharedItemsImports = 13
@ -33,6 +39,18 @@ Global
{409AF271-D8B7-4F79-B293-02F562A51955}.Debug|Any CPU.Build.0 = Debug|Any CPU
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|Any CPU.ActiveCfg = Release|Any CPU
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|Any CPU.Build.0 = Release|Any CPU
{E9507AEE-7C7C-4495-9698-D95DEBAA2AD0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E9507AEE-7C7C-4495-9698-D95DEBAA2AD0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E9507AEE-7C7C-4495-9698-D95DEBAA2AD0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E9507AEE-7C7C-4495-9698-D95DEBAA2AD0}.Release|Any CPU.Build.0 = Release|Any CPU
{D0580308-2C5A-4B6D-8884-25CA3A5AD304}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D0580308-2C5A-4B6D-8884-25CA3A5AD304}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D0580308-2C5A-4B6D-8884-25CA3A5AD304}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D0580308-2C5A-4B6D-8884-25CA3A5AD304}.Release|Any CPU.Build.0 = Release|Any CPU
{42F0E7DE-941E-4348-ACDE-7DCF61D05E6B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{42F0E7DE-941E-4348-ACDE-7DCF61D05E6B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{42F0E7DE-941E-4348-ACDE-7DCF61D05E6B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{42F0E7DE-941E-4348-ACDE-7DCF61D05E6B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -25,6 +25,18 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.OSX", "..\..\..\b
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp", "..\..\..\binding\SkiaSharp\SkiaSharp.csproj", "{409AF271-D8B7-4F79-B293-02F562A51955}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp.Android", "..\..\..\binding\HarfBuzzSharp.Android\HarfBuzzSharp.Android.csproj", "{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp", "..\..\..\binding\HarfBuzzSharp\HarfBuzzSharp.csproj", "{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp.iOS", "..\..\..\binding\HarfBuzzSharp.iOS\HarfBuzzSharp.iOS.csproj", "{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp.OSX", "..\..\..\binding\HarfBuzzSharp.OSX\HarfBuzzSharp.OSX.csproj", "{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.HarfBuzz", "..\..\..\source\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz.csproj", "{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{2a19c71c-d1ab-4c70-b821-6a7c7c4abe66}*SharedItemsImports = 4
@ -167,6 +179,78 @@ Global
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|iPhone.Build.0 = Release|Any CPU
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Debug|iPhone.Build.0 = Debug|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Release|Any CPU.Build.0 = Release|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Release|iPhone.ActiveCfg = Release|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Release|iPhone.Build.0 = Release|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{5397E13D-6FCE-4F91-B5CE-FEDBE45E0A28}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Debug|iPhone.Build.0 = Debug|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Release|Any CPU.Build.0 = Release|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Release|iPhone.ActiveCfg = Release|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Release|iPhone.Build.0 = Release|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{7FD1A613-2B03-4B32-9A9E-6D4FD2E44A92}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Debug|iPhone.Build.0 = Debug|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Release|Any CPU.Build.0 = Release|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Release|iPhone.ActiveCfg = Release|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Release|iPhone.Build.0 = Release|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{288C869A-1EAD-4FD2-A8FE-0213EB4B5B0A}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Debug|iPhone.Build.0 = Debug|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Release|Any CPU.Build.0 = Release|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Release|iPhone.ActiveCfg = Release|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Release|iPhone.Build.0 = Release|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{B5F9CA08-26C1-40FF-92C5-AAA4B04A1D17}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Debug|iPhone.Build.0 = Debug|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Release|Any CPU.Build.0 = Release|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Release|iPhone.ActiveCfg = Release|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Release|iPhone.Build.0 = Release|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{E2FD0BFD-D17E-4E8A-8E83-D5FCDE1F6FAE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Debug|iPhone.Build.0 = Debug|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Release|Any CPU.Build.0 = Release|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Release|iPhone.ActiveCfg = Release|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Release|iPhone.Build.0 = Release|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{48DE405A-9432-40D1-AE6E-86CE2E0CE89A}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>

Просмотреть файл

@ -0,0 +1,9 @@
<Application x:Class="SkiaSharpSample.WPF.Host.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:SkiaSharpSample.WPF.Host"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>

Просмотреть файл

@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Windows;
namespace SkiaSharpSample.WPF.Host
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
}
}

Двоичный файл не отображается.

Просмотреть файл

@ -0,0 +1,10 @@
<Window x:Class="SkiaSharpSample.WPF.Host.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:SkiaSharpSample.WPF.Host"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<ContentControl x:Name="root"/>
</Window>

Просмотреть файл

@ -0,0 +1,32 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace SkiaSharpSample.WPF.Host
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
SkiaSharp.Views.UWP.SKSwapChainPanel.RaiseOnUnsupported = false;
root.Content = new global::Uno.UI.Skia.Platform.WpfHost(Dispatcher, () => new SkiaSharpSample.App());
}
}
}

Просмотреть файл

@ -0,0 +1,29 @@
using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Windows;
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
//In order to begin building localizable applications, set
//<UICulture>CultureYouAreCodingWith</UICulture> in your .csproj file
//inside a <PropertyGroup>. For example, if you are using US english
//in your source files, set the <UICulture> to en-US. Then uncomment
//the NeutralResourceLanguage attribute below. Update the "en-US" in
//the line below to match the UICulture setting in the project file.
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]

Просмотреть файл

@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace SkiaSharpSample.WPF.Host.Properties
{
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources
{
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources()
{
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager
{
get
{
if ((resourceMan == null))
{
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("SkiaSharpSample.WPF.Host.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture
{
get
{
return resourceCulture;
}
set
{
resourceCulture = value;
}
}
}
}

Просмотреть файл

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

Просмотреть файл

@ -0,0 +1,30 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace SkiaSharpSample.WPF.Host.Properties
{
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
{
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default
{
get
{
return defaultInstance;
}
}
}
}

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

Просмотреть файл

@ -0,0 +1,18 @@
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType Condition="'$(Configuration)'=='Release'">WinExe</OutputType>
<OutputType Condition="'$(Configuration)'=='Debug'">Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Uno.UI.Skia.Wpf" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
</ItemGroup>
<ItemGroup>
<Content Include="Assets\Fonts\uno-fluentui-assets.ttf" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\SkiaSharpSample.WPF\SkiaSharpSample.WPF.csproj" />
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,31 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<LangVersion>8.0</LangVersion>
</PropertyGroup>
<ItemGroup>
<!-- Note that for WebAssembly version 1.1.1 of the console logger required -->
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
<PackageReference Include="Uno.UI.Skia.Wpf" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
</ItemGroup>
<ItemGroup>
<UpToDateCheckInput Include="..\SkiaSharpSample.Shared\**\*.xaml" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\binding\SkiaSharp\SkiaSharp.csproj" />
<ProjectReference Include="..\..\..\..\binding\HarfBuzzSharp\HarfBuzzSharp.csproj" />
<ProjectReference Include="..\..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj" />
<ProjectReference Include="..\..\..\..\source\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz.csproj" />
</ItemGroup>
<Import Project="..\SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems" Label="Shared" />
<ItemGroup>
<Content Include="..\..\..\..\output\native\windows\x64\*.dll" Visible="False" />
<Content Include="..\..\Shared\Media\content-font.ttf">
<Link>Assets\Media\content-font.ttf</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<Import Project="..\..\..\..\output\SkiaSharp.Views.Uno\nuget\build\netstandard2.0\SkiaSharp.Views.Uno.targets" Condition="Exists('..\..\..\..\output\SkiaSharp.Views.Uno\nuget\build\netstandard2.0\SkiaSharp.Views.Uno.targets')" />
</Project>

Просмотреть файл

@ -5,5 +5,5 @@
<!-- This is required by Json.NET and any expression.Compile caller -->
<type fullname="System.Linq.Expressions*" />
</assembly>
<assembly fullname="HarfBuzzSharp" />
<!--<assembly fullname="HarfBuzzSharp" />-->
</linker>

Просмотреть файл

@ -23,8 +23,8 @@
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
<PackageReference Include="Uno.UI.WebAssembly" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI.WebAssembly" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.Wasm.Bootstrap" Version="2.1.0" />
<PackageReference Include="Uno.Wasm.Bootstrap.DevServer" Version="2.1.0" />
</ItemGroup>

Просмотреть файл

@ -23,12 +23,30 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp", "..\..\..\binding\SkiaSharp\SkiaSharp.csproj", "{409AF271-D8B7-4F79-B293-02F562A51955}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp", "..\..\..\binding\HarfBuzzSharp\HarfBuzzSharp.csproj", "{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp.Android", "..\..\..\binding\HarfBuzzSharp.Android\HarfBuzzSharp.Android.csproj", "{CDB278FF-2188-4B0B-9EE9-9D310363E733}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp.UWP", "..\..\..\binding\HarfBuzzSharp.UWP\HarfBuzzSharp.UWP.csproj", "{7B18043D-8B3C-4A90-A0E6-A586785F0742}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.HarfBuzz", "..\..\..\source\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz.csproj", "{99DC411D-8FC3-4D60-B217-47EAAE54E21F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.Gtk", "SkiaSharpSample.Gtk\SkiaSharpSample.Gtk.csproj", "{76800B1B-AC93-4451-AA67-9B5F867DAD35}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.WPF", "SkiaSharpSample.WPF\SkiaSharpSample.WPF.csproj", "{D4E1BD04-F37B-432E-89D7-98595FBA6D11}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.WPF.Host", "SkiaSharpSample.WPF.Host\SkiaSharpSample.WPF.Host.csproj", "{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{6279c845-92f8-4333-ab99-3d213163593c}*SharedItemsImports = 13
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{76800b1b-ac93-4451-aa67-9b5f867dad35}*SharedItemsImports = 5
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{8b8db39e-c0ff-4edc-83a6-0b6a4ab763ee}*SharedItemsImports = 4
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{9726301d-8a93-4a06-88df-92ba01cf80ad}*SharedItemsImports = 5
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{ae39aa1d-32c8-482b-9395-ad5493c98f7e}*SharedItemsImports = 4
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{d4e1bd04-f37b-432e-89d7-98595fba6d11}*SharedItemsImports = 5
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -243,6 +261,166 @@ Global
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|x64.Build.0 = Release|Any CPU
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|x86.ActiveCfg = Release|Any CPU
{409AF271-D8B7-4F79-B293-02F562A51955}.Release|x86.Build.0 = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|ARM.ActiveCfg = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|ARM.Build.0 = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|ARM64.Build.0 = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|x64.ActiveCfg = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|x64.Build.0 = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|x86.ActiveCfg = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Debug|x86.Build.0 = Debug|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|Any CPU.Build.0 = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|ARM.ActiveCfg = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|ARM.Build.0 = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|ARM64.ActiveCfg = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|ARM64.Build.0 = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|x64.ActiveCfg = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|x64.Build.0 = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|x86.ActiveCfg = Release|Any CPU
{B4F8D378-9DD2-4D4A-AEFC-04705DF2F240}.Release|x86.Build.0 = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|ARM.ActiveCfg = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|ARM.Build.0 = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|ARM64.Build.0 = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|x64.ActiveCfg = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|x64.Build.0 = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|x86.ActiveCfg = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Debug|x86.Build.0 = Debug|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|Any CPU.Build.0 = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|ARM.ActiveCfg = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|ARM.Build.0 = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|ARM64.ActiveCfg = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|ARM64.Build.0 = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|x64.ActiveCfg = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|x64.Build.0 = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|x86.ActiveCfg = Release|Any CPU
{CDB278FF-2188-4B0B-9EE9-9D310363E733}.Release|x86.Build.0 = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|ARM.ActiveCfg = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|ARM.Build.0 = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|ARM64.Build.0 = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|x64.ActiveCfg = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|x64.Build.0 = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|x86.ActiveCfg = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Debug|x86.Build.0 = Debug|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|Any CPU.Build.0 = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|ARM.ActiveCfg = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|ARM.Build.0 = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|ARM64.ActiveCfg = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|ARM64.Build.0 = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|x64.ActiveCfg = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|x64.Build.0 = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|x86.ActiveCfg = Release|Any CPU
{7B18043D-8B3C-4A90-A0E6-A586785F0742}.Release|x86.Build.0 = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|ARM.ActiveCfg = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|ARM.Build.0 = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|ARM64.Build.0 = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|x64.ActiveCfg = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|x64.Build.0 = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|x86.ActiveCfg = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Debug|x86.Build.0 = Debug|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|Any CPU.Build.0 = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|ARM.ActiveCfg = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|ARM.Build.0 = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|ARM64.ActiveCfg = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|ARM64.Build.0 = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|x64.ActiveCfg = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|x64.Build.0 = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|x86.ActiveCfg = Release|Any CPU
{99DC411D-8FC3-4D60-B217-47EAAE54E21F}.Release|x86.Build.0 = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|ARM.ActiveCfg = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|ARM.Build.0 = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|ARM64.Build.0 = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|x64.ActiveCfg = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|x64.Build.0 = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|x86.ActiveCfg = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Debug|x86.Build.0 = Debug|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|Any CPU.Build.0 = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|ARM.ActiveCfg = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|ARM.Build.0 = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|ARM64.ActiveCfg = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|ARM64.Build.0 = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|x64.ActiveCfg = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|x64.Build.0 = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|x86.ActiveCfg = Release|Any CPU
{EA6C6B98-E18D-47EF-A9D5-80462FADCBCA}.Release|x86.Build.0 = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|Any CPU.Build.0 = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|ARM.ActiveCfg = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|ARM.Build.0 = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|ARM64.Build.0 = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|x64.ActiveCfg = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|x64.Build.0 = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|x86.ActiveCfg = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Debug|x86.Build.0 = Debug|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|Any CPU.ActiveCfg = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|Any CPU.Build.0 = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|ARM.ActiveCfg = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|ARM.Build.0 = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|ARM64.ActiveCfg = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|ARM64.Build.0 = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|x64.ActiveCfg = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|x64.Build.0 = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|x86.ActiveCfg = Release|Any CPU
{76800B1B-AC93-4451-AA67-9B5F867DAD35}.Release|x86.Build.0 = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|ARM.ActiveCfg = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|ARM.Build.0 = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|ARM64.Build.0 = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|x64.ActiveCfg = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|x64.Build.0 = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|x86.ActiveCfg = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Debug|x86.Build.0 = Debug|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|Any CPU.Build.0 = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|ARM.ActiveCfg = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|ARM.Build.0 = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|ARM64.ActiveCfg = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|ARM64.Build.0 = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|x64.ActiveCfg = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|x64.Build.0 = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|x86.ActiveCfg = Release|Any CPU
{D4E1BD04-F37B-432E-89D7-98595FBA6D11}.Release|x86.Build.0 = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|Any CPU.Build.0 = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|ARM.ActiveCfg = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|ARM.Build.0 = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|ARM64.Build.0 = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|x64.ActiveCfg = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|x64.Build.0 = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|x86.ActiveCfg = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Debug|x86.Build.0 = Debug|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|Any CPU.ActiveCfg = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|Any CPU.Build.0 = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|ARM.ActiveCfg = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|ARM.Build.0 = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|ARM64.ActiveCfg = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|ARM64.Build.0 = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|x64.ActiveCfg = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|x64.Build.0 = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|x86.ActiveCfg = Release|Any CPU
{524B2E63-2C4A-4723-B5C0-1E9DA2768A85}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -101,8 +101,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Xamarin.Essentials" Version="1.5.1" />
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
</ItemGroup>

Просмотреть файл

@ -42,8 +42,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Xamarin.Essentials" Version="1.5.1" />
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.4" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
<PackageReference Include="Uno.UI.RemoteControl" Version="3.7.6" Condition="'$(Configuration)'=='Debug'" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
</ItemGroup>

Просмотреть файл

@ -49,14 +49,24 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp.UWP", "..\..\
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.HarfBuzz", "..\..\..\source\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz\SkiaSharp.HarfBuzz.csproj", "{731BCCC9-4E61-4410-AAF2-897D7E1E88AD}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.Gtk", "SkiaSharpSample.Gtk\SkiaSharpSample.Gtk.csproj", "{FF61F844-F706-4503-8074-DCD0BFA57125}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.WPF", "SkiaSharpSample.WPF\SkiaSharpSample.WPF.csproj", "{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpSample.WPF.Host", "SkiaSharpSample.WPF.Host\SkiaSharpSample.WPF.Host.csproj", "{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "..\..\..\source\SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{F5700942-5F78-4D24-828E-07C46A0F2C8A}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{2a19c71c-d1ab-4c70-b821-6a7c7c4abe66}*SharedItemsImports = 4
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{3ca0ee89-76c2-4a8e-96d6-9c5f2b05905e}*SharedItemsImports = 5
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{6279c845-92f8-4333-ab99-3d213163593c}*SharedItemsImports = 13
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{8b8db39e-c0ff-4edc-83a6-0b6a4ab763ee}*SharedItemsImports = 4
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{9726301d-8a93-4a06-88df-92ba01cf80ad}*SharedItemsImports = 5
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{ae39aa1d-32c8-482b-9395-ad5493c98f7e}*SharedItemsImports = 4
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{b3a30dc3-0e2d-4f46-97c5-fdc6ab8062e6}*SharedItemsImports = 4
SkiaSharpSample.Shared\SkiaSharpSample.Shared.projitems*{ff61f844-f706-4503-8074-dcd0bfa57125}*SharedItemsImports = 5
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -728,6 +738,118 @@ Global
{731BCCC9-4E61-4410-AAF2-897D7E1E88AD}.Release|x64.Build.0 = Release|Any CPU
{731BCCC9-4E61-4410-AAF2-897D7E1E88AD}.Release|x86.ActiveCfg = Release|Any CPU
{731BCCC9-4E61-4410-AAF2-897D7E1E88AD}.Release|x86.Build.0 = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|ARM.ActiveCfg = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|ARM.Build.0 = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|ARM64.Build.0 = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|iPhone.Build.0 = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|x64.ActiveCfg = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|x64.Build.0 = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|x86.ActiveCfg = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Debug|x86.Build.0 = Debug|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|Any CPU.Build.0 = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|ARM.ActiveCfg = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|ARM.Build.0 = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|ARM64.ActiveCfg = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|ARM64.Build.0 = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|iPhone.ActiveCfg = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|iPhone.Build.0 = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|x64.ActiveCfg = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|x64.Build.0 = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|x86.ActiveCfg = Release|Any CPU
{FF61F844-F706-4503-8074-DCD0BFA57125}.Release|x86.Build.0 = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|ARM.ActiveCfg = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|ARM.Build.0 = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|ARM64.Build.0 = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|iPhone.Build.0 = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|x64.ActiveCfg = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|x64.Build.0 = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|x86.ActiveCfg = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Debug|x86.Build.0 = Debug|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|Any CPU.Build.0 = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|ARM.ActiveCfg = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|ARM.Build.0 = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|ARM64.ActiveCfg = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|ARM64.Build.0 = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|iPhone.ActiveCfg = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|iPhone.Build.0 = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|x64.ActiveCfg = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|x64.Build.0 = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|x86.ActiveCfg = Release|Any CPU
{3CA0EE89-76C2-4A8E-96D6-9C5F2B05905E}.Release|x86.Build.0 = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|ARM.ActiveCfg = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|ARM.Build.0 = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|ARM64.Build.0 = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|iPhone.Build.0 = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|x64.ActiveCfg = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|x64.Build.0 = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|x86.ActiveCfg = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Debug|x86.Build.0 = Debug|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|Any CPU.Build.0 = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|ARM.ActiveCfg = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|ARM.Build.0 = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|ARM64.ActiveCfg = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|ARM64.Build.0 = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|iPhone.ActiveCfg = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|iPhone.Build.0 = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|x64.ActiveCfg = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|x64.Build.0 = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|x86.ActiveCfg = Release|Any CPU
{A4D1E47E-78B8-4B61-86B3-4F36D5AF62A2}.Release|x86.Build.0 = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|ARM.ActiveCfg = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|ARM.Build.0 = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|ARM64.Build.0 = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|iPhone.Build.0 = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|x64.ActiveCfg = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|x64.Build.0 = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|x86.ActiveCfg = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Debug|x86.Build.0 = Debug|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|Any CPU.Build.0 = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|ARM.ActiveCfg = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|ARM.Build.0 = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|ARM64.ActiveCfg = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|ARM64.Build.0 = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|iPhone.ActiveCfg = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|iPhone.Build.0 = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|x64.ActiveCfg = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|x64.Build.0 = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|x86.ActiveCfg = Release|Any CPU
{F5700942-5F78-4D24-828E-07C46A0F2C8A}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -111,6 +111,8 @@ jobs:
version: $(DOTNET_VERSION)
performMultiLevelLookup: true
displayName: Install the correct version of .NET Core
- pwsh: dotnet --info
displayName: Display all the .NET information
# install the mac tools
- ${{ if endsWith(parameters.name, '_macos') }}:

Просмотреть файл

@ -1,5 +1,6 @@
Param(
[string] $Version = "10.0.0"
[string] $Version = "11.1.0",
[string] $InstallDestination = "C:\Program Files\LLVM"
)
$ErrorActionPreference = 'Stop'
@ -18,9 +19,12 @@ New-Item -ItemType Directory -Force -Path "$llvmTemp" | Out-Null
# install
Write-Host "Installing LLVM..."
& $install /S
& 7z x $install -y -o"$InstallDestination"
# echo version
& "$InstallDestination\bin\clang.exe" --version
# make sure that LLVM is in LLVM_HOME
Write-Host "##vso[task.setvariable variable=LLVM_HOME;]C:\Program Files\LLVM";
Write-Host "##vso[task.setvariable variable=LLVM_HOME;]$InstallDestination";
exit $LASTEXITCODE

Просмотреть файл

@ -51,7 +51,7 @@
</PropertyGroup>
<ItemGroup Condition=" '$(Configuration)' == 'Release' ">
<PackageReference Include="mdoc" Version="5.8.2" PrivateAssets="All" GeneratePathProperty="true" />
<PackageReference Include="mdoc" Version="5.8.3" PrivateAssets="All" GeneratePathProperty="true" />
</ItemGroup>
<!-- workaround for https://github.com/microsoft/ProjectReunion/pull/707 -->

Просмотреть файл

@ -4,7 +4,7 @@ using Windows.UI.Xaml;
namespace SkiaSharp.Views.UWP
{
public partial class SKXamlCanvas : FrameworkElement
public partial class SKXamlCanvas
{
private SurfaceFactory surfaceFactory;

Просмотреть файл

@ -8,7 +8,7 @@
<PackagingPlatform>monoandroid1.0</PackagingPlatform>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\binding\SkiaSharp.Android\SkiaSharp.Android.csproj" />

Просмотреть файл

@ -5,7 +5,7 @@ using Windows.UI.Xaml;
namespace SkiaSharp.Views.UWP
{
public partial class SKXamlCanvas : FrameworkElement
public partial class SKXamlCanvas
{
private SKCGSurfaceFactory drawable;

Просмотреть файл

@ -8,7 +8,7 @@
<DefineConstants>$(DefineConstants);__MACOS__</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\binding\SkiaSharp.OSX\SkiaSharp.OSX.csproj" />

Просмотреть файл

@ -4,7 +4,7 @@ using Windows.UI.Xaml;
namespace SkiaSharp.Views.UWP
{
public partial class SKXamlCanvas : FrameworkElement
public partial class SKXamlCanvas
{
public SKXamlCanvas()
{

Просмотреть файл

@ -7,7 +7,7 @@
<PackagingGroup>SkiaSharp.Views.Uno</PackagingGroup>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\binding\SkiaSharp\SkiaSharp.csproj" />

Просмотреть файл

@ -0,0 +1,40 @@
using System;
using System.Threading;
using Uno.Foundation;
using Windows.UI.Xaml;
namespace SkiaSharp.Views.UWP
{
public partial class SKSwapChainPanel
{
public SKSwapChainPanel()
{
if (RaiseOnUnsupported)
{
throw new NotSupportedException($"SKSwapChainPanel is not supported for Skia based platforms");
}
}
private SKSize GetCanvasSize()
{
if (RaiseOnUnsupported)
{
throw new NotSupportedException($"SKSwapChainPanel is not supported for Skia based platforms");
}
return new SKSize();
}
private GRContext GetGRContext()
{
if (RaiseOnUnsupported)
{
throw new NotSupportedException($"SKSwapChainPanel is not supported for Skia based platforms");
}
return null;
}
private void DoInvalidate() { }
}
}

Просмотреть файл

@ -0,0 +1,137 @@
using System;
using System.Runtime.InteropServices;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Media.Imaging;
namespace SkiaSharp.Views.UWP
{
public partial class SKXamlCanvas : Canvas
{
private byte[] pixels;
private GCHandle pixelsHandle;
private int pixelWidth;
private int pixelHeight;
private WriteableBitmap bitmap;
public SKXamlCanvas()
{
Initialize();
}
partial void DoUnloaded() =>
FreeBitmap();
private SKSize GetCanvasSize() =>
new SKSize(pixelWidth, pixelHeight);
private void DoInvalidate()
{
if (designMode)
return;
if (!isVisible)
return;
if (ActualWidth <= 0 || ActualHeight <= 0)
return;
var info = CreateBitmap();
using (var surface = SKSurface.Create(info, pixelsHandle.AddrOfPinnedObject(), info.RowBytes))
{
OnPaintSurface(new SKPaintSurfaceEventArgs(surface, info));
}
// This implementation is not fast enough, and providing the original pixel buffer
// is needed, yet the internal `IBufferByteAccess` interface is not yet available in Uno.
// Once it is, we can replace this implementation and provide the pinned array directly
// to skia.
using (var data = bitmap.PixelBuffer.AsStream())
{
data.Write(pixels, 0, pixels.Length);
data.Flush();
}
bitmap.Invalidate();
}
private SKSizeI CreateSize()
{
var w = ActualWidth;
var h = ActualHeight;
if (!IsPositive(w) || !IsPositive(h))
return SKSizeI.Empty;
if (IgnorePixelScaling)
return new SKSizeI((int)w, (int)h);
var dpi = Dpi;
return new SKSizeI((int)(w * dpi), (int)(h * dpi));
static bool IsPositive(double value)
{
return !double.IsNaN(value) && !double.IsInfinity(value) && value > 0;
}
}
private SKImageInfo CreateBitmap()
{
var size = CreateSize();
var info = new SKImageInfo(size.Width, size.Height, SKImageInfo.PlatformColorType, SKAlphaType.Premul);
if (bitmap?.PixelWidth != info.Width || bitmap?.PixelHeight != info.Height)
FreeBitmap();
if (bitmap == null && info.Width > 0 && info.Height > 0)
{
bitmap = new WriteableBitmap(info.Width, info.Height);
var brush = new ImageBrush
{
ImageSource = bitmap,
AlignmentX = AlignmentX.Left,
AlignmentY = AlignmentY.Top,
Stretch = Stretch.None
};
if (!IgnorePixelScaling)
{
var scale = 1.0 / Dpi;
brush.Transform = new ScaleTransform
{
ScaleX = scale,
ScaleY = scale
};
}
Background = brush;
}
if (pixels == null || pixelWidth != info.Width || pixelHeight != info.Height)
{
FreeBitmap();
pixels = new byte[info.BytesSize];
pixelsHandle = GCHandle.Alloc(pixels, GCHandleType.Pinned);
pixelWidth = info.Width;
pixelHeight = info.Height;
}
return info;
}
private void FreeBitmap()
{
if (pixels != null)
{
pixelsHandle.Free();
pixels = null;
bitmap = null;
}
}
}
}

Просмотреть файл

@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RootNamespace>SkiaSharp.Views.UWP</RootNamespace>
<AssemblyName>SkiaSharp.Views.UWP</AssemblyName>
<SignAssembly>false</SignAssembly>
<PackagingGroup>SkiaSharp.Views.Uno</PackagingGroup>
<DefineConstants>$(DefineConstants);HAS_UNO_SKIA</DefineConstants>
<PackagingLocation>uno-runtime\skia</PackagingLocation>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.6" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\binding\SkiaSharp\SkiaSharp.csproj" />
</ItemGroup>
<ItemGroup>
<Compile Include="..\..\SkiaSharp.Views\SkiaSharp.Views.Shared\**\*.cs" Link="%(RecursiveDir)%(Filename)%(Extension)" />
<Compile Include="..\..\SkiaSharp.Views\SkiaSharp.Views.UWP\UWPExtensions.cs" />
<Compile Include="..\SkiaSharp.Views.Uno\**\*.cs" Link="%(RecursiveDir)%(Filename)%(Extension)" />
</ItemGroup>
</Project>

Просмотреть файл

@ -7,7 +7,7 @@ using Windows.UI.Xaml;
namespace SkiaSharp.Views.UWP
{
[HtmlElement("canvas")]
public partial class SKXamlCanvas : FrameworkElement
public partial class SKXamlCanvas
{
private byte[] pixels;
private GCHandle pixelsHandle;

Просмотреть файл

@ -9,8 +9,8 @@
<PackagingLocation>uno-runtime\webassembly</PackagingLocation>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI.Runtime.WebAssembly" Version="3.7.4" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
<PackageReference Include="Uno.UI.Runtime.WebAssembly" Version="3.7.6" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\binding\SkiaSharp\SkiaSharp.csproj" />

Просмотреть файл

@ -5,7 +5,7 @@ using Windows.UI.Xaml;
namespace SkiaSharp.Views.UWP
{
public partial class SKXamlCanvas : FrameworkElement
public partial class SKXamlCanvas
{
private SKCGSurfaceFactory drawable;

Просмотреть файл

@ -7,7 +7,7 @@
<PackagingGroup>SkiaSharp.Views.Uno</PackagingGroup>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Uno.UI" Version="3.7.4" />
<PackageReference Include="Uno.UI" Version="3.7.6" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\binding\SkiaSharp.iOS\SkiaSharp.iOS.csproj" />

Просмотреть файл

@ -10,6 +10,8 @@ namespace SkiaSharp.Views.UWP
{
public partial class SKSwapChainPanel : FrameworkElement
{
public static bool RaiseOnUnsupported { get; set; } = true;
private static readonly DependencyProperty ProxyVisibilityProperty =
DependencyProperty.Register(
"ProxyVisibility",

Просмотреть файл

@ -3,11 +3,12 @@ using Windows.ApplicationModel;
using Windows.Graphics.Display;
using Windows.UI.Core;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Data;
namespace SkiaSharp.Views.UWP
{
public partial class SKXamlCanvas : FrameworkElement
public partial class SKXamlCanvas : Canvas
{
private static readonly DependencyProperty ProxyVisibilityProperty =
DependencyProperty.Register(
@ -111,12 +112,12 @@ namespace SkiaSharp.Views.UWP
display.DpiChanged -= OnDpiChanged;
}
public void Invalidate()
public new async void Invalidate()
{
if (Dispatcher.HasThreadAccess)
DoInvalidate();
else
Dispatcher.RunAsync(CoreDispatcherPriority.Normal, DoInvalidate);
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, DoInvalidate);
}
partial void DoLoaded();

Просмотреть файл

@ -41,12 +41,14 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Vulkan", "SkiaSha
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Vulkan.SharpVk", "SkiaSharp.Vulkan\SkiaSharp.Vulkan.SharpVk\SkiaSharp.Vulkan.SharpVk.csproj", "{4606F63B-F0B1-418E-8B45-844361E17EB1}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Views.Uno", "SkiaSharp.Views.Uno", "{00C9099A-BE4F-40D0-9401-295618368370}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Wasm\SkiaSharp.Views.Uno.Wasm.csproj", "{08599A28-FADE-43B5-95A0-BDCB22B97D3A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Reference", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Reference\SkiaSharp.Views.Uno.Reference.csproj", "{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{A84C9753-A343-4A21-8337-147E5B93B055}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Views.Uno", "SkiaSharp.Views.Uno", "{E13F3D9A-BC92-4F6E-8D62-1FB24CE189DA}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.DotNet.Interactive", "SkiaSharp.DotNet.Interactive", "{E0EDA875-C25F-4727-BB98-6EF7BBAFEB4B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.DotNet.Interactive", "SkiaSharp.DotNet.Interactive\SkiaSharp.DotNet.Interactive.csproj", "{03A0F2E5-345D-4FA2-B1F8-45D2D7EEA3EB}"
@ -117,6 +119,10 @@ Global
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.Build.0 = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.Build.0 = Release|Any CPU
{03A0F2E5-345D-4FA2-B1F8-45D2D7EEA3EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{03A0F2E5-345D-4FA2-B1F8-45D2D7EEA3EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{03A0F2E5-345D-4FA2-B1F8-45D2D7EEA3EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -139,8 +145,9 @@ Global
{6FB08346-1A02-4793-B5E1-4F739C6342D5} = {4F5EBFFB-DD81-43B9-8531-156ED3639C91}
{857CB6E9-BA27-4E94-A2D7-68BFF1EE193B} = {B3C4E4EC-68C7-4AFB-A6D4-1B2B0EB8C421}
{4606F63B-F0B1-418E-8B45-844361E17EB1} = {66A0800A-CA70-4AC2-88B7-8E7C4CA7C914}
{08599A28-FADE-43B5-95A0-BDCB22B97D3A} = {00C9099A-BE4F-40D0-9401-295618368370}
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB} = {00C9099A-BE4F-40D0-9401-295618368370}
{08599A28-FADE-43B5-95A0-BDCB22B97D3A} = {E13F3D9A-BC92-4F6E-8D62-1FB24CE189DA}
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB} = {E13F3D9A-BC92-4F6E-8D62-1FB24CE189DA}
{A84C9753-A343-4A21-8337-147E5B93B055} = {E13F3D9A-BC92-4F6E-8D62-1FB24CE189DA}
{03A0F2E5-345D-4FA2-B1F8-45D2D7EEA3EB} = {E0EDA875-C25F-4727-BB98-6EF7BBAFEB4B}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

Просмотреть файл

@ -85,6 +85,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Reference", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Reference\SkiaSharp.Views.Uno.Reference.csproj", "{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{A84C9753-A343-4A21-8337-147E5B93B055}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.DotNet.Interactive", "SkiaSharp.DotNet.Interactive\SkiaSharp.DotNet.Interactive.csproj", "{A23C2451-BBCE-4309-B80F-CEE482A140C7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.DotNet.Interactive", "SkiaSharp.DotNet.Interactive", "{A54F6AE5-2921-4C68-846A-25D38F1C2E7E}"
@ -231,6 +233,10 @@ Global
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.Build.0 = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.Build.0 = Release|Any CPU
{A23C2451-BBCE-4309-B80F-CEE482A140C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A23C2451-BBCE-4309-B80F-CEE482A140C7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A23C2451-BBCE-4309-B80F-CEE482A140C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -274,6 +280,7 @@ Global
{E0FF9BFF-2253-4486-A8E2-94312D09D056} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{242213FA-1F0E-40BB-A9B2-6FEE82B5D216} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{A84C9753-A343-4A21-8337-147E5B93B055} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{A23C2451-BBCE-4309-B80F-CEE482A140C7} = {A54F6AE5-2921-4C68-846A-25D38F1C2E7E}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution

Просмотреть файл

@ -69,6 +69,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Reference", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Reference\SkiaSharp.Views.Uno.Reference.csproj", "{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{A84C9753-A343-4A21-8337-147E5B93B055}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.WinUI", "SkiaSharp.Views.WinUI\SkiaSharp.Views.WinUI\SkiaSharp.Views.WinUI.csproj", "{F50AE765-D9B9-4025-88A8-E8B080D5D624}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Views.WinUI", "SkiaSharp.Views.WinUI", "{32AE56A0-F3E1-4721-9BED-B1F609DEA8E8}"
@ -187,6 +189,10 @@ Global
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.Build.0 = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.Build.0 = Release|Any CPU
{F50AE765-D9B9-4025-88A8-E8B080D5D624}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F50AE765-D9B9-4025-88A8-E8B080D5D624}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F50AE765-D9B9-4025-88A8-E8B080D5D624}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -226,6 +232,7 @@ Global
{D35B20BC-838A-4C1E-B427-4269F6387CAB} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{F675A841-ECDB-4571-8AA3-7D4642FD57DB} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{A84C9753-A343-4A21-8337-147E5B93B055} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{F50AE765-D9B9-4025-88A8-E8B080D5D624} = {32AE56A0-F3E1-4721-9BED-B1F609DEA8E8}
{73185ECB-5A38-447C-95CF-D32D6784B97D} = {B7F572BF-AD3F-4AC8-A654-3ED241E3ECA4}
EndGlobalSection

Просмотреть файл

@ -105,6 +105,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Wasm",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Reference", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Reference\SkiaSharp.Views.Uno.Reference.csproj", "{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Uno.Skia", "SkiaSharp.Views.Uno\SkiaSharp.Views.Uno.Skia\SkiaSharp.Views.Uno.Skia.csproj", "{A84C9753-A343-4A21-8337-147E5B93B055}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SkiaSharp.Views.WinUI", "SkiaSharp.Views.WinUI", "{6430EC5F-EDA1-4202-AB7B-22ED0496E016}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.WinUI", "SkiaSharp.Views.WinUI\SkiaSharp.Views.WinUI\SkiaSharp.Views.WinUI.csproj", "{02CA4107-1FC6-4676-B284-9981694A450E}"
@ -295,6 +297,10 @@ Global
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB}.Release|Any CPU.Build.0 = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A84C9753-A343-4A21-8337-147E5B93B055}.Release|Any CPU.Build.0 = Release|Any CPU
{02CA4107-1FC6-4676-B284-9981694A450E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{02CA4107-1FC6-4676-B284-9981694A450E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{02CA4107-1FC6-4676-B284-9981694A450E}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -352,6 +358,7 @@ Global
{E0FF9BFF-2253-4486-A8E2-94312D09D056} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{047C460D-7470-418C-AF2C-30620A1AF61C} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{D5C7D157-609E-4D64-8E42-C1DB0FAA86EB} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{A84C9753-A343-4A21-8337-147E5B93B055} = {E53351EA-FE40-47D2-B388-4A75DA6CCD71}
{02CA4107-1FC6-4676-B284-9981694A450E} = {6430EC5F-EDA1-4202-AB7B-22ED0496E016}
{D213D614-2F31-450C-B6FA-294754C4DCD4} = {94767AFC-EB2B-41ED-BFEF-93EF33EEEBCF}
EndGlobalSection