From 735181f8871f2d4542db2a786e481a2c1133d1ee Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Mon, 6 Dec 2021 10:12:55 +0000 Subject: [PATCH] Merge pull request #7029 from AvaloniaUI/features/web Avalonia.Web (wasm) --- .gitignore | 3 + Avalonia.sln | 115 ++++-- NuGet.Config | 1 + build/ApiDiff.props | 10 +- build/HarfBuzzSharp.props | 5 +- build/SkiaSharp.props | 5 +- samples/ControlCatalog.Web/App.razor | 10 + samples/ControlCatalog.Web/App.razor.cs | 14 + .../ControlCatalog.Web.csproj | 38 ++ samples/ControlCatalog.Web/LinkerConfig.xml | 28 ++ samples/ControlCatalog.Web/Pages/Index.razor | 5 + samples/ControlCatalog.Web/Program.cs | 29 ++ .../Properties/launchSettings.json | 30 ++ .../Shared/MainLayout.razor | 7 + .../Shared/MainLayout.razor.css | 70 ++++ samples/ControlCatalog.Web/_Imports.razor | 11 + .../ControlCatalog.Web/wwwroot/css/app.css | 90 +++++ .../ControlCatalog.Web/wwwroot/favicon.ico | Bin 0 -> 176111 bytes samples/ControlCatalog.Web/wwwroot/index.html | 23 ++ samples/ControlCatalog.Web/wwwroot/js/app.js | 1 + src/Skia/Avalonia.Skia/Avalonia.Skia.csproj | 1 + .../Avalonia.Skia/SKTypefaceCollection.cs | 2 +- .../SKTypefaceCollectionCache.cs | 2 +- .../Assets/NotoMono-Regular.ttf | Bin 0 -> 107848 bytes .../Assets/NotoSans-Italic.ttf | Bin 0 -> 470472 bytes .../Avalonia.Web.Blazor.csproj | 57 +++ .../Avalonia.Web.Blazor.targets | 6 + .../AvaloniaBlazorAppBuilder.cs | 18 + .../Avalonia.Web.Blazor/AvaloniaView.razor | 19 + .../Avalonia.Web.Blazor/AvaloniaView.razor.cs | 375 ++++++++++++++++++ .../BlazorRuntimePlatform.cs | 61 +++ .../BlazorSingleViewLifetime.cs | 33 ++ src/Web/Avalonia.Web.Blazor/BlazorSkiaGpu.cs | 25 ++ .../BlazorSkiaGpuRenderSession.cs | 37 ++ .../BlazorSkiaGpuRenderTarget.cs | 47 +++ .../Avalonia.Web.Blazor/BlazorSkiaSurface.cs | 30 ++ .../CustomFontManagerImpl.cs | 78 ++++ .../Interop/ActionHelper.cs | 20 + .../Interop/DpiWatcherInterop.cs | 87 ++++ .../Interop/FloatFloatActionHelper.cs | 20 + .../Interop/InputHelperInterop.cs | 41 ++ .../Interop/JSModuleInterop.cs | 42 ++ .../Interop/SKHtmlCanvasInterop.cs | 79 ++++ .../Interop/SizeWatcherInterop.cs | 61 +++ .../Interop/Typescript/DpiWatcher.ts | 41 ++ .../Interop/Typescript/InputHelper.ts | 23 ++ .../Interop/Typescript/SKHtmlCanvas.ts | 225 +++++++++++ .../Interop/Typescript/SizeWatcher.ts | 68 ++++ .../Typescript/types/dotnet/extras.d.ts | 7 + .../Typescript/types/dotnet/index.d.ts | 56 +++ .../Typescript/types/emscripten/index.d.ts | 326 +++++++++++++++ src/Web/Avalonia.Web.Blazor/Keycodes.cs | 127 ++++++ .../ManualTriggerRenderTimer.cs | 16 + .../RazorViewTopLevelImpl.cs | 165 ++++++++ src/Web/Avalonia.Web.Blazor/WinStubs.cs | 80 ++++ .../Avalonia.Web.Blazor/WindowingPlatform.cs | 100 +++++ src/Web/Avalonia.Web.Blazor/_Imports.razor | 1 + src/Web/Avalonia.Web.Blazor/tsconfig.json | 14 + 58 files changed, 2845 insertions(+), 40 deletions(-) create mode 100644 samples/ControlCatalog.Web/App.razor create mode 100644 samples/ControlCatalog.Web/App.razor.cs create mode 100644 samples/ControlCatalog.Web/ControlCatalog.Web.csproj create mode 100644 samples/ControlCatalog.Web/LinkerConfig.xml create mode 100644 samples/ControlCatalog.Web/Pages/Index.razor create mode 100644 samples/ControlCatalog.Web/Program.cs create mode 100644 samples/ControlCatalog.Web/Properties/launchSettings.json create mode 100644 samples/ControlCatalog.Web/Shared/MainLayout.razor create mode 100644 samples/ControlCatalog.Web/Shared/MainLayout.razor.css create mode 100644 samples/ControlCatalog.Web/_Imports.razor create mode 100644 samples/ControlCatalog.Web/wwwroot/css/app.css create mode 100644 samples/ControlCatalog.Web/wwwroot/favicon.ico create mode 100644 samples/ControlCatalog.Web/wwwroot/index.html create mode 100644 samples/ControlCatalog.Web/wwwroot/js/app.js create mode 100644 src/Web/Avalonia.Web.Blazor/Assets/NotoMono-Regular.ttf create mode 100644 src/Web/Avalonia.Web.Blazor/Assets/NotoSans-Italic.ttf create mode 100644 src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.csproj create mode 100644 src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.targets create mode 100644 src/Web/Avalonia.Web.Blazor/AvaloniaBlazorAppBuilder.cs create mode 100644 src/Web/Avalonia.Web.Blazor/AvaloniaView.razor create mode 100644 src/Web/Avalonia.Web.Blazor/AvaloniaView.razor.cs create mode 100644 src/Web/Avalonia.Web.Blazor/BlazorRuntimePlatform.cs create mode 100644 src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs create mode 100644 src/Web/Avalonia.Web.Blazor/BlazorSkiaGpu.cs create mode 100644 src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderSession.cs create mode 100644 src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderTarget.cs create mode 100644 src/Web/Avalonia.Web.Blazor/BlazorSkiaSurface.cs create mode 100644 src/Web/Avalonia.Web.Blazor/CustomFontManagerImpl.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/ActionHelper.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/DpiWatcherInterop.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/FloatFloatActionHelper.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/JSModuleInterop.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/SKHtmlCanvasInterop.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/SizeWatcherInterop.cs create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/Typescript/DpiWatcher.ts create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/Typescript/InputHelper.ts create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/Typescript/SKHtmlCanvas.ts create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/Typescript/SizeWatcher.ts create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/extras.d.ts create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/index.d.ts create mode 100644 src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/emscripten/index.d.ts create mode 100644 src/Web/Avalonia.Web.Blazor/Keycodes.cs create mode 100644 src/Web/Avalonia.Web.Blazor/ManualTriggerRenderTimer.cs create mode 100644 src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs create mode 100644 src/Web/Avalonia.Web.Blazor/WinStubs.cs create mode 100644 src/Web/Avalonia.Web.Blazor/WindowingPlatform.cs create mode 100644 src/Web/Avalonia.Web.Blazor/_Imports.razor create mode 100644 src/Web/Avalonia.Web.Blazor/tsconfig.json diff --git a/.gitignore b/.gitignore index abf7674560..9b15011929 100644 --- a/.gitignore +++ b/.gitignore @@ -210,3 +210,6 @@ obj-Skia/ coc-settings.json .ccls-cache .ccls +*.map +src/Web/Avalonia.Web.Blazor/wwwroot/*.js +src/Web/Avalonia.Web.Blazor/Interop/Typescript/*.js diff --git a/Avalonia.sln b/Avalonia.sln index 75f1dd8407..8a9a899d3c 100644 --- a/Avalonia.sln +++ b/Avalonia.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.29102.190 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31903.59 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.Base", "src\Avalonia.Base\Avalonia.Base.csproj", "{B09B78D8-9B26-48B0-9149-D64A2F120F3F}" EndProject @@ -226,11 +226,17 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.ReactiveUI.Events" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Sandbox", "samples\Sandbox\Sandbox.csproj", "{11BE52AF-E2DD-4CF0-B19A-05285ACAF571}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MicroComGenerator", "src\tools\MicroComGenerator\MicroComGenerator.csproj", "{AEC9031E-06EA-4A9E-9E7F-7D7C719404DD}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MicroComGenerator", "src\tools\MicroComGenerator\MicroComGenerator.csproj", "{AEC9031E-06EA-4A9E-9E7F-7D7C719404DD}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Avalonia.MicroCom", "src\Avalonia.MicroCom\Avalonia.MicroCom.csproj", "{FE2F3E5E-1E34-4972-8DC1-5C2C588E5ECE}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.MicroCom", "src\Avalonia.MicroCom\Avalonia.MicroCom.csproj", "{FE2F3E5E-1E34-4972-8DC1-5C2C588E5ECE}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MiniMvvm", "samples\MiniMvvm\MiniMvvm.csproj", "{BC594FD5-4AF2-409E-A1E6-04123F54D7C5}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MiniMvvm", "samples\MiniMvvm\MiniMvvm.csproj", "{BC594FD5-4AF2-409E-A1E6-04123F54D7C5}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Web", "Web", "{86A3F706-DC3C-43C6-BE1B-B98F5BAAA268}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.Web.Blazor", "src\Web\Avalonia.Web.Blazor\Avalonia.Web.Blazor.csproj", "{25831348-EB2A-483E-9576-E8F6528674A5}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ControlCatalog.Web", "samples\ControlCatalog.Web\ControlCatalog.Web.csproj", "{C08E9894-AA92-426E-BF56-033E262CAD3E}" EndProject Global GlobalSection(SharedMSBuildProjectFiles) = preSolution @@ -2022,30 +2028,6 @@ Global {909A8CBD-7D0E-42FD-B841-022AD8925820}.Release|iPhone.Build.0 = Release|Any CPU {909A8CBD-7D0E-42FD-B841-022AD8925820}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU {909A8CBD-7D0E-42FD-B841-022AD8925820}.Release|iPhoneSimulator.Build.0 = Release|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.AppStore|Any CPU.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.AppStore|iPhone.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.AppStore|iPhone.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Debug|iPhone.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Debug|iPhone.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Release|Any CPU.Build.0 = Release|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Release|iPhone.ActiveCfg = Release|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Release|iPhone.Build.0 = Release|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU - {28F18757-C3E6-4BBE-A37D-11BA2AB9177C}.Release|iPhoneSimulator.Build.0 = Release|Any CPU {11BE52AF-E2DD-4CF0-B19A-05285ACAF571}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU {11BE52AF-E2DD-4CF0-B19A-05285ACAF571}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU {11BE52AF-E2DD-4CF0-B19A-05285ACAF571}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU @@ -2142,6 +2124,78 @@ Global {BC594FD5-4AF2-409E-A1E6-04123F54D7C5}.Release|iPhone.Build.0 = Release|Any CPU {BC594FD5-4AF2-409E-A1E6-04123F54D7C5}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU {BC594FD5-4AF2-409E-A1E6-04123F54D7C5}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.AppStore|Any CPU.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.AppStore|iPhone.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.AppStore|iPhone.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Debug|iPhone.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Release|Any CPU.Build.0 = Release|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Release|iPhone.ActiveCfg = Release|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Release|iPhone.Build.0 = Release|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {25831348-EB2A-483E-9576-E8F6528674A5}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.AppStore|Any CPU.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.AppStore|iPhone.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.AppStore|iPhone.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Debug|iPhone.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Release|Any CPU.Build.0 = Release|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Release|iPhone.ActiveCfg = Release|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Release|iPhone.Build.0 = Release|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {C08E9894-AA92-426E-BF56-033E262CAD3E}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.AppStore|Any CPU.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.AppStore|iPhone.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.AppStore|iPhone.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Debug|iPhone.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Release|Any CPU.Build.0 = Release|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Release|iPhone.ActiveCfg = Release|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Release|iPhone.Build.0 = Release|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {26A98DA1-D89D-4A95-8152-349F404DA2E2}.Release|iPhoneSimulator.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -2203,6 +2257,9 @@ Global {11BE52AF-E2DD-4CF0-B19A-05285ACAF571} = {9B9E3891-2366-4253-A952-D08BCEB71098} {AEC9031E-06EA-4A9E-9E7F-7D7C719404DD} = {4ED8B739-6F4E-4CD4-B993-545E6B5CE637} {BC594FD5-4AF2-409E-A1E6-04123F54D7C5} = {9B9E3891-2366-4253-A952-D08BCEB71098} + {25831348-EB2A-483E-9576-E8F6528674A5} = {86A3F706-DC3C-43C6-BE1B-B98F5BAAA268} + {C08E9894-AA92-426E-BF56-033E262CAD3E} = {9B9E3891-2366-4253-A952-D08BCEB71098} + {26A98DA1-D89D-4A95-8152-349F404DA2E2} = {A0CC0258-D18C-4AB3-854F-7101680FC3F9} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {87366D66-1391-4D90-8999-95A620AD786A} diff --git a/NuGet.Config b/NuGet.Config index 7a1f28bea7..e430390d39 100644 --- a/NuGet.Config +++ b/NuGet.Config @@ -5,5 +5,6 @@ + diff --git a/build/ApiDiff.props b/build/ApiDiff.props index 666417addf..a7454b4a4f 100644 --- a/build/ApiDiff.props +++ b/build/ApiDiff.props @@ -4,9 +4,9 @@ $(PackageId) Avalonia - - - - - + + + + + diff --git a/build/HarfBuzzSharp.props b/build/HarfBuzzSharp.props index 16aab3911e..1346a1dafc 100644 --- a/build/HarfBuzzSharp.props +++ b/build/HarfBuzzSharp.props @@ -1,6 +1,7 @@  - - + + + diff --git a/build/SkiaSharp.props b/build/SkiaSharp.props index 97b29a192d..4a75a18290 100644 --- a/build/SkiaSharp.props +++ b/build/SkiaSharp.props @@ -1,6 +1,7 @@  - - + + + diff --git a/samples/ControlCatalog.Web/App.razor b/samples/ControlCatalog.Web/App.razor new file mode 100644 index 0000000000..b941644e29 --- /dev/null +++ b/samples/ControlCatalog.Web/App.razor @@ -0,0 +1,10 @@ + + + + + + +

Sorry, there's nothing at this address.

+
+
+
diff --git a/samples/ControlCatalog.Web/App.razor.cs b/samples/ControlCatalog.Web/App.razor.cs new file mode 100644 index 0000000000..a150824ac3 --- /dev/null +++ b/samples/ControlCatalog.Web/App.razor.cs @@ -0,0 +1,14 @@ +using Avalonia.Web.Blazor; + +namespace ControlCatalog.Web; + +public partial class App +{ + protected override void OnParametersSet() + { + WebAppBuilder.Configure() + .SetupWithSingleViewLifetime(); + + base.OnParametersSet(); + } +} diff --git a/samples/ControlCatalog.Web/ControlCatalog.Web.csproj b/samples/ControlCatalog.Web/ControlCatalog.Web.csproj new file mode 100644 index 0000000000..96936f3000 --- /dev/null +++ b/samples/ControlCatalog.Web/ControlCatalog.Web.csproj @@ -0,0 +1,38 @@ + + + net6.0 + enable + + + + + + + + + false + -O1 + false + + + + true + true + -O3 + -O3 + false + + + + + + + + + + + + + + + diff --git a/samples/ControlCatalog.Web/LinkerConfig.xml b/samples/ControlCatalog.Web/LinkerConfig.xml new file mode 100644 index 0000000000..5839a0fe03 --- /dev/null +++ b/samples/ControlCatalog.Web/LinkerConfig.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + diff --git a/samples/ControlCatalog.Web/Pages/Index.razor b/samples/ControlCatalog.Web/Pages/Index.razor new file mode 100644 index 0000000000..93ca07f9f1 --- /dev/null +++ b/samples/ControlCatalog.Web/Pages/Index.razor @@ -0,0 +1,5 @@ +@page "/" + +@using Avalonia.Web.Blazor + + diff --git a/samples/ControlCatalog.Web/Program.cs b/samples/ControlCatalog.Web/Program.cs new file mode 100644 index 0000000000..d1a7925813 --- /dev/null +++ b/samples/ControlCatalog.Web/Program.cs @@ -0,0 +1,29 @@ +using System; +using System.Net.Http; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Components.WebAssembly.Hosting; +using Microsoft.Extensions.DependencyInjection; +using ControlCatalog.Web; + +public class Program +{ + public static async Task Main(string[] args) + { + await CreateHostBuilder(args).Build().RunAsync(); + } + + public static WebAssemblyHostBuilder CreateHostBuilder(string[] args) + { + var builder = WebAssemblyHostBuilder.CreateDefault(args); + + builder.RootComponents.Add("#app"); + + builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) }); + + return builder; + } +} + + + + diff --git a/samples/ControlCatalog.Web/Properties/launchSettings.json b/samples/ControlCatalog.Web/Properties/launchSettings.json new file mode 100644 index 0000000000..e4da60f7ca --- /dev/null +++ b/samples/ControlCatalog.Web/Properties/launchSettings.json @@ -0,0 +1,30 @@ +{ + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:13961", + "sslPort": 44319 + } + }, + "profiles": { + "ControlCatalog.Web - IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "ControlCatalog.Web": { + "commandName": "Project", + "dotnetRunMessages": "true", + "launchBrowser": true, + "inspectUri": "{wsProtocol}://{url.hostname}:{url.port}/_framework/debug/ws-proxy?browser={browserInspectUri}", + "applicationUrl": "https://localhost:5001;http://localhost:5000", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} diff --git a/samples/ControlCatalog.Web/Shared/MainLayout.razor b/samples/ControlCatalog.Web/Shared/MainLayout.razor new file mode 100644 index 0000000000..63fb17716c --- /dev/null +++ b/samples/ControlCatalog.Web/Shared/MainLayout.razor @@ -0,0 +1,7 @@ +@inherits LayoutComponentBase + +
+
+ @Body +
+
diff --git a/samples/ControlCatalog.Web/Shared/MainLayout.razor.css b/samples/ControlCatalog.Web/Shared/MainLayout.razor.css new file mode 100644 index 0000000000..43c355a47a --- /dev/null +++ b/samples/ControlCatalog.Web/Shared/MainLayout.razor.css @@ -0,0 +1,70 @@ +.page { + position: relative; + display: flex; + flex-direction: column; +} + +.main { + flex: 1; +} + +.sidebar { + background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%); +} + +.top-row { + background-color: #f7f7f7; + border-bottom: 1px solid #d6d5d5; + justify-content: flex-end; + height: 3.5rem; + display: flex; + align-items: center; +} + + .top-row ::deep a, .top-row .btn-link { + white-space: nowrap; + margin-left: 1.5rem; + } + + .top-row a:first-child { + overflow: hidden; + text-overflow: ellipsis; + } + +@media (max-width: 640.98px) { + .top-row:not(.auth) { + display: none; + } + + .top-row.auth { + justify-content: space-between; + } + + .top-row a, .top-row .btn-link { + margin-left: 0; + } +} + +@media (min-width: 641px) { + .page { + flex-direction: row; + } + + .sidebar { + width: 250px; + height: 100vh; + position: sticky; + top: 0; + } + + .top-row { + position: sticky; + top: 0; + z-index: 1; + } + + .main > div { + padding-left: 2rem !important; + padding-right: 1.5rem !important; + } +} diff --git a/samples/ControlCatalog.Web/_Imports.razor b/samples/ControlCatalog.Web/_Imports.razor new file mode 100644 index 0000000000..04c7a8690e --- /dev/null +++ b/samples/ControlCatalog.Web/_Imports.razor @@ -0,0 +1,11 @@ +@using System.Net.Http +@using System.Net.Http.Json +@using Microsoft.AspNetCore.Components.Forms +@using Microsoft.AspNetCore.Components.Routing +@using Microsoft.AspNetCore.Components.Web +@using Microsoft.AspNetCore.Components.Web.Virtualization +@using Microsoft.AspNetCore.Components.WebAssembly.Http +@using Microsoft.JSInterop +@using ControlCatalog.Web +@using ControlCatalog.Web.Shared +@using SkiaSharp diff --git a/samples/ControlCatalog.Web/wwwroot/css/app.css b/samples/ControlCatalog.Web/wwwroot/css/app.css new file mode 100644 index 0000000000..d2a8dc525c --- /dev/null +++ b/samples/ControlCatalog.Web/wwwroot/css/app.css @@ -0,0 +1,90 @@ +html, body { + font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; + margin: 0; + height: 100vh; + overflow: hidden; + touch-action: none; +} + +a, .btn-link { + color: #0366d6; +} + +.btn-primary { + color: #fff; + background-color: #1b6ec2; + border-color: #1861ac; +} + +.content { + padding-top: 1.1rem; +} + +.valid.modified:not([type=checkbox]) { + outline: 1px solid #26b050; +} + +.invalid { + outline: 1px solid red; +} + +.validation-message { + color: red; +} + +#blazor-error-ui { + background: lightyellow; + bottom: 0; + box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); + display: none; + left: 0; + padding: 0.6rem 1.25rem 0.7rem 1.25rem; + position: fixed; + width: 100%; + z-index: 1000; +} + + #blazor-error-ui .dismiss { + cursor: pointer; + position: absolute; + right: 0.75rem; + top: 0.5rem; + } + +.canvas-container { + opacity:1; + background-color:#ccc; + position:fixed; + width:100%; + height:100%; + top:0px; + left:0px; + z-index:500; +} + +canvas +{ + opacity:1; + background-color:#ccc; + position:fixed; + width:100%; + height:100%; + top:0px; + left:0px; + z-index:500; +} + +#app, .page { + height: 100%; +} + +.overlay{ + opacity:0.0; + background-color:#ccc; + position:fixed; + width:100vw; + height:100vh; + top:0px; + left:0px; + z-index:1000; +} diff --git a/samples/ControlCatalog.Web/wwwroot/favicon.ico b/samples/ControlCatalog.Web/wwwroot/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..da8d49ff9b94e52778f5324a1b87dd443a698b57 GIT binary patch literal 176111 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 zds⪻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

r@R8DskCg$QY%d=x6zD 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

!LxQh!NmF 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 + + + + + + Avalonia Sample + + + + + +
Powered by Avalonia
+ +
+ An unhandled error has occurred. + Reload + 🗙 +
+ + + + diff --git a/samples/ControlCatalog.Web/wwwroot/js/app.js b/samples/ControlCatalog.Web/wwwroot/js/app.js new file mode 100644 index 0000000000..5f282702bb --- /dev/null +++ b/samples/ControlCatalog.Web/wwwroot/js/app.js @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/Skia/Avalonia.Skia/Avalonia.Skia.csproj b/src/Skia/Avalonia.Skia/Avalonia.Skia.csproj index ac029f1062..49311ae1f0 100644 --- a/src/Skia/Avalonia.Skia/Avalonia.Skia.csproj +++ b/src/Skia/Avalonia.Skia/Avalonia.Skia.csproj @@ -5,6 +5,7 @@ Avalonia.Skia Avalonia.Skia true + true true diff --git a/src/Skia/Avalonia.Skia/SKTypefaceCollection.cs b/src/Skia/Avalonia.Skia/SKTypefaceCollection.cs index 21b2959089..2b9d0b103e 100644 --- a/src/Skia/Avalonia.Skia/SKTypefaceCollection.cs +++ b/src/Skia/Avalonia.Skia/SKTypefaceCollection.cs @@ -6,7 +6,7 @@ using SkiaSharp; namespace Avalonia.Skia { - internal class SKTypefaceCollection + public class SKTypefaceCollection { private readonly ConcurrentDictionary _typefaces = new ConcurrentDictionary(); diff --git a/src/Skia/Avalonia.Skia/SKTypefaceCollectionCache.cs b/src/Skia/Avalonia.Skia/SKTypefaceCollectionCache.cs index de77c9186e..2816146806 100644 --- a/src/Skia/Avalonia.Skia/SKTypefaceCollectionCache.cs +++ b/src/Skia/Avalonia.Skia/SKTypefaceCollectionCache.cs @@ -7,7 +7,7 @@ using SkiaSharp; namespace Avalonia.Skia { - internal static class SKTypefaceCollectionCache + public static class SKTypefaceCollectionCache { private static readonly ConcurrentDictionary s_cachedCollections; diff --git a/src/Web/Avalonia.Web.Blazor/Assets/NotoMono-Regular.ttf b/src/Web/Avalonia.Web.Blazor/Assets/NotoMono-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3560a3a0c87b328a63c3c5dcd2020f3fc32dbbe9 GIT binary patch literal 107848 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%0Am6uY2R}KQC=> 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

#cf7b!d>yWeyc2A*xN`Qh-!Gha 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

`heZ#1sPc&WQ!|z=}=zYfAdfT`~ ztsZ??=#RG&V%mFS#tt2GTiTKWVQ#Vo;SUHYlt>jq8wsj}{HVwkm%+Ea7yy0;oD`GA zT=02fHF%lqETp_fUITuu{Ev{zt=!;26$H;wIpD2TYw*hy;!&5Y0`T_gD)7!~82Bw} zH27Gpmyp_kq{%`iJ)86#_?o0OLQ7hgR1SH4(p%u~m{Nr_IZaM*kEu6!Kht&KH<)e! zztJ=Ve3%JwnueQ(gHJKd0-vq#5mNtJ{~COs8F@3OnUO2=W#%iuJD59wcQ&IG=IhMJ ziFva50il_vnoA)6!@LRneRC!FcJp@do#xNLcbmTg|Jqy)zR&zUc*Gn5KVm*2q@fH2 zZZ-_?6vG03mSF>T8ZL03kq_S4=my^1xEj2tfwCLd7=6L7Gf*PqdZQ40pfM2q1_R|X zh8ZZA@du*_e1d^mGVV7X63Qq}M*PY4WIMPk*$bYYoDQCuoC)4IxhZ(F3@Q@Q;!|0{<)-wU_*L zGHNe*U-Gv?ro5Gc_D$KAf*MZQk%Agd*_DDZk@98Am*CYY-++IY@|}>D$rhB|a=+yf zp;=~FW*bKIuoi${X>AXm4p#IQYZq%5$X%^n zA$Pa-h1}2jd&oChZv-D^MSEFqwvLDY9afAQYmv1W^25+0()yV7af}_WNEUf;EkqlP zukNA{4s8wJ@5MnQ*Jxx+F&;3c8V?$;!8Zv6l|ol}LCv)nMyM{(r^OE}r9k=-qv`zE zeQ~Jfx|y#6A%)lo+J}f%(Yc!#WnV zHxczVLELY>+j_s4YJC88h&C5C%PPyumerP5EM->1nryXMGp+5c{Caamtn_{(E&$6bX+;)^aY|XM}TXU?r)+SWn z*6Xa-TSuezZbOaSj{3XPIsx@}kM&;bB-GAi>;0(5sn!Rr)2t664eC>vy3h+pi=_4) zyY&(N8}A%DQuuEgJMa5{zl*_ z1C-)}7Sj4rn)3P79s1JL9p-JR)v1-K)t=FoTw}7k!c(LlGEX#S8H?N%Mv=S1Jlnj$ zW29E3Rv5F~hl~>QHuDCLA_uA3rrYdBBhTmrS7c1~6vdpoqK-Rc6!DWB+L#=3NM$ai z8h6HYN}JtW;;|TT*C3Z#;Zg2GL`DfYq>DUye4dV;CY~W4AIh-JSnlbVyqW!48Rf<{ zPZMK*^5*19gm8MC)&(g|ExDG~mhILB*2ONXv+}Ibt^(&VT#H;*ce$&;RbX3+Uu&Gl z&f4QDaF@HwojaU6Y>Q*gWu-jCiSmNlBew&tI>xD1JVR_Dq&V7L>E7*8&SSR4&Pr#c ztp(E#8>L9D(p`>tm%6fTrS>kaX0C3|9mFXYl(s9|KE#pgtaMo&Jsdsg4&}!&%xOoS zn~;p$Azu92;oKFA(`9vK*Tm7y)yvfjv4Fe!xz@Rbd%3$jp{)|z4K-QU)oHs5lq2p? z9x78E;x?gnK?@rwH`g`VpswqPc8WU+LvBbthc-%Z@#o{ATk-Ss4CQxXgKk>d;#%k3 z7IU6e-aT=b*2aq|0y=#hh3Ve=-PLTGcwMkoW+{IH_nzqx|1iJ8fjLO(pv;l`Y zfbY&0jl?;ku{c*W!6?2!G#3{^8(b_}ic3VkXe}{nnM1Rat1I3MEl({}Ag$xmYhYh_^8Z zRftXEJ+WDA5nDy2*e14%{g}fJi=*P0h)PUh@+@hS4(XCP@@#pIyjZrBm&jH!U$&NQ zWLsGv+slr?o&DwYvQQ3`zn6pLU^zq%lQ+p*-YUn)KghB2HhH@oFYl7~$Vqat zoFX5PQ{_xKPd+W@%je``xkNrM|16ivWwKPRk}u2E@)cPoUzM-P*X0KJuG}fBTC=bgc@~HfeJSL+`D5W%&q;zEl?6WHekZ&7c-7A1`JF2VH?^F-fQ}tGT z)HSNFDpUj14eCZ<-cf3-x?PP|MQVb&OWm#RQTM7z>OM7DO;J#TLrx@z6D-)Y^otF<0lPoVcVlQ!s= z>TUEZ_4axPy`z4W-bwGQchT?BC+hd=ll1%a$@;_kbo~*1hW?~JSAR;Mr$4RF*PqcB z=+Ej4^}p)N^-uMk`e*ts{R@4!{-xP&c9@-Jm)UI&nnUJHa~SwJ-6%F5h6aAbm|;9> z%rqW@E`HpYZ9HkrHJ&o&8BZJYjc1Gn#@Yqxb{d}p`-Dqe5-k_`(Mr)8)CTgi(Q=ssIvaEj=;COlL>QS5iaOX?|k06FB#88D8DiA{jVyHm05s6hutjK;fyRMu2aN~a z3z`JF4}^ZFKMa~4Ez=(X%>X?Wt<>j%o(9baJp)<*+J$gmpd@I0Gg{wlk5-u-ASe7> zR6?pLsu$sj_iuT!BE>I>Y zjM}?Q*imx>5F1J%?*dH(O#?jyLMh~Q&?BHnL60LGdb&J@XQHS%5v|bC;yT(wzYNqC zbUCOU2qQ_y=+bXS>LWn6fJTBwfq;MYJ8-WEbSG#62x;qggPsK~1U(Nb0sR%U9P|RH z6!ao!1?VNvO3){u9iUG^J3*g;sz9HEjv$?*p#Ol5fublit>sLp%WCu)8vE7g2i52Y z)uQq7I-v5$%TDD+nSZjJ|Aq31X2JyhmI7@!9_@Y?=pN(_dJQcWscEqYS}ao2ViDv# zqBQ6=bF>^Kh@hn+XsHNVDuR}Zprs;csR&vsf)2=xx+qRcNm&v{%*tiWX7oYvk%1Dhb-A8f{Z8m!SUt z4qpvq2K7c848V0hXaQ&uXfX&qS*^mo)u1xaHhLaUSI9Dq=r2$+d(m>eG0ysdR)JQ7 z%0O?T_VQ7Om8ic;`4rN`h>?g_F2++!a9s*o2Eyo(NJp-Q|0|$ZA+H6!0eTPl#0-Qw ztwfzxqE0K-@9?`f^3?~|>v6pS*Be2kUobiq+DM_lsaa@)*`PU~x%fQ~gb}O$0$PT! zt8iTnDg&(pm4h~ewjlggP$dYXR6+l#y`XB)J`iR@br9D>pdWeGz+A#Jx+Fa=G}ix< zko&!;108;4(2f=IHjIhM@I}pGcEM~!p`ksi@x-mTcN=u78_(0oucBU;*pm>Z5-a8} zL`Xf36}Jyz$`GauwMw;FiQ23}Emon%s!?Oq3(HVrWvH<-)K(>Gi%MRFl2eOTqU4n* zd8OJ7+5_5$d*9;TAzXh%o+Mh3__ZioBlMdp^qVTQW0ibX3_&|qaeMt8`Cbe86O?Z! zp4RZR8T3045D(g>3T;z`wy8p!RH+9MCe|+1XcuaeD)lt3^AYwL^qK{@K8x#%xURr; z8?GPYO7;IWuG9wK;Cc|x{Tuny<2gH?a=foM!JSg%xfFRWt;usK^1KB7ehKniiab{% z&y{$x6nQR1p39KuCCGCb@?3^Imm$xk$a5v~yaauz6nQR1o=cJEO5}M7@=W7p3Gz&1 zrb<1BEBd$k6Rt19AF}|;umokGJ~R$xs6-jYp$wHMLn+EoDeTB$Y-G>~K+oqMp4h8v zdvgRih;UDi_ek_aVM3p(!f2!(SBa5Wt$>8E-m7i33ba@SN?(rBmm!S``4L7Iv>>&b zJb*aswp>}gmaC{~xpLG(1@cgVJXF-QTp4O1f?6m;Eksc2GL$-^J^+0PLOQ5{GSol> zHBiR7s2W%3Bh)~}@m8!rTU8(z6=;hJt|!!yIPZ8FsMle%qNLR*LuF0tRVC!RS^+(x z1uK#FYBd=0jkp4Rpe3u-NL(L8%glm28$`1X^}r`_eH#8iJT^e5iU7tVU1hspQ!u22tjREt4T?VlIDzsf&QS@ z6iMj6+vzD)i19xVPbo@?TUn}pgkLdEtMMi;u5U@dlWwINgFbCQe@0MCb@gVfW@0^T zE}kJ>nW+0oN7m>=VMFO+GYR!0v~5ivip?fZA?C#P$E>QpNT>m7)k@S2%?nkmOK3ib z2R)P5Vv6Jx)Pk^_?n)1#Bf{Cxykrz(9rZ8>h|YKfGz0V~ zXeQ_}&@9m7pxGc`R9=Bn4k|eZA;ejVd8`yYv=sAIDdwwE#956vs}W~4;;crT)rhki zaaJSFYQ$NMII9sSt!gU~XJxX)np8!PV2yeNYt$oHqaMK;^++;CUa|qg9G#5ONU2)x zLuowdgRFCqgBZ>x-9uQL^iK`mM*UP_C0vD-a1~azv% z;}#{u`-E6J_^w6u=0Xa*`a|r;S9Cw8jGS+uF&8z75oXK-Jq<$7GoXPDU|wT62$W@vfH1G3 zCaO^r)u@ST)I>GPN_Ae1ny5xiRHG)UQ4`g|iKqJGss4DX5>Hj)sY*OmiKhtrR2fH+ z)_*|9KvBdZIHnWolzV7HF;KddNVgK{RwCU>q>C@w1vKhJ$38uZ@ir6R{Tu#64u7*h z)Zg*HMESVq{}}=Gd0Kz}J4^X%&sx(=n?5 zbgYeWw~ih^A=F7{gv96Sm#|J>t{>(9g5QaG|Mjwiaf6je!|~Oxp?Ij6f8Dz$ZHJ{^AT9j<>4c4kNthSnUccED{gu#4gLsp6@9Br!LMa&3rTES+|ae{o8+5zzPoMh9}l zh^@psgW3_trHr*6kHVCMr|2yKzH=TQoptK47J)-^G{>5-d96EH87ZBZo{6P$!rO)f zZ4zBlo0A5mpK6~vxvdw&nY<@BRXnxPwy70ktL=o}b;Og^O`Smh-~T|bI^k_{-9mF; z;dvoiQCGV}=f^^Fh@XfB{jJW7S=-~#vm3;d@myd=t@C8uA2H$%kEN5`r;xF@ITY4x zwa>=#!(#vzMzu2sMrCXcOc;NOPyHMj`K+ladO9I3l)P@9PK-T1d)5yJ{c$`_#8R&Y z5`V{^gx-n0AxIe8wdut}#eGgaIuKL66ywkRk}Jwlv!;$;5!>;0;M~_~!Fp-+sP{YZ zXT5s~@#7O;V!(Rx>FJ!4hdTM4dI`a<`Q(46(vtD_eV%&zb=_Q?Y52NN|J1MFHg-z=r?owYV$E821xO?4r}BUD`wjP zmU7+n>;C$wSbqNf(`(y?dnu)wn9q}k`uX{bKZzMO;oVJbs?|0qWuT2*zev; z#CuCaG1m2~-y`eZJ=L$%?-334`&i8Ap{FeUsnY-HdnYg3ndJSa)A?_NINk4Czh+(% z>n~CMC25?&$UoJZ>@>3QYvuSflKNj5P845EK z)~0x?QyzOe6OX$#^vN|`JWM?8c;nR0-xMMq>iAunhwIFE@jL(RYr`WXUSI$1+?;88 z4d?z$V?kTgyhDp$YhyUkr}o}|SNiYe1c>h^#vg0D4Lj9CAK|;{~TjI(4}XxKl|_p~%Y;sY!r zhh+6|JP)w|vERtuNmiP?-lbVAp?)cz6QYl$aoj$k;rrx!vXoB##F^gt?Nd0@9Q`KY z8?qiaC4&D=a`AH`Z78Qher{wZe=f1##zUQ4-$WEIKSv6dW#Hk4O~!M3m3vp6NMrZ`{oW5IoLUO z6ym!F?riLz`yk?d2rdtM=FY<2E3>g?AP zq71I9cpW?GcEet}Z;QUzPj@5IsetQ;eRVe@y$|3D#fNYM#7A%g#m8{J7oWfl;+=MH zz+SsY#ZYk!+kX$ke!EKCj6HXqVuW-{w-_V6(kuQTebOh!O271r+hmSBSB#VA$@9cr z@_c!|xLaO;o#^k87s?C8M0t_CNZgBkdRvQ0*rB(Ln2KF`+lmLVQ}2~xn(QF262*K@ z#3S-LIZ({Ne!YXlZ0y*3lXwC<_TD0%!mhoe#5~%!S3HeWwCf(PM6a~iF{N(D*h}V$3Blsq7wTC9}pkQgGz{<*e5tie1m<04Y8m02^Qb;85#fPb1@>=FStPbz~^H8sJg1I z;y>6qxTiRVorABHnz~M1hhrtKSJz`3+TW{DG6lN_-zn3vbMQo&g?)n`mS?L+)Fbjj z^{ARDn`77DXJiZP75pdJ4*LZ^FFUBEYMJbaU4u(yXY3rjQg+4e!LP{QsaMsjvZwmH zS|@v{a#b$-sg3F*c^&o={zTq{{e-`eH)Aj1@8qrO-|FA;PIX9g$O)QDbIIA7NAt)h zv@|VE&e77fbor!~p=HRqT2Kqhr?gBhQ_j<}v@H2Fb`)+a=WFe>cJgo7MYyM2r47&q z%JsBgu-t&%g1gAK^=tKhaN|pT1uO^&j*fR9HV^PEuKBtNAQ-9(E6QtMjpQaF%M0eS>}K z65}3YqH2Y+GwxTdv5W9*bt(1?{-f%MeSzOnJ+LqE$Eq*(0RBqdV0>*HRwIq0$wJ+Y zy?;~GeaT~z$Ef0zl9UqlaLUq@rD}T03n?$CN3hRROlyRoHBvCzEpS&rci6DUlO3)# zw1@*T=@AX%y%8+f&w)$ANN3&m+ax;gYel_dmeb!D-?RIE8(_ z%OU?0PGQII^^o6$Q_xr&Pq`?9fY4EbDnE{|~pQJaNpHGYZ}x%S zycHqGKzmwPd-jF)9Eb3?Lx)q>?ph57wj})}$WRr2SZv zdRUXDuqO3DlRhPKuzUJEk&PYHpB5KDt1g1ibMiUi#ct}0g^xAth0w4iq8WBp|1&}^ zg|@Xp+b%6y&VXLtf_*hVkROOPaw~MS4jql%x#dUlBjK0Z zW80{ukD|By z2WKWF%VU@!TGLMQ*t;(Y^TegJpFCt7B?Q^7?BZ(dEbkEAdCsu&oMFM7aRoMWFHi;8 zgucCMFB+*1s)NYHzVjW$+1PvjDiPqhBn@-P?}SfvSKUQRb+x)$(6017L>6|Y?Q9~dPRl|f|-K1_p$l+=@Lf))yhCD)zfP9O(1tCYOkq9|TjY8^U)mULux2fC2 zS!$dbhrHdcZb#n6tMQ_@xCqCjQAf` z4~q^ok0Sm@)uTvvrkaTy&Qh~Pwt5`9s-A`2_-BjG>IwCP=!AXw=Rkf^JqdZPnv2w* zQcofEd1@YFep)?^@blGt$j_)}ApcSQ5iu`Pi^NsxIrW@KQ;XGN$bV9Qf{b|@d0VQM zB5!|Df5B7B)G|Evf_edRsVas1l6nd9O0^R5DzyqN^|E?dT&7m5)sSCNuRz9(j@bUL z{tmuItwGJdu3kr3)~dCT|DpZ?d7WB^v@qYJ-ZrX@@PAjm3;zmL0r_9*UywJcO_1MH z??K+IHbZ`2y$^Yd+JYARKz)E#-m11j{!o1gxl&a^{zzeb0X=L-jeVj%L4EF2J5jfv zsn5`M*ew^e^tt*RwX{p^LLRRJht*+>izDg?#>G)}6!L%6e;^-I#~?>l zRA8XtARA4S8cwRgc?b$J{vao5NsvvN39_!~kjPs;;usx<{~rZod^t~Cd5p|uc= zw2QTiMJ7&NXbJfe?GnhXv{sPwwS35}wbqa?)h>nHMr#B4GVLj1f<2F-xe8=x6*fY2WSICb8VnDP&6eBCoF{Fgh3ciIDz4YeycuS znDsmKBHJT2NPS}C!79;$h^d$)Yyk3GZf75Z+mHu~q4g7)gAOq)t@6x|S z{Co60kb(Aa7ibUi5$uGXVwUD4VJ6HcJivS|VZnJ3ZqbL%jG$fO&0%3TXPL9GXFpIN zc3`~6xCdva0R@VlgaU;NDDW8(#+ea+6ec<&LR@LAH`a>+oE7mV-Xac;bi*s>KM2fhGP@}kvP@`y1s1Y2fk?@)d z30iBmW7LRNgX_YmF^^H>6^t757&RJ<8co=*7d!ScQZz9}G$mj}OASUObm(Pt*b#BJ zL!5*T%|KH)`HeB+b@1zgeRF#NE$TpAz2M&)P8WUPBx6S%tIED2zzDJlR+as5mvE$& z5u_EX$^pQ&gW$R_j=Yv}WM9US2F`++hWoUxH8GAfF^)7bjgfgv+GOfUv>u^RCp-eL{W;tX+nPx_r2BSLcMBqL6fco$AG?lg&i!AZuQQoIi*dEG2|-7IA=NO)^!c0+SJP zHA%a)Lni!cl1}M_?2<0Xv?7;`Xmv)kx(vvG2*{8Ofrn)nJX>ai*J9izvKHeuNx-;G zBw<{OY$BT=4}^3rGEe3~rZv4qHkC~w)5_i=o5^O7X?<^z&1G}Qw92>07P1B8S{!U; z9PDKrY-JqmWgOg5UMepYbYf2%(NSI|FM~{&xTCyWUJjX%vBAjLjPrbO#w6YobO2^0 zlx&h$;hlk$opHisfDv;moG^KUYVzaF^aX^pp3>dl81-JvbOK z2XT(j6v*@jq95btB>9khNc3U!+*v-1_Yg_)5%~ywX2=jbtQ~AC89{z;0 zwFI1PO~BdK1e|SUob6?tZDpK&1#q?kvc$9xTta9&4`^G5j~SS|9b@i1WmQ)A6Y{>6 zk#}E4-UAtVpRL-dc0fXezYSFY{B36ZZDRZ_72$6S<8PhucZ%w!x&e6*3cp+t3U8|j zg*R5cR4@1w{%*$jJ5v$z)>MDhADl3E4$h1!1hN^R1^`hFR0H8pDBR8{JcUvC<%&>v zTSnoRGYW4D6h0JTh5?JGFc!Bn7EfU;Zf7i>q6mv$t_X{_Wh`!2qZQ_C#^RbHEZ$fV z7B65Ft}zO4%=lYl{Ow`L7r8OSYR?i9w{cJ-Kg3^F0_{*1geM&7*`dG}=G-HVZTPe$GzM&9iid1o>5zLJr5 zHY4xz)dIBuwfC%gR-Df$Tw@g8gHia^jKX^`3cs3BxJQ+!5|o9oxW-sK%vd~AEmzCo zLs(o>FRB+2=L)p~aS|fe7?C$)MBafBc{4`j9aNbrL;Dgg@4&b`g>iXz#^pA~<=q*V z+ZdO7)Envzq)zBO2d8`e6Y^W?EyVwhdIy~Fx}EWQ3gdM<vqQLDU8>17_ZwH zuV27;y(#1M3mC6AWxRd?QjZ0%h6XFVRwj;D5&mK7|o{H%9PX8NqjB1mBere3%h@CS!LEXOkU3S-w}_BZh;61tN*gjT5bKa$FbT*SqT7 zL`eUg-a}lb_tbldOZ47)U(trw7!Lh9eV{l?|Ghp)wA63VhlzAvbp(0Uk&0Ev7;&-w z2dq7OSbN-!m~jG~xCm#^O%|8x_v^(%VIA_YxDaR2%@CdRNA)@I!HIOD1MIe3)+!GDb-f(8|4;PK;g1vS#8q^L z9ZEzi7Ki?wegI*<*AJpB|JEbOIjvq&vA|3c7n=<;)|0%3>1<9lV+~1X--)y7^gD5( z*=G*Ght@L}@p`5OuVf5f$(W6a#za05`hIa8uV>uG6UH2IJ+Eq#asJ(lBH8$x@jBKy zYq970HCV}PhYzh}l6ei2!E2avc@5*_HOx7@hH1oWn0#Ktq$K|#`8F(@lLVa@i!)w_ zwg)Pg!-}9=aWWj%DVO06ofGcobHZC-Er53-K>n-oor=y0zlBlU5k4pUD4i27pQBk- zE~azB<)7%BaJhs|2$#=eKD|o*g-!^UFJPV;E#IXR!sUB(LbzH%CxmO2N$ZlzwNH}P zC#~0ZCcTyPmi8H)5Uy3x3E@eN=!Ed3bLfQdq+xVIc+zmw5Yv#Po9Tq`q!DyNc+xF& zLU__hIw3siF0|1PrcLzqz_bl*;Wq6;ooAW8qjSPdN9dez9A%4h!U5!QPB>oA;e>GA zM<;~qm(mI0dROyj=Fjw=bT+u&i_Qku`F=s^@r(faQ#uEm(fdqjLrtvXVKZ<`fNHITz`Vj2G^gY zv%&SbbT+s?pUwu?pTXJS_v?Q$rX^eS7wA-Q^F?$jxVZ(L3T|#ir-GaFaVmJ8xpi{W z{xZr&M zu8h|PCoiPAgpIuS|=i?Z_}P7G(4&TvqFxi@oDB*2P?UQp|ZLQ;KmH7~&rm zbLlC;mbScL%Ub6iac z+S|G~n+IkD=i7SN`qGtXXc)EAJ>xZ7VMZxkGd85J@JCSAyf}3_)WsKE*rWY=Am3KN6wAyCbcEfiG^@5?{jCFw(UCIJO&<73{E~6e`n>)Zjd0RTW z6wXUe@l8sr4D>^5r39_MslMHTB|(8W7Pw|)jPp&kE%xmWE)OhmHg{z^o7bk_X#oq)yW?M#I zTeW+nf4-y706+DH^s2y$z-rgL0eKm(p@;5AZ#CSZv>mpcj{bo)g*yV9(q}lk_$zI@ zac{mqVyhldmeHJgm%G4rz;+0EuA<&FG;ANkHBGf$Q{(PkU8p^lqt15Oj@grZ)xnnO zGaUO-#;w#B?Y(@>?J0p7?nUXV?RLA@9_TX6p6!}vZ)|UBZ((m8=;s|zZ4+#1Z%1VB zXzxbPc=y=**$3K(1dub=R)54k!al}6-hQ`zvVEF;hJChuUOGlXdKHz#-xsE1|W{#GDfsQtg0!OFxr1%)3enex#*~mYIh@L8p4DkE%Tr;?p z&{EW^sXSb!5`U$?32Lr}C|$=O$FRU*)X+%BSVxg#Vp?U|4vfx1#}r3#pqEcMW;*8h z+B@bu7CA}+tDSCtu48#%g>R~3rK8NT*Rd;}m&9vB{^aLa>sTKj*Y&S-kH)cMqkpqw zv!gOT8WXSNPwkmVjvbC&Y0DjZX%tdBCz2!LIO#M)TemOQfnh$OVgnV0|zt4IZK_Zh^Vz=vCg zIgbqu7tV8yfQFpyE(&aNq24mqxl&wq|8kd?YRlD)o*Fur=MFKT%oV_VC0yD5DZZ&e z-M<`RB7qgI#_o;e51JoX;@J`mxtbz|7J)Uc)~?nR#?=m^Y^$rIJA~8R>GXAS16@P> zd;NQn{utL7gdgJ?@46fLnjhGdvB2LcV*%2e?3zX`lD40mYxV%cJu;{Vm%HX6{6g0f ze}w&)xmLJVLpQB)mAl?{ZOS+lsB&#}ZFg<=jP|y0Rk`-K_PGwa4ttuz98LGHbz6gF zZs&k9|Na4GZl61pvDCXM<283~V4Ay0=dJE$I2XQU;GnyWf4{pRFa%*bVIGh8JGr~N z`=s~74Au!$fSHZ7SCzZJdysor`aJhY_gHt)0Ka>pdy0EwMzy;b?Oo`e>7D~O-@Pbf z8_l@xjqVb6iNDCbJXqph=`QnEX0&&&MH=ffD%=~rP2HRMWceNLUGBZ^{qBhSD4!ue z-IMBZ!}&d7&rVMxPoAf_XB?zfptgZ>PkV1uPZv)Q&u(vur>|$arx4c)&tPv;xD?ND z+#QYZ6FieVQ@!1Af0k#iXMtyNdOOcjPpM~>=QYnd&j!LDcxnsEIv??F3zmWJ_EdYb zy(!)l|60!h&mqqt{L1zm^CrQ;*K0=#UT*-tjXAXzfpTwaxOU!--frGr-hP2i-htjB z-Vxq0-tpeM87)ln&hXCm&hswxF7Yn&u88+`?`rQFZ@Kqv>b>ZhYiVRq@Ahu>Zs%(i zPM_cBJ?K5`-$)~a##0&=QEApRXPVEynJJW(o7N<)8Oy*|#txsD2 zv_bLF5WiB(GGSDu4NDuzG&Ze>^hDakv?+9r%Y+}&iqmGM%}JY|wkWM6ZFy|mr>#sY zi;u|Qa$vT#Y3r$Pq-{*wOq!X9#t|Wkv|VX?=^89STtHUAmT5nTjcM!16DZh z0{wi--_mD*QhmGYx=x3DZeJsx9~1^P3M{GXe0i7ynx}8~weq#~9q=89qdmI%+WWfr zdieVK3VnltO6oY@aNlU(INyZyKwSqEHrqETPQFQ03eG9=MJZFf6cat=+g8u*^zHOb zPjL0h;+y50>s#tu09p)Mnx0+P`AU7Oe6RV|`8N0}d|P~5IBiY?dDs?5uSlad-fI6a zl=_hGSYoXZcIr|TTpllRdOwVC%5w^wJ>A=7SWUVCTpI^^r8k9Zk={DJU3$m#Zt1=J zy8;IXlo37!wZzi{(}$#wNFS3vKK<_W$?4P5X8?t*NuQlQFMVP95@5l4ZJn4GlH>V^ zU*q@VztfkcuSj2=z9zjq{q6Kk>08sc6MjkGlfEzgVESRd@LT;l$m#d_L+G8k{wDrr zz=#Lg&7c(t5LHWm8>~x~7e<1`{_g%xfrI|;fp-2~{yzTx?Sb<#9tUCVFw#HPUj*E} zJY$@H{s6y!qJN6N7{6!wmxIrNo9|!bFTpIZ+`k^Q(qHCZ3kg^N$Zs4u%#X44OavGP z^MHRxMj@Vsp7HMm?Z?_;9IjaH1SV%Fq-~@16$T*a7j9efokP^#9Ef3g99#GchxEtUP zK$+IKK+Ruv!MH%%YXb8E3$bcg5?BT#3EUn8iiYo+KzZP8VC`uLyEU*q=nGT@_5}8|MPI=x;a~uG z7Co(`a4lw8YtV_SFBl5u_TSWhQ?LnKGa!LB!Gd6?VE163VE^Et;IQDx;MibMaAN0$ z!70Jw_AP@mgL8OIxd?GB53UTBbvO`Q8(fdKIjf`i?kLto@pe*XL~|e?j23{u#qx6I zFECGMewg_?%md6HXMQ8|qZCi{U5@h!_8CJQ-_z*L(c8rFy^-X5qbKPJQz?Fb**0aW7aG2QLVd=UFQf9wGKmoneSK0h$u zOk9p(PImATU*U*fM_iOp9>jgob|jOJb~Tj(=YfLbs~v^8gJq3#_y*+xU#!W$n0a|r zhde!MLHNrljO-k}3O-AyPVg-8_qbd-hyQ`YTtTvYke-!I`B{xaKF53>hbiQ={=w-! z&t-2!@rbY3zl!CR?4QE1b!Q%8|93dddz`nYD1JOe&wj~1YuV>8$6Uc7|H1Ke<}gvp zzr31b8%-QvzllG};Rkd0;%FQA3}U{R`3&N6I6w6V4!@SeKgO{QWd9}1C-7bR-+d`Q z<7byKe>2(>KCdxvPh4iQyou!$me(+Um3~jvwqgZ~FWzN4?&OW8=vw`I<#N`YcL2?26uOqH* zBOi4?%NlWcBZq&CWiPk&o5Z!TaC{Y^*rsvF0~AucAAJ%&cy$c<`DknKyP5M- z^15gkJ}aWPB8;EIJi)!XG3Q5c46E7y@60DgVP_y>E&CSdqzi}nk?zWN9A*adIn1x; zyTe$%h~<&Yz07+@ry{o2EZ@ewJX*pzq@3Ryb%1k;Fhv>uVTK9`5&2Qa?C~1+YvI%J}(o8l?QPP z^E=poE%QC>L;vq5<+afX$l-JBzlixu>>uF#?`8fK^9trK6NgO+)x*D;-^rZxq7+;C zZkT-{EE_EEWM0YqCFVace}gzIrYW{f%uAU+$GkK2qJ&)t-CfLl9`k<@hXo1w|B3nY z%nvdDC-aTmBD0A{k3<)O|A)9}!~9X^L9X+5%x`3V9`h|6Lw~M~zq9-n^M%a49P{lg zk752Kaah?<5BUr8583}MmhWPICG+c3wkDEs`4`AYVAkT`T2ah-ks#kKkh^A+qfo%t;Cfi)Ag&NVEzWxj^_D&}`Gk7+iZ zabTfM;Wx2=FXp#0znS^N%pW1HT+F#mVJ$*wu||URKFRMekHy3D3+$UH=06jMRVui~ z`N8*9lGiaWW4@O8Oy*pQBp=C1e&z;q{_3WEOtN?*nu|D}U^$Ch{{oWb2o^aubNKc=4`#5;Z7Oz?tR}I~Ys{0PeG#*j`GxFr zE^*+KKf`|ztT7}`bjM5$8#?lTlk;{q*UU5QgVVR+&wWq4#Im2~_iPUH8HI^1V);=H z?_oKEYdFMXe+X-#uB>^octq!LKVQb-|HOHl%<>1!-($Xtjvf z^Yhtf6Y~}9vzX;)Ifg0hvw~v?u@Bb?v=H=<*vdZNGM~qMB!^$dIR6v&c`rH`A+y=P z2mAQQC%T&bCv(Ub**`YEvRHnN{mY}B@$A>^Q%xNIQ$sae%KTr^BFGgiKg;0-$#`n>~>qyGmKPU$ISMKdG{vyjSbLww#m>tZYCoUCp9^--$AS?$do)6joZ07f{&-

  • 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

    +|6nEzo_e6@b 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

    `2@K*efKJ4nsG2F9I_Jt=fL)#= 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

    U_5I^dp};LaleqZx6o;4!;y|v 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 RNQS5=vT>qjqt?3N{{h+YHRAvP literal 0 HcmV?d00001 diff --git a/src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.csproj b/src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.csproj new file mode 100644 index 0000000000..b89bc556f7 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.csproj @@ -0,0 +1,57 @@ + + + + net6.0 + enable + enable + Avalonia.Web.Blazor + preview + + + + + + + + + wwwroot + true + true + + + + false + true + + + true + false + + + + + + + + + + true + build\;buildTransitive\ + + + true + build\;buildTransitive\ + + + + + + + + + + + + + + diff --git a/src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.targets b/src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.targets new file mode 100644 index 0000000000..e9052fda88 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Avalonia.Web.Blazor.targets @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/Web/Avalonia.Web.Blazor/AvaloniaBlazorAppBuilder.cs b/src/Web/Avalonia.Web.Blazor/AvaloniaBlazorAppBuilder.cs new file mode 100644 index 0000000000..65c73b101a --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/AvaloniaBlazorAppBuilder.cs @@ -0,0 +1,18 @@ +using Avalonia.Controls; +using Avalonia.Platform; + +namespace Avalonia.Web.Blazor +{ + public class AvaloniaBlazorAppBuilder : AppBuilderBase + { + public AvaloniaBlazorAppBuilder(IRuntimePlatform platform, Action platformServices) + : base(platform, platformServices) + { + } + + public AvaloniaBlazorAppBuilder() : base(BlazorRuntimePlatform.Instance, BlazorRuntimePlatform.RegisterServices) + { + UseWindowingSubsystem(BlazorWindowingPlatform.Register); + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor new file mode 100644 index 0000000000..584c77a62c --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor @@ -0,0 +1,19 @@ +
    + + + + +
    diff --git a/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor.cs b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor.cs new file mode 100644 index 0000000000..ec3d665597 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor.cs @@ -0,0 +1,375 @@ +using Avalonia.Controls.ApplicationLifetimes; +using Avalonia.Controls.Embedding; +using Avalonia.Input; +using Avalonia.Input.Raw; +using Avalonia.Input.TextInput; +using Avalonia.Web.Blazor.Interop; +using Microsoft.AspNetCore.Components; +using Microsoft.AspNetCore.Components.Web; +using Microsoft.JSInterop; +using SkiaSharp; + +namespace Avalonia.Web.Blazor +{ + public partial class AvaloniaView : ITextInputMethodImpl + { + private readonly RazorViewTopLevelImpl _topLevelImpl; + private EmbeddableControlRoot _topLevel; + + // Interop + private SKHtmlCanvasInterop _interop = null!; + private SizeWatcherInterop _sizeWatcher = null!; + private DpiWatcherInterop _dpiWatcher = null!; + private SKHtmlCanvasInterop.GLInfo? _jsGlInfo = null!; + private InputHelperInterop _inputHelper = null!; + private ElementReference _htmlCanvas; + private ElementReference _inputElement; + private double _dpi; + private SKSize _canvasSize; + + private GRContext? _context; + private GRGlInterface? _glInterface; + private const SKColorType ColorType = SKColorType.Rgba8888; + + private bool _initialised; + + [Inject] private IJSRuntime Js { get; set; } = null!; + + public AvaloniaView() + { + _topLevelImpl = new RazorViewTopLevelImpl(this); + + _topLevel = new EmbeddableControlRoot(_topLevelImpl); + + if (Application.Current.ApplicationLifetime is ISingleViewApplicationLifetime lifetime) + { + _topLevel.Content = lifetime.MainView; + } + } + + private void OnTouchStart(TouchEventArgs e) + { + foreach (var touch in e.ChangedTouches) + { + _topLevelImpl.RawTouchEvent(RawPointerEventType.TouchBegin, new Point(touch.ClientX, touch.ClientY), + GetModifiers(e), touch.Identifier); + } + } + + private void OnTouchEnd(TouchEventArgs e) + { + foreach (var touch in e.ChangedTouches) + { + _topLevelImpl.RawTouchEvent(RawPointerEventType.TouchEnd, new Point(touch.ClientX, touch.ClientY), + GetModifiers(e), touch.Identifier); + } + } + + private void OnTouchCancel(TouchEventArgs e) + { + foreach (var touch in e.ChangedTouches) + { + _topLevelImpl.RawTouchEvent(RawPointerEventType.TouchCancel, new Point(touch.ClientX, touch.ClientY), + GetModifiers(e), touch.Identifier); + } + } + + private void OnTouchMove(TouchEventArgs e) + { + foreach (var touch in e.ChangedTouches) + { + _topLevelImpl.RawTouchEvent(RawPointerEventType.TouchUpdate, new Point(touch.ClientX, touch.ClientY), + GetModifiers(e), touch.Identifier); + } + } + + private void OnMouseMove(MouseEventArgs e) + { + _topLevelImpl.RawMouseEvent(RawPointerEventType.Move, new Point(e.ClientX, e.ClientY), GetModifiers(e)); + } + + private void OnMouseUp(MouseEventArgs e) + { + RawPointerEventType type = default; + + switch (e.Button) + { + case 0: + type = RawPointerEventType.LeftButtonUp; + break; + + case 1: + type = RawPointerEventType.MiddleButtonUp; + break; + + case 2: + type = RawPointerEventType.RightButtonUp; + break; + } + + _topLevelImpl.RawMouseEvent(type, new Point(e.ClientX, e.ClientY), GetModifiers(e)); + } + + private void OnMouseDown(MouseEventArgs e) + { + RawPointerEventType type = default; + + switch (e.Button) + { + case 0: + type = RawPointerEventType.LeftButtonDown; + break; + + case 1: + type = RawPointerEventType.MiddleButtonDown; + break; + + case 2: + type = RawPointerEventType.RightButtonDown; + break; + } + + _topLevelImpl.RawMouseEvent(type, new Point(e.ClientX, e.ClientY), GetModifiers(e)); + } + + private void OnWheel(WheelEventArgs e) + { + _topLevelImpl.RawMouseWheelEvent(new Point(e.ClientX, e.ClientY), + new Vector(-(e.DeltaX / 50), -(e.DeltaY / 50)), GetModifiers(e)); + } + + private static RawInputModifiers GetModifiers(WheelEventArgs e) + { + var modifiers = RawInputModifiers.None; + + if (e.CtrlKey) + modifiers |= RawInputModifiers.Control; + if (e.AltKey) + modifiers |= RawInputModifiers.Alt; + if (e.ShiftKey) + modifiers |= RawInputModifiers.Shift; + if (e.MetaKey) + modifiers |= RawInputModifiers.Meta; + + if ((e.Buttons & 1L) == 1) + modifiers |= RawInputModifiers.LeftMouseButton; + + if ((e.Buttons & 2L) == 2) + modifiers |= RawInputModifiers.RightMouseButton; + + if ((e.Buttons & 4L) == 4) + modifiers |= RawInputModifiers.MiddleMouseButton; + + return modifiers; + } + + private static RawInputModifiers GetModifiers(TouchEventArgs e) + { + var modifiers = RawInputModifiers.None; + + if (e.CtrlKey) + modifiers |= RawInputModifiers.Control; + if (e.AltKey) + modifiers |= RawInputModifiers.Alt; + if (e.ShiftKey) + modifiers |= RawInputModifiers.Shift; + if (e.MetaKey) + modifiers |= RawInputModifiers.Meta; + + return modifiers; + } + + private static RawInputModifiers GetModifiers(MouseEventArgs e) + { + var modifiers = RawInputModifiers.None; + + if (e.CtrlKey) + modifiers |= RawInputModifiers.Control; + if (e.AltKey) + modifiers |= RawInputModifiers.Alt; + if (e.ShiftKey) + modifiers |= RawInputModifiers.Shift; + if (e.MetaKey) + modifiers |= RawInputModifiers.Meta; + + if ((e.Buttons & 1L) == 1) + modifiers |= RawInputModifiers.LeftMouseButton; + + if ((e.Buttons & 2L) == 2) + modifiers |= RawInputModifiers.RightMouseButton; + + if ((e.Buttons & 4L) == 4) + modifiers |= RawInputModifiers.MiddleMouseButton; + + return modifiers; + } + + private static RawInputModifiers GetModifiers(KeyboardEventArgs e) + { + var modifiers = RawInputModifiers.None; + + if (e.CtrlKey) + modifiers |= RawInputModifiers.Control; + if (e.AltKey) + modifiers |= RawInputModifiers.Alt; + if (e.ShiftKey) + modifiers |= RawInputModifiers.Shift; + if (e.MetaKey) + modifiers |= RawInputModifiers.Meta; + + return modifiers; + } + + private void OnKeyDown(KeyboardEventArgs e) + { + _topLevelImpl.RawKeyboardEvent(RawKeyEventType.KeyDown, e.Key, GetModifiers(e)); + } + + private void OnKeyUp(KeyboardEventArgs e) + { + _topLevelImpl.RawKeyboardEvent(RawKeyEventType.KeyUp, e.Code, GetModifiers(e)); + } + + private void OnInput(ChangeEventArgs e) + { + if (e.Value != null) + { + var inputData = e.Value.ToString(); + if (inputData != null) + { + _topLevelImpl.RawTextEvent(inputData); + } + } + + _inputHelper.Clear(); + } + + [Parameter(CaptureUnmatchedValues = true)] + public IReadOnlyDictionary? AdditionalAttributes { get; set; } + + protected override void OnAfterRender(bool firstRender) + { + if (firstRender) + { + Threading.Dispatcher.UIThread.Post(async () => + { + _inputHelper = await InputHelperInterop.ImportAsync(Js, _inputElement); + + _inputHelper.Hide(); + _inputHelper.SetCursor("default"); + + Console.WriteLine("starting html canvas setup"); + _interop = await SKHtmlCanvasInterop.ImportAsync(Js, _htmlCanvas, OnRenderFrame); + + Console.WriteLine("Interop created"); + _jsGlInfo = _interop.InitGL(); + + Console.WriteLine("jsglinfo created - init gl"); + + _sizeWatcher = await SizeWatcherInterop.ImportAsync(Js, _htmlCanvas, OnSizeChanged); + _dpiWatcher = await DpiWatcherInterop.ImportAsync(Js, OnDpiChanged); + + Console.WriteLine("watchers created."); + + // create the SkiaSharp context + if (_context == null) + { + Console.WriteLine("create glcontext"); + _glInterface = GRGlInterface.Create(); + _context = GRContext.CreateGl(_glInterface); + + + // bump the default resource cache limit + _context.SetResourceCacheLimit(256 * 1024 * 1024); + Console.WriteLine("glcontext created and resource limit set"); + } + + _topLevelImpl.SetSurface(_context, _jsGlInfo, ColorType, + new PixelSize((int)_canvasSize.Width, (int)_canvasSize.Height), _dpi); + + _initialised = true; + + _topLevel.Prepare(); + + _topLevel.Renderer.Start(); + Invalidate(); + }); + } + } + + private void OnRenderFrame() + { + if (_canvasSize.Width <= 0 || _canvasSize.Height <= 0 || _dpi <= 0 || _jsGlInfo == null) + { + Console.WriteLine("nothing to render"); + return; + } + + ManualTriggerRenderTimer.Instance.RaiseTick(); + } + + public void Dispose() + { + _dpiWatcher.Unsubscribe(OnDpiChanged); + _sizeWatcher.Dispose(); + _interop.Dispose(); + } + + private void OnDpiChanged(double newDpi) + { + _dpi = newDpi; + + _topLevelImpl.SetClientSize(_canvasSize, _dpi); + + Invalidate(); + } + + private void OnSizeChanged(SKSize newSize) + { + _canvasSize = newSize; + + _topLevelImpl.SetClientSize(_canvasSize, _dpi); + + Invalidate(); + } + + public void Invalidate() + { + if (!_initialised || _canvasSize.Width <= 0 || _canvasSize.Height <= 0 || _dpi <= 0 || _jsGlInfo == null) + { + Console.WriteLine("invalidate ignored"); + return; + } + + _interop.RequestAnimationFrame(true, (int)(_canvasSize.Width * _dpi), (int)(_canvasSize.Height * _dpi)); + } + + public void SetActive(bool active) + { + _inputHelper.Clear(); + + if (active) + { + _inputHelper.Show(); + _inputHelper.Focus(); + } + else + { + _inputHelper.Hide(); + } + } + + public void SetCursorRect(Rect rect) + { + } + + public void SetOptions(TextInputOptionsQueryEventArgs options) + { + } + + public void Reset() + { + _inputHelper.Clear(); + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/BlazorRuntimePlatform.cs b/src/Web/Avalonia.Web.Blazor/BlazorRuntimePlatform.cs new file mode 100644 index 0000000000..9a5bf6b151 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/BlazorRuntimePlatform.cs @@ -0,0 +1,61 @@ +using System.Runtime.InteropServices; +using Avalonia.Platform; +using Avalonia.Shared.PlatformSupport; + +namespace Avalonia.Web.Blazor +{ + internal class BlazorRuntimePlatform : IRuntimePlatform + { + public static readonly IRuntimePlatform Instance = new BlazorRuntimePlatform(); + + public IDisposable StartSystemTimer(TimeSpan interval, Action tick) + { + return new Timer(_ => tick(), null, interval, interval); + } + + public RuntimePlatformInfo GetRuntimeInfo() + { + return new RuntimePlatformInfo + { + IsDesktop = false, + IsMobile = false, + IsMono = true, + IsUnix = false, + IsCoreClr = false, + IsDotNetFramework = false + }; + } + + private class BasicBlob : IUnmanagedBlob + { + public BasicBlob(int size) + { + Address = Marshal.AllocHGlobal(size); + Size = size; + } + public void Dispose() + { + if (Address != IntPtr.Zero) + Marshal.FreeHGlobal(Address); + Address = IntPtr.Zero; + } + + public IntPtr Address { get; private set; } + + public int Size { get; } + public bool IsDisposed => Address == IntPtr.Zero; + } + + public IUnmanagedBlob AllocBlob(int size) + { + return new BasicBlob(size); + } + + public static void RegisterServices(AvaloniaBlazorAppBuilder builder) + { + AssetLoader.RegisterResUriParsers(); + AvaloniaLocator.CurrentMutable.Bind().ToConstant(Instance); + AvaloniaLocator.CurrentMutable.Bind().ToConstant(new AssetLoader()); + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs b/src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs new file mode 100644 index 0000000000..85ac57c746 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/BlazorSingleViewLifetime.cs @@ -0,0 +1,33 @@ +using Avalonia.Controls; +using Avalonia.Controls.ApplicationLifetimes; +using Avalonia.Media; + +namespace Avalonia.Web.Blazor +{ + public class BlazorSingleViewLifetime : ISingleViewApplicationLifetime + { + public Control? MainView { get; set; } + } + + public static class WebAppBuilder + { + public static T SetupWithSingleViewLifetime( + this T builder) + where T : AppBuilderBase, new() + { + return builder.SetupWithLifetime(new BlazorSingleViewLifetime()); + } + + public static AvaloniaBlazorAppBuilder Configure() + where TApp : Application, new() + { + var builder = AvaloniaBlazorAppBuilder.Configure() + .UseSkia() + .With(new SkiaOptions { CustomGpuFactory = () => new BlazorSkiaGpu() }); + + AvaloniaLocator.CurrentMutable.Bind().ToConstant(new FontManager(new CustomFontManagerImpl())); + + return builder; + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpu.cs b/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpu.cs new file mode 100644 index 0000000000..6fa7bf0bde --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpu.cs @@ -0,0 +1,25 @@ +using Avalonia.Skia; + +namespace Avalonia.Web.Blazor +{ + public class BlazorSkiaGpu : ISkiaGpu + { + public ISkiaGpuRenderTarget? TryCreateRenderTarget(IEnumerable surfaces) + { + foreach (var surface in surfaces) + { + if (surface is BlazorSkiaSurface blazorSkiaSurface) + { + return new BlazorSkiaGpuRenderTarget(blazorSkiaSurface); + } + } + + return null; + } + + public ISkiaSurface? TryCreateSurface(PixelSize size, ISkiaGpuRenderSession session) + { + return null; + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderSession.cs b/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderSession.cs new file mode 100644 index 0000000000..0c53825131 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderSession.cs @@ -0,0 +1,37 @@ +using Avalonia.Skia; +using SkiaSharp; + +namespace Avalonia.Web.Blazor +{ + internal class BlazorSkiaGpuRenderSession : ISkiaGpuRenderSession + { + private readonly SKSurface _surface; + + + public BlazorSkiaGpuRenderSession(BlazorSkiaSurface blazorSkiaSurface, GRBackendRenderTarget renderTarget) + { + _surface = SKSurface.Create(blazorSkiaSurface.Context, renderTarget, blazorSkiaSurface.Origin, blazorSkiaSurface.ColorType); + + GrContext = blazorSkiaSurface.Context; + + ScaleFactor = blazorSkiaSurface.Scaling; + + SurfaceOrigin = blazorSkiaSurface.Origin; + } + + public void Dispose() + { + _surface.Flush(); + + _surface.Dispose(); + } + + public GRContext GrContext { get; } + + public SKSurface SkSurface => _surface; + + public double ScaleFactor { get; } + + public GRSurfaceOrigin SurfaceOrigin { get; } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderTarget.cs b/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderTarget.cs new file mode 100644 index 0000000000..ee7374634f --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/BlazorSkiaGpuRenderTarget.cs @@ -0,0 +1,47 @@ +using Avalonia.Skia; +using SkiaSharp; + +namespace Avalonia.Web.Blazor +{ + internal class BlazorSkiaGpuRenderTarget : ISkiaGpuRenderTarget + { + private readonly GRBackendRenderTarget _renderTarget; + private readonly BlazorSkiaSurface _blazorSkiaSurface; + private readonly PixelSize _size; + + public BlazorSkiaGpuRenderTarget(BlazorSkiaSurface blazorSkiaSurface) + { + _size = blazorSkiaSurface.Size; + + var glFbInfo = new GRGlFramebufferInfo(blazorSkiaSurface.GlInfo.FboId, blazorSkiaSurface.ColorType.ToGlSizedFormat()); + { + _blazorSkiaSurface = blazorSkiaSurface; + _renderTarget = new GRBackendRenderTarget( + (int)(blazorSkiaSurface.Size.Width * blazorSkiaSurface.Scaling), + (int)(blazorSkiaSurface.Size.Height * blazorSkiaSurface.Scaling), + blazorSkiaSurface.GlInfo.Samples, + blazorSkiaSurface.GlInfo.Stencils, glFbInfo); + } + } + + public void Dispose() + { + _renderTarget.Dispose(); + } + + public ISkiaGpuRenderSession BeginRenderingSession() + { + return new BlazorSkiaGpuRenderSession(_blazorSkiaSurface, _renderTarget); + } + + public bool IsCorrupted + { + get + { + var result = _size.Width != _renderTarget.Width || _size.Height != _renderTarget.Height; + + return result; + } + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/BlazorSkiaSurface.cs b/src/Web/Avalonia.Web.Blazor/BlazorSkiaSurface.cs new file mode 100644 index 0000000000..512309cfe3 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/BlazorSkiaSurface.cs @@ -0,0 +1,30 @@ +using Avalonia.Web.Blazor.Interop; +using SkiaSharp; + +namespace Avalonia.Web.Blazor +{ + internal class BlazorSkiaSurface + { + public BlazorSkiaSurface(GRContext context, SKHtmlCanvasInterop.GLInfo glInfo, SKColorType colorType, PixelSize size, double scaling, GRSurfaceOrigin origin) + { + Context = context; + GlInfo = glInfo; + ColorType = colorType; + Size = size; + Scaling = scaling; + Origin = origin; + } + + public SKColorType ColorType { get; set; } + + public PixelSize Size { get; set; } + + public GRContext Context { get; set; } + + public GRSurfaceOrigin Origin { get; set; } + + public double Scaling { get; set; } + + public SKHtmlCanvasInterop.GLInfo GlInfo { get; set; } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/CustomFontManagerImpl.cs b/src/Web/Avalonia.Web.Blazor/CustomFontManagerImpl.cs new file mode 100644 index 0000000000..01837bbcd4 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/CustomFontManagerImpl.cs @@ -0,0 +1,78 @@ +using System.Globalization; +using Avalonia.Media; +using Avalonia.Platform; +using Avalonia.Skia; +using SkiaSharp; + +namespace Avalonia.Web.Blazor +{ + public class CustomFontManagerImpl : IFontManagerImpl + { + private readonly Typeface[] _customTypefaces; + private readonly string _defaultFamilyName; + + private readonly Typeface _defaultTypeface = + new Typeface("avares://Avalonia.Web.Blazor/Assets#Noto Mono"); + private readonly Typeface _italicTypeface = + new Typeface("avares://Avalonia.Web.Blazor/Assets#Noto Sans"); + + public CustomFontManagerImpl() + { + _customTypefaces = new[] { _italicTypeface, _defaultTypeface }; + _defaultFamilyName = _defaultTypeface.FontFamily.FamilyNames.PrimaryFamilyName; + } + + public string GetDefaultFontFamilyName() + { + return _defaultFamilyName; + } + + public IEnumerable GetInstalledFontFamilyNames(bool checkForUpdates = false) + { + return _customTypefaces.Select(x => x.FontFamily.Name); + } + + public bool TryMatchCharacter(int codepoint, FontStyle fontStyle, FontWeight fontWeight, FontFamily fontFamily, + CultureInfo culture, out Typeface typeface) + { + foreach (var customTypeface in _customTypefaces) + { + if (customTypeface.GlyphTypeface.GetGlyph((uint)codepoint) == 0) + { + continue; + } + + typeface = new Typeface(customTypeface.FontFamily, fontStyle, fontWeight); + + return true; + } + + typeface = _defaultTypeface; + + return true; + } + + public IGlyphTypefaceImpl CreateGlyphTypeface(Typeface typeface) + { + SKTypeface skTypeface; + + switch (typeface.FontFamily.Name) + { + case "Noto Sans": + { + var typefaceCollection = SKTypefaceCollectionCache.GetOrAddTypefaceCollection(_italicTypeface.FontFamily); + skTypeface = typefaceCollection.Get(typeface); + break; + } + default: + { + var typefaceCollection = SKTypefaceCollectionCache.GetOrAddTypefaceCollection(_defaultTypeface.FontFamily); + skTypeface = typefaceCollection.Get(_defaultTypeface); + break; + } + } + + return new GlyphTypefaceImpl(skTypeface); + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/ActionHelper.cs b/src/Web/Avalonia.Web.Blazor/Interop/ActionHelper.cs new file mode 100644 index 0000000000..d6d504e07e --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/ActionHelper.cs @@ -0,0 +1,20 @@ +using System; +using System.ComponentModel; +using Microsoft.JSInterop; + +namespace Avalonia.Web.Blazor.Interop +{ + [EditorBrowsable(EditorBrowsableState.Never)] + public class ActionHelper + { + private readonly Action action; + + public ActionHelper(Action action) + { + this.action = action; + } + + [JSInvokable] + public void Invoke() => action?.Invoke(); + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/DpiWatcherInterop.cs b/src/Web/Avalonia.Web.Blazor/Interop/DpiWatcherInterop.cs new file mode 100644 index 0000000000..29a2686b3f --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/DpiWatcherInterop.cs @@ -0,0 +1,87 @@ +using System; +using System.Threading.Tasks; +using Microsoft.JSInterop; + +namespace Avalonia.Web.Blazor.Interop +{ + internal class DpiWatcherInterop : JSModuleInterop + { + private const string JsFilename = "./_content/Avalonia.Web.Blazor/DpiWatcher.js"; + private const string StartSymbol = "DpiWatcher.start"; + private const string StopSymbol = "DpiWatcher.stop"; + private const string GetDpiSymbol = "DpiWatcher.getDpi"; + + private static DpiWatcherInterop? instance; + + private event Action? callbacksEvent; + private readonly FloatFloatActionHelper callbackHelper; + + private DotNetObjectReference? callbackReference; + + public static async Task ImportAsync(IJSRuntime js, Action? callback = null) + { + var interop = Get(js); + await interop.ImportAsync(); + if (callback != null) + interop.Subscribe(callback); + return interop; + } + + public static DpiWatcherInterop Get(IJSRuntime js) => + instance ??= new DpiWatcherInterop(js); + + private DpiWatcherInterop(IJSRuntime js) + : base(js, JsFilename) + { + callbackHelper = new FloatFloatActionHelper((o, n) => callbacksEvent?.Invoke(n)); + } + + protected override void OnDisposingModule() => + Stop(); + + public void Subscribe(Action callback) + { + var shouldStart = callbacksEvent == null; + + callbacksEvent += callback; + + var dpi = shouldStart + ? Start() + : GetDpi(); + + callback(dpi); + } + + public void Unsubscribe(Action callback) + { + callbacksEvent -= callback; + + if (callbacksEvent == null) + Stop(); + } + + private double Start() + { + if (callbackReference != null) + return GetDpi(); + + callbackReference = DotNetObjectReference.Create(callbackHelper); + + return Invoke(StartSymbol, callbackReference); + } + + private void Stop() + { + if (callbackReference == null) + return; + + Invoke(StopSymbol); + + callbackReference?.Dispose(); + callbackReference = null; + } + + public double GetDpi() => + Invoke(GetDpiSymbol); + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/FloatFloatActionHelper.cs b/src/Web/Avalonia.Web.Blazor/Interop/FloatFloatActionHelper.cs new file mode 100644 index 0000000000..80b9e5689a --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/FloatFloatActionHelper.cs @@ -0,0 +1,20 @@ +using System; +using System.ComponentModel; +using Microsoft.JSInterop; + +namespace Avalonia.Web.Blazor.Interop +{ + [EditorBrowsable(EditorBrowsableState.Never)] + public class FloatFloatActionHelper + { + private readonly Action action; + + public FloatFloatActionHelper(Action action) + { + this.action = action; + } + + [JSInvokable] + public void Invoke(float width, float height) => action?.Invoke(width, height); + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs b/src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs new file mode 100644 index 0000000000..6d71e0c48f --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs @@ -0,0 +1,41 @@ +using Microsoft.AspNetCore.Components; +using Microsoft.JSInterop; +using SkiaSharp; + +namespace Avalonia.Web.Blazor.Interop +{ + internal class InputHelperInterop : JSModuleInterop + { + private const string JsFilename = "./_content/Avalonia.Web.Blazor/InputHelper.js"; + private const string ClearSymbol = "InputHelper.clear"; + private const string FocusSymbol = "InputHelper.focus"; + private const string SetCursorSymbol = "InputHelper.setCursor"; + private const string HideSymbol = "InputHelper.hide"; + private const string ShowSymbol = "InputHelper.show"; + + private readonly ElementReference inputElement; + + public static async Task ImportAsync(IJSRuntime js, ElementReference element) + { + var interop = new InputHelperInterop(js, element); + await interop.ImportAsync(); + return interop; + } + + public InputHelperInterop(IJSRuntime js, ElementReference element) + : base(js, JsFilename) + { + inputElement = element; + } + + public void Clear() => Invoke(ClearSymbol, inputElement); + + public void Focus() => Invoke(FocusSymbol, inputElement); + + public void SetCursor(string kind) => Invoke(SetCursorSymbol, inputElement, kind); + + public void Hide() => Invoke(HideSymbol, inputElement); + + public void Show() => Invoke(ShowSymbol, inputElement); + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/JSModuleInterop.cs b/src/Web/Avalonia.Web.Blazor/Interop/JSModuleInterop.cs new file mode 100644 index 0000000000..524326f7c0 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/JSModuleInterop.cs @@ -0,0 +1,42 @@ +using System; +using System.Threading.Tasks; +using Microsoft.JSInterop; + +namespace Avalonia.Web.Blazor.Interop +{ + internal class JSModuleInterop : IDisposable + { + private readonly Task moduleTask; + private IJSUnmarshalledObjectReference? module; + + public JSModuleInterop(IJSRuntime js, string filename) + { + if (js is not IJSInProcessRuntime) + throw new NotSupportedException("SkiaSharp currently only works on Web Assembly."); + + moduleTask = js.InvokeAsync("import", filename).AsTask(); + } + + public async Task ImportAsync() + { + module = await moduleTask; + } + + public void Dispose() + { + OnDisposingModule(); + Module.Dispose(); + } + + protected IJSUnmarshalledObjectReference Module => + module ?? throw new InvalidOperationException("Make sure to run ImportAsync() first."); + + protected void Invoke(string identifier, params object?[]? args) => + Module.InvokeVoid(identifier, args); + + protected TValue Invoke(string identifier, params object?[]? args) => + Module.Invoke(identifier, args); + + protected virtual void OnDisposingModule() { } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/SKHtmlCanvasInterop.cs b/src/Web/Avalonia.Web.Blazor/Interop/SKHtmlCanvasInterop.cs new file mode 100644 index 0000000000..4f5d4cdf70 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/SKHtmlCanvasInterop.cs @@ -0,0 +1,79 @@ +using Microsoft.AspNetCore.Components; +using Microsoft.JSInterop; +using SkiaSharp; + +namespace Avalonia.Web.Blazor.Interop +{ + internal class SKHtmlCanvasInterop : JSModuleInterop + { + private const string JsFilename = "./_content/Avalonia.Web.Blazor/SKHtmlCanvas.js"; + private const string InitGLSymbol = "SKHtmlCanvas.initGL"; + private const string InitRasterSymbol = "SKHtmlCanvas.initRaster"; + private const string DeinitSymbol = "SKHtmlCanvas.deinit"; + private const string RequestAnimationFrameSymbol = "SKHtmlCanvas.requestAnimationFrame"; + private const string PutImageDataSymbol = "SKHtmlCanvas.putImageData"; + + private readonly ElementReference htmlCanvas; + private readonly string htmlElementId; + private readonly ActionHelper callbackHelper; + + private DotNetObjectReference? callbackReference; + + public static async Task ImportAsync(IJSRuntime js, ElementReference element, Action callback) + { + var interop = new SKHtmlCanvasInterop(js, element, callback); + await interop.ImportAsync(); + return interop; + } + + public SKHtmlCanvasInterop(IJSRuntime js, ElementReference element, Action renderFrameCallback) + : base(js, JsFilename) + { + htmlCanvas = element; + htmlElementId = element.Id; + + callbackHelper = new ActionHelper(renderFrameCallback); + } + + protected override void OnDisposingModule() => + Deinit(); + + public GLInfo InitGL() + { + if (callbackReference != null) + throw new InvalidOperationException("Unable to initialize the same canvas more than once."); + + callbackReference = DotNetObjectReference.Create(callbackHelper); + + return Invoke(InitGLSymbol, htmlCanvas, htmlElementId, callbackReference); + } + + public bool InitRaster() + { + if (callbackReference != null) + throw new InvalidOperationException("Unable to initialize the same canvas more than once."); + + callbackReference = DotNetObjectReference.Create(callbackHelper); + + return Invoke(InitRasterSymbol, htmlCanvas, htmlElementId, callbackReference); + } + + public void Deinit() + { + if (callbackReference == null) + return; + + Invoke(DeinitSymbol, htmlElementId); + + callbackReference?.Dispose(); + } + + public void RequestAnimationFrame(bool enableRenderLoop, int rawWidth, int rawHeight) => + Invoke(RequestAnimationFrameSymbol, htmlCanvas, enableRenderLoop, rawWidth, rawHeight); + + public void PutImageData(IntPtr intPtr, SKSizeI rawSize) => + Invoke(PutImageDataSymbol, htmlCanvas, intPtr.ToInt64(), rawSize.Width, rawSize.Height); + + public record GLInfo(int ContextId, uint FboId, int Stencils, int Samples, int Depth); + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/SizeWatcherInterop.cs b/src/Web/Avalonia.Web.Blazor/Interop/SizeWatcherInterop.cs new file mode 100644 index 0000000000..8904137b8b --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/SizeWatcherInterop.cs @@ -0,0 +1,61 @@ +using System; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Components; +using Microsoft.JSInterop; +using SkiaSharp; + +namespace Avalonia.Web.Blazor.Interop +{ + internal class SizeWatcherInterop : JSModuleInterop + { + private const string JsFilename = "./_content/Avalonia.Web.Blazor/SizeWatcher.js"; + private const string ObserveSymbol = "SizeWatcher.observe"; + private const string UnobserveSymbol = "SizeWatcher.unobserve"; + + private readonly ElementReference htmlElement; + private readonly string htmlElementId; + private readonly FloatFloatActionHelper callbackHelper; + + private DotNetObjectReference? callbackReference; + + public static async Task ImportAsync(IJSRuntime js, ElementReference element, Action callback) + { + var interop = new SizeWatcherInterop(js, element, callback); + await interop.ImportAsync(); + interop.Start(); + return interop; + } + + public SizeWatcherInterop(IJSRuntime js, ElementReference element, Action callback) + : base(js, JsFilename) + { + htmlElement = element; + htmlElementId = element.Id; + callbackHelper = new FloatFloatActionHelper((x, y) => callback(new SKSize(x, y))); + } + + protected override void OnDisposingModule() => + Stop(); + + public void Start() + { + if (callbackReference != null) + return; + + callbackReference = DotNetObjectReference.Create(callbackHelper); + + Invoke(ObserveSymbol, htmlElement, htmlElementId, callbackReference); + } + + public void Stop() + { + if (callbackReference == null) + return; + + Invoke(UnobserveSymbol, htmlElementId); + + callbackReference?.Dispose(); + callbackReference = null; + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/Typescript/DpiWatcher.ts b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/DpiWatcher.ts new file mode 100644 index 0000000000..72baf14d8f --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/DpiWatcher.ts @@ -0,0 +1,41 @@ + +export class DpiWatcher { + static lastDpi: number; + static timerId: number; + static callback: DotNet.DotNetObjectReference; + + public static getDpi() { + return window.devicePixelRatio; + } + + public static start(callback: DotNet.DotNetObjectReference): number { + //console.info(`Starting DPI watcher with callback ${callback._id}...`); + + DpiWatcher.lastDpi = window.devicePixelRatio; + DpiWatcher.timerId = window.setInterval(DpiWatcher.update, 1000); + DpiWatcher.callback = callback; + + return DpiWatcher.lastDpi; + } + + public static stop() { + //console.info(`Stopping DPI watcher with callback ${DpiWatcher.callback._id}...`); + + window.clearInterval(DpiWatcher.timerId); + + DpiWatcher.callback = undefined; + } + + static update() { + if (!DpiWatcher.callback) + return; + + const currentDpi = window.devicePixelRatio; + const lastDpi = DpiWatcher.lastDpi; + DpiWatcher.lastDpi = currentDpi; + + if (Math.abs(lastDpi - currentDpi) > 0.001) { + DpiWatcher.callback.invokeMethod('Invoke', lastDpi, currentDpi); + } + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/Typescript/InputHelper.ts b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/InputHelper.ts new file mode 100644 index 0000000000..a3bf9de31d --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/InputHelper.ts @@ -0,0 +1,23 @@ + +export class InputHelper { + public static clear (inputElement: HTMLInputElement){ + inputElement.value = ""; + } + + public static focus (inputElement: HTMLInputElement){ + inputElement.focus(); + inputElement.setSelectionRange(0, 0); + } + + public static setCursor (inputElement: HTMLInputElement, kind: string) { + inputElement.style.cursor = kind; + } + + public static hide (inputElement: HTMLInputElement){ + inputElement.style.display = 'none'; + } + + public static show (inputElement: HTMLInputElement){ + inputElement.style.display = 'block'; + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/Typescript/SKHtmlCanvas.ts b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/SKHtmlCanvas.ts new file mode 100644 index 0000000000..147e2a963f --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/SKHtmlCanvas.ts @@ -0,0 +1,225 @@ +// aliases for emscripten +declare let GL: any; +declare let GLctx: WebGLRenderingContext; +declare let Module: EmscriptenModule; + +// container for gl info +type SKGLViewInfo = { + context: WebGLRenderingContext | WebGL2RenderingContext | undefined; + fboId: number; + stencil: number; + sample: number; + depth: number; +} + +// alias for a potential skia html canvas +type SKHtmlCanvasElement = { + SKHtmlCanvas: SKHtmlCanvas +} & HTMLCanvasElement + +export class SKHtmlCanvas { + static elements: Map; + + htmlCanvas: HTMLCanvasElement; + glInfo: SKGLViewInfo; + renderFrameCallback: DotNet.DotNetObjectReference; + renderLoopEnabled: boolean = false; + renderLoopRequest: number = 0; + + public static initGL(element: HTMLCanvasElement, elementId: string, callback: DotNet.DotNetObjectReference): SKGLViewInfo { + var view = SKHtmlCanvas.init(true, element, elementId, callback); + if (!view || !view.glInfo) + return null; + + return view.glInfo; + } + + public static initRaster(element: HTMLCanvasElement, elementId: string, callback: DotNet.DotNetObjectReference): boolean { + var view = SKHtmlCanvas.init(false, element, elementId, callback); + if (!view) + return false; + + return true; + } + + static init(useGL: boolean, element: HTMLCanvasElement, elementId: string, callback: DotNet.DotNetObjectReference): SKHtmlCanvas { + var htmlCanvas = element as SKHtmlCanvasElement; + if (!htmlCanvas) { + console.error(`No canvas element was provided.`); + return null; + } + + if (!SKHtmlCanvas.elements) + SKHtmlCanvas.elements = new Map(); + SKHtmlCanvas.elements[elementId] = element; + + const view = new SKHtmlCanvas(useGL, element, callback); + + htmlCanvas.SKHtmlCanvas = view; + + return view; + } + + public static deinit(elementId: string) { + if (!elementId) + return; + + const element = SKHtmlCanvas.elements[elementId]; + SKHtmlCanvas.elements.delete(elementId); + + const htmlCanvas = element as SKHtmlCanvasElement; + if (!htmlCanvas || !htmlCanvas.SKHtmlCanvas) + return; + + htmlCanvas.SKHtmlCanvas.deinit(); + htmlCanvas.SKHtmlCanvas = undefined; + } + + public static requestAnimationFrame(element: HTMLCanvasElement, renderLoop?: boolean, width?: number, height?: number) { + const htmlCanvas = element as SKHtmlCanvasElement; + if (!htmlCanvas || !htmlCanvas.SKHtmlCanvas) + return; + + htmlCanvas.SKHtmlCanvas.requestAnimationFrame(renderLoop, width, height); + } + + public static setEnableRenderLoop(element: HTMLCanvasElement, enable: boolean) { + const htmlCanvas = element as SKHtmlCanvasElement; + if (!htmlCanvas || !htmlCanvas.SKHtmlCanvas) + return; + + htmlCanvas.SKHtmlCanvas.setEnableRenderLoop(enable); + } + + public static putImageData(element: HTMLCanvasElement, pData: number, width: number, height: number) { + const htmlCanvas = element as SKHtmlCanvasElement; + if (!htmlCanvas || !htmlCanvas.SKHtmlCanvas) + return; + + htmlCanvas.SKHtmlCanvas.putImageData(pData, width, height); + } + + public constructor(useGL: boolean, element: HTMLCanvasElement, callback: DotNet.DotNetObjectReference) { + this.htmlCanvas = element; + this.renderFrameCallback = callback; + + if (useGL) { + const ctx = SKHtmlCanvas.createWebGLContext(this.htmlCanvas); + if (!ctx) { + console.error(`Failed to create WebGL context: err ${ctx}`); + return null; + } + + // make current + GL.makeContextCurrent(ctx); + + // read values + const fbo = GLctx.getParameter(GLctx.FRAMEBUFFER_BINDING); + this.glInfo = { + context: ctx, + fboId: fbo ? fbo.id : 0, + stencil: GLctx.getParameter(GLctx.STENCIL_BITS), + sample: 0, // TODO: GLctx.getParameter(GLctx.SAMPLES) + depth: GLctx.getParameter(GLctx.DEPTH_BITS), + }; + } + } + + public deinit() { + this.setEnableRenderLoop(false); + } + + public requestAnimationFrame(renderLoop?: boolean, width?: number, height?: number) { + // optionally update the render loop + if (renderLoop !== undefined && this.renderLoopEnabled !== renderLoop) + this.setEnableRenderLoop(renderLoop); + + // make sure the canvas is scaled correctly for the drawing + if (width && height) { + this.htmlCanvas.width = width; + this.htmlCanvas.height = height; + } + + // skip because we have a render loop + if (this.renderLoopRequest !== 0) + return; + + // add the draw to the next frame + this.renderLoopRequest = window.requestAnimationFrame(() => { + if (this.glInfo) { + // make current + GL.makeContextCurrent(this.glInfo.context); + } + + this.renderFrameCallback.invokeMethod('Invoke'); + this.renderLoopRequest = 0; + + // we may want to draw the next frame + if (this.renderLoopEnabled) + this.requestAnimationFrame(); + }); + } + + public setEnableRenderLoop(enable: boolean) { + this.renderLoopEnabled = enable; + + // either start the new frame or cancel the existing one + if (enable) { + //console.info(`Enabling render loop with callback ${this.renderFrameCallback._id}...`); + this.requestAnimationFrame(); + } else if (this.renderLoopRequest !== 0) { + window.cancelAnimationFrame(this.renderLoopRequest); + this.renderLoopRequest = 0; + } + } + + public putImageData(pData: number, width: number, height: number): boolean { + if (this.glInfo || !pData || width <= 0 || width <= 0) + return false; + + var ctx = this.htmlCanvas.getContext('2d'); + if (!ctx) { + console.error(`Failed to obtain 2D canvas context.`); + return false; + } + + // make sure the canvas is scaled correctly for the drawing + this.htmlCanvas.width = width; + this.htmlCanvas.height = height; + + // set the canvas to be the bytes + var buffer = new Uint8ClampedArray(Module.HEAPU8.buffer, pData, width * height * 4); + var imageData = new ImageData(buffer, width, height); + ctx.putImageData(imageData, 0, 0); + + return true; + } + + static createWebGLContext(htmlCanvas: HTMLCanvasElement): WebGLRenderingContext | WebGL2RenderingContext { + const contextAttributes = { + alpha: 1, + depth: 1, + stencil: 8, + antialias: 0, + premultipliedAlpha: 1, + preserveDrawingBuffer: 0, + preferLowPowerToHighPerformance: 0, + failIfMajorPerformanceCaveat: 0, + majorVersion: 2, + minorVersion: 0, + enableExtensionsByDefault: 1, + explicitSwapControl: 0, + renderViaOffscreenBackBuffer: 1, + }; + + let ctx: WebGLRenderingContext = GL.createContext(htmlCanvas, contextAttributes); + if (!ctx && contextAttributes.majorVersion > 1) { + console.warn('Falling back to WebGL 1.0'); + contextAttributes.majorVersion = 1; + contextAttributes.minorVersion = 0; + ctx = GL.createContext(htmlCanvas, contextAttributes); + } + + return ctx; + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/Typescript/SizeWatcher.ts b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/SizeWatcher.ts new file mode 100644 index 0000000000..88b94f3a80 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/SizeWatcher.ts @@ -0,0 +1,68 @@ + +type SizeWatcherElement = { + SizeWatcher: SizeWatcherInstance; +} & HTMLElement + +type SizeWatcherInstance = { + callback: DotNet.DotNetObjectReference; +} + +export class SizeWatcher { + static observer: ResizeObserver; + static elements: Map; + + public static observe(element: HTMLElement, elementId: string, callback: DotNet.DotNetObjectReference) { + if (!element || !callback) + return; + + //console.info(`Adding size watcher observation with callback ${callback._id}...`); + + SizeWatcher.init(); + + const watcherElement = element as SizeWatcherElement; + watcherElement.SizeWatcher = { + callback: callback + }; + + SizeWatcher.elements[elementId] = element; + SizeWatcher.observer.observe(element); + + SizeWatcher.invoke(element); + } + + public static unobserve(elementId: string) { + if (!elementId || !SizeWatcher.observer) + return; + + //console.info('Removing size watcher observation...'); + + const element = SizeWatcher.elements[elementId]; + + SizeWatcher.elements.delete(elementId); + SizeWatcher.observer.unobserve(element); + } + + static init() { + if (SizeWatcher.observer) + return; + + //console.info('Starting size watcher...'); + + SizeWatcher.elements = new Map(); + SizeWatcher.observer = new ResizeObserver((entries) => { + for (let entry of entries) { + SizeWatcher.invoke(entry.target); + } + }); + } + + static invoke(element: Element) { + const watcherElement = element as SizeWatcherElement; + const instance = watcherElement.SizeWatcher; + + if (!instance || !instance.callback) + return; + + return instance.callback.invokeMethod('Invoke', element.clientWidth, element.clientHeight); + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/extras.d.ts b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/extras.d.ts new file mode 100644 index 0000000000..4a3d71e034 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/extras.d.ts @@ -0,0 +1,7 @@ + +declare namespace DotNet { + interface DotNetObjectReference extends DotNet.DotNetObject { + _id: number; + dispose(); + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/index.d.ts b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/index.d.ts new file mode 100644 index 0000000000..ff6dc4a8f8 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/dotnet/index.d.ts @@ -0,0 +1,56 @@ +// Type definitions for non-npm package @blazor/javascript-interop 3.1 +// Project: https://docs.microsoft.com/en-us/aspnet/core/blazor/javascript-interop?view=aspnetcore-3.1 +// Definitions by: Piotr Błażejewicz (Peter Blazejewicz) +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// Minimum TypeScript Version: 3.0 + +// Here be dragons! +// This is community-maintained definition file intended to ease the process of developing +// high quality JavaScript interop code to be used in Blazor application from your C# .Net code. +// Could be removed without a notice in case official definition types ships with Blazor itself. + +// tslint:disable:no-unnecessary-generics + +declare namespace DotNet { + /** + * Invokes the specified .NET public method synchronously. Not all hosting scenarios support + * synchronous invocation, so if possible use invokeMethodAsync instead. + * + * @param assemblyName The short name (without key/version or .dll extension) of the .NET assembly containing the method. + * @param methodIdentifier The identifier of the method to invoke. The method must have a [JSInvokable] attribute specifying this identifier. + * @param args Arguments to pass to the method, each of which must be JSON-serializable. + * @returns The result of the operation. + */ + function invokeMethod(assemblyName: string, methodIdentifier: string, ...args: any[]): T; + /** + * Invokes the specified .NET public method asynchronously. + * + * @param assemblyName The short name (without key/version or .dll extension) of the .NET assembly containing the method. + * @param methodIdentifier The identifier of the method to invoke. The method must have a [JSInvokable] attribute specifying this identifier. + * @param args Arguments to pass to the method, each of which must be JSON-serializable. + * @returns A promise representing the result of the operation. + */ + function invokeMethodAsync(assemblyName: string, methodIdentifier: string, ...args: any[]): Promise; + /** + * Represents the .NET instance passed by reference to JavaScript. + */ + interface DotNetObject { + /** + * Invokes the specified .NET instance public method synchronously. Not all hosting scenarios support + * synchronous invocation, so if possible use invokeMethodAsync instead. + * + * @param methodIdentifier The identifier of the method to invoke. The method must have a [JSInvokable] attribute specifying this identifier. + * @param args Arguments to pass to the method, each of which must be JSON-serializable. + * @returns The result of the operation. + */ + invokeMethod(methodIdentifier: string, ...args: any[]): T; + /** + * Invokes the specified .NET instance public method asynchronously. + * + * @param methodIdentifier The identifier of the method to invoke. The method must have a [JSInvokable] attribute specifying this identifier. + * @param args Arguments to pass to the method, each of which must be JSON-serializable. + * @returns A promise representing the result of the operation. + */ + invokeMethodAsync(methodIdentifier: string, ...args: any[]): Promise; + } +} diff --git a/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/emscripten/index.d.ts b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/emscripten/index.d.ts new file mode 100644 index 0000000000..e3829d4db1 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Interop/Typescript/types/emscripten/index.d.ts @@ -0,0 +1,326 @@ +// Type definitions for Emscripten 1.39.16 +// Project: https://emscripten.org +// Definitions by: Kensuke Matsuzaki +// Periklis Tsirakidis +// Bumsik Kim +// Louis DeScioli +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +/** Other WebAssembly declarations, for compatibility with older versions of Typescript */ +declare namespace WebAssembly { + interface Module {} +} + +declare namespace Emscripten { + interface FileSystemType {} + type EnvironmentType = 'WEB' | 'NODE' | 'SHELL' | 'WORKER'; + + type JSType = 'number' | 'string' | 'array' | 'boolean'; + type TypeCompatibleWithC = number | string | any[] | boolean; + + type CIntType = 'i8' | 'i16' | 'i32' | 'i64'; + type CFloatType = 'float' | 'double'; + type CPointerType = 'i8*' | 'i16*' | 'i32*' | 'i64*' | 'float*' | 'double*' | '*'; + type CType = CIntType | CFloatType | CPointerType; + + type WebAssemblyImports = Array<{ + name: string; + kind: string; + }>; + + type WebAssemblyExports = Array<{ + module: string; + name: string; + kind: string; + }>; + + interface CCallOpts { + async?: boolean | undefined; + } +} + +interface EmscriptenModule { + print(str: string): void; + printErr(str: string): void; + arguments: string[]; + environment: Emscripten.EnvironmentType; + preInit: Array<{ (): void }>; + preRun: Array<{ (): void }>; + postRun: Array<{ (): void }>; + onAbort: { (what: any): void }; + onRuntimeInitialized: { (): void }; + preinitializedWebGLContext: WebGLRenderingContext; + noInitialRun: boolean; + noExitRuntime: boolean; + logReadFiles: boolean; + filePackagePrefixURL: string; + wasmBinary: ArrayBuffer; + + destroy(object: object): void; + getPreloadedPackage(remotePackageName: string, remotePackageSize: number): ArrayBuffer; + instantiateWasm( + imports: Emscripten.WebAssemblyImports, + successCallback: (module: WebAssembly.Module) => void, + ): Emscripten.WebAssemblyExports; + locateFile(url: string, scriptDirectory: string): string; + onCustomMessage(event: MessageEvent): void; + + // USE_TYPED_ARRAYS == 1 + HEAP: Int32Array; + IHEAP: Int32Array; + FHEAP: Float64Array; + + // USE_TYPED_ARRAYS == 2 + HEAP8: Int8Array; + HEAP16: Int16Array; + HEAP32: Int32Array; + HEAPU8: Uint8Array; + HEAPU16: Uint16Array; + HEAPU32: Uint32Array; + HEAPF32: Float32Array; + HEAPF64: Float64Array; + + TOTAL_STACK: number; + TOTAL_MEMORY: number; + FAST_MEMORY: number; + + addOnPreRun(cb: () => any): void; + addOnInit(cb: () => any): void; + addOnPreMain(cb: () => any): void; + addOnExit(cb: () => any): void; + addOnPostRun(cb: () => any): void; + + preloadedImages: any; + preloadedAudios: any; + + _malloc(size: number): number; + _free(ptr: number): void; +} + +/** + * A factory function is generated when setting the `MODULARIZE` build option + * to `1` in your Emscripten build. It return a Promise that resolves to an + * initialized, ready-to-call `EmscriptenModule` instance. + * + * By default, the factory function will be named `Module`. It's recommended to + * use the `EXPORT_ES6` option, in which the factory function will be the + * default export. If used without `EXPORT_ES6`, the factory function will be a + * global variable. You can rename the variable using the `EXPORT_NAME` build + * option. It's left to you to declare any global variables as needed in your + * application's types. + * @param moduleOverrides Default properties for the initialized module. + */ +type EmscriptenModuleFactory = ( + moduleOverrides?: Partial, +) => Promise; + +declare namespace FS { + interface Lookup { + path: string; + node: FSNode; + } + + interface FSStream {} + interface FSNode {} + interface ErrnoError {} + + let ignorePermissions: boolean; + let trackingDelegate: any; + let tracking: any; + let genericErrors: any; + + // + // paths + // + function lookupPath(path: string, opts: any): Lookup; + function getPath(node: FSNode): string; + + // + // nodes + // + function isFile(mode: number): boolean; + function isDir(mode: number): boolean; + function isLink(mode: number): boolean; + function isChrdev(mode: number): boolean; + function isBlkdev(mode: number): boolean; + function isFIFO(mode: number): boolean; + function isSocket(mode: number): boolean; + + // + // devices + // + function major(dev: number): number; + function minor(dev: number): number; + function makedev(ma: number, mi: number): number; + function registerDevice(dev: number, ops: any): void; + + // + // core + // + function syncfs(populate: boolean, callback: (e: any) => any): void; + function syncfs(callback: (e: any) => any, populate?: boolean): void; + function mount(type: Emscripten.FileSystemType, opts: any, mountpoint: string): any; + function unmount(mountpoint: string): void; + + function mkdir(path: string, mode?: number): any; + function mkdev(path: string, mode?: number, dev?: number): any; + function symlink(oldpath: string, newpath: string): any; + function rename(old_path: string, new_path: string): void; + function rmdir(path: string): void; + function readdir(path: string): any; + function unlink(path: string): void; + function readlink(path: string): string; + function stat(path: string, dontFollow?: boolean): any; + function lstat(path: string): any; + function chmod(path: string, mode: number, dontFollow?: boolean): void; + function lchmod(path: string, mode: number): void; + function fchmod(fd: number, mode: number): void; + function chown(path: string, uid: number, gid: number, dontFollow?: boolean): void; + function lchown(path: string, uid: number, gid: number): void; + function fchown(fd: number, uid: number, gid: number): void; + function truncate(path: string, len: number): void; + function ftruncate(fd: number, len: number): void; + function utime(path: string, atime: number, mtime: number): void; + function open(path: string, flags: string, mode?: number, fd_start?: number, fd_end?: number): FSStream; + function close(stream: FSStream): void; + function llseek(stream: FSStream, offset: number, whence: number): any; + function read(stream: FSStream, buffer: ArrayBufferView, offset: number, length: number, position?: number): number; + function write( + stream: FSStream, + buffer: ArrayBufferView, + offset: number, + length: number, + position?: number, + canOwn?: boolean, + ): number; + function allocate(stream: FSStream, offset: number, length: number): void; + function mmap( + stream: FSStream, + buffer: ArrayBufferView, + offset: number, + length: number, + position: number, + prot: number, + flags: number, + ): any; + function ioctl(stream: FSStream, cmd: any, arg: any): any; + function readFile(path: string, opts: { encoding: 'binary'; flags?: string | undefined }): Uint8Array; + function readFile(path: string, opts: { encoding: 'utf8'; flags?: string | undefined }): string; + function readFile(path: string, opts?: { flags?: string | undefined }): Uint8Array; + function writeFile(path: string, data: string | ArrayBufferView, opts?: { flags?: string | undefined }): void; + + // + // module-level FS code + // + function cwd(): string; + function chdir(path: string): void; + function init( + input: null | (() => number | null), + output: null | ((c: number) => any), + error: null | ((c: number) => any), + ): void; + + function createLazyFile( + parent: string | FSNode, + name: string, + url: string, + canRead: boolean, + canWrite: boolean, + ): FSNode; + function createPreloadedFile( + parent: string | FSNode, + name: string, + url: string, + canRead: boolean, + canWrite: boolean, + onload?: () => void, + onerror?: () => void, + dontCreateFile?: boolean, + canOwn?: boolean, + ): void; + function createDataFile( + parent: string | FSNode, + name: string, + data: ArrayBufferView, + canRead: boolean, + canWrite: boolean, + canOwn: boolean, + ): FSNode; +} + +declare var MEMFS: Emscripten.FileSystemType; +declare var NODEFS: Emscripten.FileSystemType; +declare var IDBFS: Emscripten.FileSystemType; + +// Below runtime function/variable declarations are exportable by +// -s EXTRA_EXPORTED_RUNTIME_METHODS. You can extend or merge +// EmscriptenModule interface to add runtime functions. +// +// For example, by using -s "EXTRA_EXPORTED_RUNTIME_METHODS=['ccall']" +// You can access ccall() via Module["ccall"]. In this case, you should +// extend EmscriptenModule to pass the compiler check like the following: +// +// interface YourOwnEmscriptenModule extends EmscriptenModule { +// ccall: typeof ccall; +// } +// +// See: https://emscripten.org/docs/getting_started/FAQ.html#why-do-i-get-typeerror-module-something-is-not-a-function + +declare function ccall( + ident: string, + returnType: Emscripten.JSType | null, + argTypes: Emscripten.JSType[], + args: Emscripten.TypeCompatibleWithC[], + opts?: Emscripten.CCallOpts, +): any; +declare function cwrap( + ident: string, + returnType: Emscripten.JSType | null, + argTypes: Emscripten.JSType[], + opts?: Emscripten.CCallOpts, +): (...args: any[]) => any; + +declare function setValue(ptr: number, value: any, type: Emscripten.CType, noSafe?: boolean): void; +declare function getValue(ptr: number, type: Emscripten.CType, noSafe?: boolean): number; + +declare function allocate( + slab: number[] | ArrayBufferView | number, + types: Emscripten.CType | Emscripten.CType[], + allocator: number, + ptr?: number, +): number; + +declare function stackAlloc(size: number): number; +declare function stackSave(): number; +declare function stackRestore(ptr: number): void; + +declare function UTF8ToString(ptr: number, maxBytesToRead?: number): string; +declare function stringToUTF8(str: string, outPtr: number, maxBytesToRead?: number): void; +declare function lengthBytesUTF8(str: string): number; +declare function allocateUTF8(str: string): number; +declare function allocateUTF8OnStack(str: string): number; +declare function UTF16ToString(ptr: number): string; +declare function stringToUTF16(str: string, outPtr: number, maxBytesToRead?: number): void; +declare function lengthBytesUTF16(str: string): number; +declare function UTF32ToString(ptr: number): string; +declare function stringToUTF32(str: string, outPtr: number, maxBytesToRead?: number): void; +declare function lengthBytesUTF32(str: string): number; + +declare function intArrayFromString(stringy: string, dontAddNull?: boolean, length?: number): number[]; +declare function intArrayToString(array: number[]): string; +declare function writeStringToMemory(str: string, buffer: number, dontAddNull: boolean): void; +declare function writeArrayToMemory(array: number[], buffer: number): void; +declare function writeAsciiToMemory(str: string, buffer: number, dontAddNull: boolean): void; + +declare function addRunDependency(id: any): void; +declare function removeRunDependency(id: any): void; + +declare function addFunction(func: (...args: any[]) => any, signature?: string): number; +declare function removeFunction(funcPtr: number): void; + +declare var ALLOC_NORMAL: number; +declare var ALLOC_STACK: number; +declare var ALLOC_STATIC: number; +declare var ALLOC_DYNAMIC: number; +declare var ALLOC_NONE: number; diff --git a/src/Web/Avalonia.Web.Blazor/Keycodes.cs b/src/Web/Avalonia.Web.Blazor/Keycodes.cs new file mode 100644 index 0000000000..ea30f0a9f0 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/Keycodes.cs @@ -0,0 +1,127 @@ +using Avalonia.Input; + +namespace Avalonia.Web.Blazor +{ + internal static class Keycodes + { + public static Dictionary KeyCodes = new() + { + { "Escape", Key.Escape }, + { "Digit1", Key.D1 }, + { "Digit2", Key.D2 }, + { "Digit3", Key.D3 }, + { "Digit4", Key.D4 }, + { "Digit5", Key.D5 }, + { "Digit6", Key.D6 }, + { "Digit7", Key.D7 }, + { "Digit8", Key.D8 }, + { "Digit9", Key.D9 }, + { "Digit0", Key.D0 }, + { "Minus", Key.OemMinus }, + //{ "Equal" , Key. }, + { "Backspace", Key.Back }, + { "Tab", Key.Tab }, + { "KeyQ", Key.Q }, + { "KeyW", Key.W }, + { "KeyE", Key.E }, + { "KeyR", Key.R }, + { "KeyT", Key.T }, + { "KeyY", Key.Y }, + { "KeyU", Key.U }, + { "KeyI", Key.I }, + { "KeyO", Key.O }, + { "KeyP", Key.P }, + { "BracketLeft", Key.OemOpenBrackets }, + { "BracketRight", Key.OemCloseBrackets }, + { "Enter", Key.Enter }, + { "ControlLeft", Key.LeftCtrl }, + { "KeyA", Key.A }, + { "KeyS", Key.S }, + { "KeyD", Key.D }, + { "KeyF", Key.F }, + { "KeyG", Key.G }, + { "KeyH", Key.H }, + { "KeyJ", Key.J }, + { "KeyK", Key.K }, + { "KeyL", Key.L }, + { "Semicolon", Key.OemSemicolon }, + { "Quote", Key.OemQuotes }, + //{ "Backquote" , Key. }, + { "ShiftLeft", Key.LeftShift }, + { "Backslash", Key.OemBackslash }, + { "KeyZ", Key.Z }, + { "KeyX", Key.X }, + { "KeyC", Key.C }, + { "KeyV", Key.V }, + { "KeyB", Key.B }, + { "KeyN", Key.N }, + { "KeyM", Key.M }, + { "Comma", Key.OemComma }, + { "Period", Key.OemPeriod }, + //{ "Slash" , Key. }, + { "ShiftRight", Key.RightShift }, + { "NumpadMultiply", Key.Multiply }, + { "AltLeft", Key.LeftAlt }, + { "Space", Key.Space }, + { "CapsLock", Key.CapsLock }, + { "F1", Key.F1 }, + { "F2", Key.F2 }, + { "F3", Key.F3 }, + { "F4", Key.F4 }, + { "F5", Key.F5 }, + { "F6", Key.F6 }, + { "F7", Key.F7 }, + { "F8", Key.F8 }, + { "F9", Key.F9 }, + { "F10", Key.F10 }, + { "NumLock", Key.NumLock }, + { "ScrollLock", Key.Scroll }, + { "Numpad7", Key.NumPad7 }, + { "Numpad8", Key.NumPad8 }, + { "Numpad9", Key.NumPad9 }, + { "NumpadSubtract", Key.Subtract }, + { "Numpad4", Key.NumPad4 }, + { "Numpad5", Key.NumPad5 }, + { "Numpad6", Key.NumPad6 }, + { "NumpadAdd", Key.Add }, + { "Numpad1", Key.NumPad1 }, + { "Numpad2", Key.NumPad2 }, + { "Numpad3", Key.NumPad3 }, + { "Numpad0", Key.NumPad0 }, + { "NumpadDecimal", Key.Decimal }, + { "Unidentified", Key.NoName }, + //{ "IntlBackslash" , Key.bac }, + { "F11", Key.F11 }, + { "F12", Key.F12 }, + //{ "IntlRo" , Key.Ro }, + //{ "Unidentified" , Key. }, + { "Convert", Key.ImeConvert }, + { "KanaMode", Key.KanaMode }, + { "NonConvert", Key.ImeNonConvert }, + //{ "Unidentified" , Key. }, + { "NumpadEnter", Key.Enter }, + { "ControlRight", Key.RightCtrl }, + { "NumpadDivide", Key.Divide }, + { "PrintScreen", Key.PrintScreen }, + { "AltRight", Key.RightAlt }, + //{ "Unidentified" , Key. }, + { "Home", Key.Home }, + { "ArrowUp", Key.Up }, + { "PageUp", Key.PageUp }, + { "ArrowLeft", Key.Left }, + { "ArrowRight", Key.Right }, + { "End", Key.End }, + { "ArrowDown", Key.Down }, + { "PageDown", Key.PageDown }, + { "Insert", Key.Insert }, + { "Delete", Key.Delete }, + //{ "Unidentified" , Key. }, + { "AudioVolumeMute", Key.VolumeMute }, + { "AudioVolumeDown", Key.VolumeDown }, + { "AudioVolumeUp", Key.VolumeUp }, + //{ "NumpadEqual" , Key. }, + { "Pause", Key.Pause }, + { "NumpadComma", Key.OemComma } + }; + } +} diff --git a/src/Web/Avalonia.Web.Blazor/ManualTriggerRenderTimer.cs b/src/Web/Avalonia.Web.Blazor/ManualTriggerRenderTimer.cs new file mode 100644 index 0000000000..1a06d47744 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/ManualTriggerRenderTimer.cs @@ -0,0 +1,16 @@ +using System.Diagnostics; +using Avalonia.Rendering; + +namespace Avalonia.Web.Blazor +{ + public class ManualTriggerRenderTimer : IRenderTimer + { + private static readonly Stopwatch s_sw = Stopwatch.StartNew(); + + public static ManualTriggerRenderTimer Instance { get; } = new(); + + public void RaiseTick() => Tick?.Invoke(s_sw.Elapsed); + + public event Action? Tick; + } +} diff --git a/src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs b/src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs new file mode 100644 index 0000000000..8cd4d7b111 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs @@ -0,0 +1,165 @@ +using System.Diagnostics; +using Avalonia.Controls; +using Avalonia.Controls.Platform; +using Avalonia.Input; +using Avalonia.Input.Raw; +using Avalonia.Input.TextInput; +using Avalonia.Platform; +using Avalonia.Rendering; +using Avalonia.Web.Blazor.Interop; +using SkiaSharp; + +#nullable enable + +namespace Avalonia.Web.Blazor +{ + internal class RazorViewTopLevelImpl : ITopLevelImplWithTextInputMethod + { + private Size _clientSize; + private BlazorSkiaSurface? _currentSurface; + private IInputRoot? _inputRoot; + private readonly Stopwatch _sw = Stopwatch.StartNew(); + private readonly ITextInputMethodImpl _textInputMethod; + private readonly TouchDevice _touchDevice; + + public RazorViewTopLevelImpl(ITextInputMethodImpl textInputMethod) + { + _textInputMethod = textInputMethod; + TransparencyLevel = WindowTransparencyLevel.None; + AcrylicCompensationLevels = new AcrylicPlatformCompensationLevels(1, 1, 1); + _touchDevice = new TouchDevice(); + } + + public ulong Timestamp => (ulong)_sw.ElapsedMilliseconds; + + + internal void SetSurface(GRContext context, SKHtmlCanvasInterop.GLInfo glInfo, SKColorType colorType, PixelSize size, double scaling) + { + _currentSurface = + new BlazorSkiaSurface(context, glInfo, colorType, size, scaling, GRSurfaceOrigin.BottomLeft); + } + + public void SetClientSize(SKSize size, double dpi) + { + var newSize = new Size(size.Width, size.Height); + + if (newSize != _clientSize) + { + _clientSize = newSize; + + if (_currentSurface is { }) + { + _currentSurface.Size = new PixelSize((int)size.Width, (int)size.Height); + } + + Resized?.Invoke(newSize, PlatformResizeReason.User); + } + } + + public void RawTouchEvent(RawPointerEventType type, Point p, RawInputModifiers modifiers, long touchPointId) + { + if (_inputRoot is { }) + { + Input?.Invoke(new RawTouchEventArgs(_touchDevice, Timestamp, _inputRoot, type, p, modifiers, touchPointId)); + } + } + + public void RawMouseEvent(RawPointerEventType type, Point p, RawInputModifiers modifiers) + { + if (_inputRoot is { }) + { + Input?.Invoke(new RawPointerEventArgs(MouseDevice, Timestamp, _inputRoot, type, p, modifiers)); + } + } + + public void RawMouseWheelEvent(Point p, Vector v, RawInputModifiers modifiers) + { + if (_inputRoot is { }) + { + Input?.Invoke(new RawMouseWheelEventArgs(MouseDevice, Timestamp, _inputRoot, p, v, modifiers)); + } + } + + public void RawKeyboardEvent(RawKeyEventType type, string key, RawInputModifiers modifiers) + { + if (Keycodes.KeyCodes.TryGetValue(key, out var avkey)) + { + if (_inputRoot is { }) + { + Input?.Invoke(new RawKeyEventArgs(KeyboardDevice, Timestamp, _inputRoot, type, avkey, modifiers)); + } + } + } + + public void RawTextEvent(string text) + { + if (_inputRoot is { }) + { + Input?.Invoke(new RawTextInputEventArgs(KeyboardDevice, Timestamp, _inputRoot, text)); + } + } + + public void Dispose() + { + + } + + public IRenderer CreateRenderer(IRenderRoot root) + { + var loop = AvaloniaLocator.Current.GetService(); + + return new DeferredRenderer(root, loop); + } + + public void Invalidate(Rect rect) + { + //Console.WriteLine("invalidate rect called"); + } + + public void SetInputRoot(IInputRoot inputRoot) + { + _inputRoot = inputRoot; + } + + public Point PointToClient(PixelPoint point) => new Point(point.X, point.Y); + + public PixelPoint PointToScreen(Point point) => new PixelPoint((int)point.X, (int)point.Y); + + public void SetCursor(ICursorImpl cursor) + { + // nop + + } + + public IPopupImpl? CreatePopup() + { + return null; + } + + public void SetTransparencyLevelHint(WindowTransparencyLevel transparencyLevel) + { + + } + + public Size ClientSize => _clientSize; + public Size? FrameSize => null; + public double RenderScaling => 1; + + public IEnumerable Surfaces => new object[] { _currentSurface! }; + + public Action? Input { get; set; } + public Action? Paint { get; set; } + public Action? Resized { get; set; } + public Action? ScalingChanged { get; set; } + public Action? TransparencyLevelChanged { get; set; } + public Action? Closed { get; set; } + public Action? LostFocus { get; set; } + public IMouseDevice MouseDevice { get; } = new MouseDevice(); + + public IKeyboardDevice KeyboardDevice { get; } = BlazorWindowingPlatform.Keyboard; + public WindowTransparencyLevel TransparencyLevel { get; } + public AcrylicPlatformCompensationLevels AcrylicCompensationLevels { get; } + + public ITextInputMethodImpl TextInputMethod => _textInputMethod; + } +} diff --git a/src/Web/Avalonia.Web.Blazor/WinStubs.cs b/src/Web/Avalonia.Web.Blazor/WinStubs.cs new file mode 100644 index 0000000000..13d83a9ee3 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/WinStubs.cs @@ -0,0 +1,80 @@ +using Avalonia.Controls; +using Avalonia.Controls.Platform; +using Avalonia.Input; +using Avalonia.Input.Platform; +using Avalonia.Platform; + +#nullable enable + +namespace Avalonia.Web.Blazor +{ + internal class ClipboardStub : IClipboard + { + public Task GetTextAsync() => Task.FromResult(""); + + public Task SetTextAsync(string text) => Task.CompletedTask; + + public Task ClearAsync() => Task.CompletedTask; + + public Task SetDataObjectAsync(IDataObject data) => Task.CompletedTask; + + public Task GetFormatsAsync() => Task.FromResult(Array.Empty()); + + public Task GetDataAsync(string format) => Task.FromResult(new ()); + } + + internal class CursorStub : ICursorImpl + { + public void Dispose() + { + + } + } + + internal class CursorFactoryStub : ICursorFactory + { + public ICursorImpl CreateCursor(IBitmapImpl cursor, PixelPoint hotSpot) + { + return new CursorStub(); + } + + ICursorImpl ICursorFactory.GetCursor(StandardCursorType cursorType) + { + return new CursorStub(); + } + } + + internal class IconLoaderStub : IPlatformIconLoader + { + private class IconStub : IWindowIconImpl + { + public void Save(Stream outputStream) + { + + } + } + + public IWindowIconImpl LoadIcon(string fileName) => new IconStub(); + + public IWindowIconImpl LoadIcon(Stream stream) => new IconStub(); + + public IWindowIconImpl LoadIcon(IBitmapImpl bitmap) => new IconStub(); + } + + internal class SystemDialogsStub : ISystemDialogImpl + { + public Task ShowFileDialogAsync(FileDialog dialog, Window parent) => + Task.FromResult((string[]?)null); + + public Task ShowFolderDialogAsync(OpenFolderDialog dialog, Window parent) => + Task.FromResult((string?)null); + } + + internal class ScreenStub : IScreenImpl + { + public int ScreenCount => 1; + + public IReadOnlyList AllScreens { get; } = + new[] { new Screen(96, new PixelRect(0, 0, 4000, 4000), new PixelRect(0, 0, 4000, 4000), true) }; + } +} diff --git a/src/Web/Avalonia.Web.Blazor/WindowingPlatform.cs b/src/Web/Avalonia.Web.Blazor/WindowingPlatform.cs new file mode 100644 index 0000000000..a3f2de5b61 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/WindowingPlatform.cs @@ -0,0 +1,100 @@ +using Avalonia.Controls.Platform; +using Avalonia.Input; +using Avalonia.Input.Platform; +using Avalonia.Platform; +using Avalonia.Rendering; +using Avalonia.Threading; + +#nullable enable + +namespace Avalonia.Web.Blazor +{ + public class BlazorWindowingPlatform : IWindowingPlatform, IPlatformSettings, IPlatformThreadingInterface + { + private bool _signaled; + private static int s_uiThreadId = -1; + + public IWindowImpl CreateWindow() => throw new NotSupportedException(); + + IWindowImpl IWindowingPlatform.CreateEmbeddableWindow() + { + throw new NotImplementedException(); + } + + public ITrayIconImpl? CreateTrayIcon() + { + return null; + } + + public static KeyboardDevice Keyboard { get; private set; } + + public static void Register() + { + var instance = new BlazorWindowingPlatform(); + Keyboard = new KeyboardDevice(); + AvaloniaLocator.CurrentMutable + .Bind().ToSingleton() + .Bind().ToSingleton() + .Bind().ToConstant(Keyboard) + .Bind().ToConstant(instance) + .Bind().ToConstant(instance) + .Bind().ToConstant(new RenderLoop()) + .Bind().ToConstant(ManualTriggerRenderTimer.Instance) + .Bind().ToSingleton() + .Bind().ToConstant(instance) + .Bind().ToSingleton() + .Bind().ToSingleton(); + } + + public Size DoubleClickSize { get; } = new Size(2, 2); + + public TimeSpan DoubleClickTime { get; } = TimeSpan.FromMilliseconds(500); + + public void RunLoop(CancellationToken cancellationToken) + { + throw new NotSupportedException(); + } + + public IDisposable StartTimer(DispatcherPriority priority, TimeSpan interval, Action tick) + { + return AvaloniaLocator.Current.GetService() + .StartSystemTimer(interval, () => + { + Dispatcher.UIThread.RunJobs(priority); + tick(); + }); + } + + public void Signal(DispatcherPriority priority) + { + if (_signaled) + return; + + _signaled = true; + + IDisposable? disp = null; + + disp = AvaloniaLocator.Current.GetService() + .StartSystemTimer(TimeSpan.FromMilliseconds(1), + () => + { + _signaled = false; + disp?.Dispose(); + + Signaled?.Invoke(null); + }); + } + + public bool CurrentThreadIsLoopThread + { + get + { + return true; // Blazor is single threaded. + } + } + + public event Action? Signaled; + + + } +} diff --git a/src/Web/Avalonia.Web.Blazor/_Imports.razor b/src/Web/Avalonia.Web.Blazor/_Imports.razor new file mode 100644 index 0000000000..77285129da --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/_Imports.razor @@ -0,0 +1 @@ +@using Microsoft.AspNetCore.Components.Web diff --git a/src/Web/Avalonia.Web.Blazor/tsconfig.json b/src/Web/Avalonia.Web.Blazor/tsconfig.json new file mode 100644 index 0000000000..71c462cd60 --- /dev/null +++ b/src/Web/Avalonia.Web.Blazor/tsconfig.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "noImplicitAny": false, + "noEmitOnError": true, + "removeComments": false, + "sourceMap": true, + "target": "ES2020", + "module": "ES2020", + "outDir": "wwwroot" + }, + "exclude": [ + "node_modules" + ] +}