diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index ddf1bfb..f27d96c 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -18,11 +18,12 @@ jobs:
- uses: actions/checkout@v4
- name: Update Versions
env:
- VERSION_PREFIX: '1.2'
+ VERSION_PREFIX: '1.3'
VERSION_SUFFIX: ${{github.run_number}}
run: |
VERSION=$VERSION_PREFIX.$VERSION_SUFFIX
sed -i bak "s:1.0.0:$VERSION:g" src/CrossGraphics.csproj
+ sed -i bak "s:1.0.0:$VERSION:g" maui/CrossGraphics.Maui.csproj
- name: Setup Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
@@ -37,6 +38,8 @@ jobs:
run: dotnet restore -p:NuGetAudit=false
- name: Build Library
run: dotnet build -c Release --no-restore src/CrossGraphics.csproj
+ - name: Build MAUI Library
+ run: dotnet build -c Release --no-restore maui/CrossGraphics.Maui.csproj
- name: Build Test
run: dotnet build -c Release --no-restore tests/CrossGraphicsTests.csproj
- name: Test
@@ -45,7 +48,9 @@ jobs:
run: dotnet run -c Release -p:NuGetAudit=false --project atests/CrossGraphicsAcceptanceTests.csproj -- $(pwd)
- name: Package
if: github.event_name == 'push'
- run: dotnet pack -c Release --no-build -o ./artifacts src/CrossGraphics.csproj
+ run: |
+ dotnet pack -c Release --no-build -o ./artifacts src/CrossGraphics.csproj
+ dotnet pack -c Release --no-build -o ./artifacts maui/CrossGraphics.Maui.csproj
- name: Upload Package
if: github.event_name == 'push'
uses: actions/upload-artifact@v4
diff --git a/CrossGraphics.sln b/CrossGraphics.sln
index 546ef07..17f2c33 100644
--- a/CrossGraphics.sln
+++ b/CrossGraphics.sln
@@ -1,45 +1,98 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 17
-VisualStudioVersion = 17.0.31903.59
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrossGraphics", "src\CrossGraphics.csproj", "{60AE8F54-5095-4FCF-978B-D9A3160E4594}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrossGraphicsTests", "tests\CrossGraphicsTests.csproj", "{96BC9201-E9B3-40FE-A099-0646C43A193A}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{8A2BAA71-2760-4B79-9D4C-EC614D3F1F53}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lols", "samples\Lols\Lols.csproj", "{73154013-5BF3-4002-8312-50349011EB76}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrossGraphicsAcceptanceTests", "atests\CrossGraphicsAcceptanceTests.csproj", "{95A67297-9BDF-43EC-9194-46F2FCBBCBD4}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|Any CPU.Build.0 = Release|Any CPU
- {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|Any CPU.Build.0 = Release|Any CPU
- {73154013-5BF3-4002-8312-50349011EB76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {73154013-5BF3-4002-8312-50349011EB76}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {73154013-5BF3-4002-8312-50349011EB76}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {73154013-5BF3-4002-8312-50349011EB76}.Release|Any CPU.Build.0 = Release|Any CPU
- {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {73154013-5BF3-4002-8312-50349011EB76} = {8A2BAA71-2760-4B79-9D4C-EC614D3F1F53}
- EndGlobalSection
-EndGlobal
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31903.59
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrossGraphics", "src\CrossGraphics.csproj", "{60AE8F54-5095-4FCF-978B-D9A3160E4594}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrossGraphicsTests", "tests\CrossGraphicsTests.csproj", "{96BC9201-E9B3-40FE-A099-0646C43A193A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{8A2BAA71-2760-4B79-9D4C-EC614D3F1F53}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lols", "samples\Lols\Lols.csproj", "{73154013-5BF3-4002-8312-50349011EB76}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrossGraphicsAcceptanceTests", "atests\CrossGraphicsAcceptanceTests.csproj", "{95A67297-9BDF-43EC-9194-46F2FCBBCBD4}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "maui", "maui", "{5358A8DD-221C-A68E-DDFB-CD91B98A505E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrossGraphics.Maui", "maui\CrossGraphics.Maui.csproj", "{AD6DF014-8272-4052-8974-0A89FE6C726D}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|Any CPU = Release|Any CPU
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|x64.Build.0 = Debug|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Debug|x86.Build.0 = Debug|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|Any CPU.Build.0 = Release|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|x64.ActiveCfg = Release|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|x64.Build.0 = Release|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|x86.ActiveCfg = Release|Any CPU
+ {60AE8F54-5095-4FCF-978B-D9A3160E4594}.Release|x86.Build.0 = Release|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|x64.Build.0 = Debug|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Debug|x86.Build.0 = Debug|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|x64.ActiveCfg = Release|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|x64.Build.0 = Release|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|x86.ActiveCfg = Release|Any CPU
+ {96BC9201-E9B3-40FE-A099-0646C43A193A}.Release|x86.Build.0 = Release|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Debug|x64.Build.0 = Debug|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Debug|x86.Build.0 = Debug|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Release|Any CPU.Build.0 = Release|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Release|x64.ActiveCfg = Release|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Release|x64.Build.0 = Release|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Release|x86.ActiveCfg = Release|Any CPU
+ {73154013-5BF3-4002-8312-50349011EB76}.Release|x86.Build.0 = Release|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|x64.Build.0 = Debug|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Debug|x86.Build.0 = Debug|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|Any CPU.Build.0 = Release|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|x64.ActiveCfg = Release|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|x64.Build.0 = Release|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|x86.ActiveCfg = Release|Any CPU
+ {95A67297-9BDF-43EC-9194-46F2FCBBCBD4}.Release|x86.Build.0 = Release|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Debug|x64.Build.0 = Debug|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Debug|x86.Build.0 = Debug|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Release|x64.ActiveCfg = Release|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Release|x64.Build.0 = Release|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Release|x86.ActiveCfg = Release|Any CPU
+ {AD6DF014-8272-4052-8974-0A89FE6C726D}.Release|x86.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {73154013-5BF3-4002-8312-50349011EB76} = {8A2BAA71-2760-4B79-9D4C-EC614D3F1F53}
+ {AD6DF014-8272-4052-8974-0A89FE6C726D} = {5358A8DD-221C-A68E-DDFB-CD91B98A505E}
+ EndGlobalSection
+EndGlobal
diff --git a/maui/CrossGraphics.Maui.csproj b/maui/CrossGraphics.Maui.csproj
new file mode 100644
index 0000000..50f8a71
--- /dev/null
+++ b/maui/CrossGraphics.Maui.csproj
@@ -0,0 +1,49 @@
+
+
+ net10.0-ios;net10.0-macos;net10.0-maccatalyst;net10.0-android
+ $(TargetFrameworks);net10.0-windows10.0.19041.0
+
+ 1.0.0
+ praeclarum
+ MAUI support for CrossGraphics.
+ maui;graphics;rendering;vector;draw;svg;wmf
+ https://github.com/praeclarum/CrossGraphics
+ MIT
+ README.md
+ true
+ true
+ true
+ snupkg
+
+ true
+ $(NoWarn);NU1900
+ 14.0
+ enable
+
+ true
+ true
+
+ 12.2
+ 15.0
+ 12.0
+ 21.0
+ 10.0.17763.0
+ 10.0.17763.0
+ 6.5
+
+ MONOMAC
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/MauiCanvas.cs b/maui/MauiCanvas.cs
similarity index 100%
rename from src/MauiCanvas.cs
rename to maui/MauiCanvas.cs
diff --git a/src/MauiSkiaCanvas.cs b/maui/MauiSkiaCanvas.cs
similarity index 100%
rename from src/MauiSkiaCanvas.cs
rename to maui/MauiSkiaCanvas.cs
diff --git a/samples/Lols/Lols.csproj b/samples/Lols/Lols.csproj
index 9bb46b1..45d4001 100644
--- a/samples/Lols/Lols.csproj
+++ b/samples/Lols/Lols.csproj
@@ -60,10 +60,12 @@
+
+
diff --git a/samples/Lols/MainPage.xaml b/samples/Lols/MainPage.xaml
index 4f6e256..141a85f 100644
--- a/samples/Lols/MainPage.xaml
+++ b/samples/Lols/MainPage.xaml
@@ -1,7 +1,7 @@
diff --git a/src/CrossGraphics.csproj b/src/CrossGraphics.csproj
index 6fd132c..7a8f114 100644
--- a/src/CrossGraphics.csproj
+++ b/src/CrossGraphics.csproj
@@ -17,14 +17,11 @@
true
$(NoWarn);NU1900
- 12.0
+ 14.0
disable
false
true
- true
- true
-
12.2
15.0
12.0
@@ -46,8 +43,6 @@
-
-
@@ -59,10 +54,7 @@
-
-
-
@@ -72,10 +64,7 @@
-
-
-
@@ -84,10 +73,7 @@
-
-
-
@@ -95,9 +81,6 @@
-
-
-