diff --git a/UI/MauiEmbedding/GrialKitApp/.editorconfig b/UI/MauiEmbedding/GrialKitApp/.editorconfig
new file mode 100644
index 000000000..b947be645
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/.editorconfig
@@ -0,0 +1,167 @@
+; This file is for unifying the coding style for different editors and IDEs.
+; More information at http://editorconfig.org
+
+# This file is the top-most EditorConfig file
+root = true
+
+##########################################
+# Common Settings
+##########################################
+
+[*]
+indent_style = space
+end_of_line = crlf
+trim_trailing_whitespace = true
+insert_final_newline = true
+charset = utf-8
+
+##########################################
+# File Extension Settings
+##########################################
+
+[*.{yml,yaml}]
+indent_size = 2
+
+[.vsconfig]
+indent_size = 2
+end_of_line = lf
+
+[*.sln]
+indent_style = tab
+indent_size = 2
+
+[*.{csproj,proj,projitems,shproj}]
+indent_size = 2
+
+[*.{json,slnf}]
+indent_size = 2
+end_of_line = lf
+
+[*.{props,targets}]
+indent_size = 2
+
+[*.xaml]
+indent_size = 2
+charset = utf-8-bom
+
+[*.xml]
+indent_size = 2
+end_of_line = lf
+
+[*.plist]
+indent_size = 2
+indent_style = tab
+end_of_line = lf
+
+[*.manifest]
+indent_size = 2
+
+[*.appxmanifest]
+indent_size = 2
+
+[*.{json,css,webmanifest}]
+indent_size = 2
+end_of_line = lf
+
+[web.config]
+indent_size = 2
+end_of_line = lf
+
+[*.sh]
+indent_size = 2
+end_of_line = lf
+
+[*.cs]
+# EOL should be normalized by Git. See https://github.com/dotnet/format/issues/1099
+end_of_line = unset
+
+# See https://github.com/dotnet/roslyn/issues/20356#issuecomment-310143926
+trim_trailing_whitespace = false
+
+tab_width = 4
+indent_size = 4
+
+# Sort using and Import directives with System.* appearing first
+dotnet_sort_system_directives_first = true
+
+# Avoid "this." and "Me." if not necessary
+dotnet_style_qualification_for_field = false:suggestion
+dotnet_style_qualification_for_property = false:suggestion
+dotnet_style_qualification_for_method = false:suggestion
+dotnet_style_qualification_for_event = false:suggestion
+
+#### Naming styles ####
+
+# Naming rules
+
+dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion
+dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
+dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
+
+dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion
+dotnet_naming_rule.types_should_be_pascal_case.symbols = types
+dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case
+
+dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion
+dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
+dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
+
+# Symbol specifications
+
+dotnet_naming_symbols.interface.applicable_kinds = interface
+dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.interface.required_modifiers =
+
+dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
+dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.types.required_modifiers =
+
+dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
+dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.non_field_members.required_modifiers =
+
+# Naming styles
+
+dotnet_naming_style.begins_with_i.required_prefix = I
+dotnet_naming_style.begins_with_i.required_suffix =
+dotnet_naming_style.begins_with_i.word_separator =
+dotnet_naming_style.begins_with_i.capitalization = pascal_case
+
+dotnet_naming_style.pascal_case.required_prefix =
+dotnet_naming_style.pascal_case.required_suffix =
+dotnet_naming_style.pascal_case.word_separator =
+dotnet_naming_style.pascal_case.capitalization = pascal_case
+
+dotnet_naming_style.pascal_case.required_prefix =
+dotnet_naming_style.pascal_case.required_suffix =
+dotnet_naming_style.pascal_case.word_separator =
+dotnet_naming_style.pascal_case.capitalization = pascal_case
+dotnet_style_operator_placement_when_wrapping = beginning_of_line
+dotnet_style_coalesce_expression = true:suggestion
+dotnet_style_null_propagation = true:suggestion
+dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion
+dotnet_style_prefer_auto_properties = true:silent
+dotnet_style_object_initializer = true:suggestion
+dotnet_style_collection_initializer = true:suggestion
+dotnet_style_prefer_simplified_boolean_expressions = true:suggestion
+dotnet_style_prefer_conditional_expression_over_assignment = true:silent
+dotnet_style_prefer_conditional_expression_over_return = true:silent
+dotnet_style_explicit_tuple_names = true:suggestion
+dotnet_style_prefer_inferred_tuple_names = true:suggestion
+
+csharp_indent_labels = one_less_than_current
+csharp_using_directive_placement = outside_namespace:silent
+csharp_prefer_simple_using_statement = true:suggestion
+csharp_prefer_braces = true:silent
+csharp_style_namespace_declarations = file_scoped:warning
+csharp_style_prefer_method_group_conversion = true:silent
+csharp_style_prefer_top_level_statements = true:silent
+csharp_style_prefer_primary_constructors = true:suggestion
+csharp_style_expression_bodied_methods = false:silent
+csharp_style_expression_bodied_constructors = false:silent
+csharp_style_expression_bodied_operators = false:silent
+csharp_style_expression_bodied_properties = true:silent
+csharp_style_expression_bodied_indexers = true:silent
+csharp_style_expression_bodied_accessors = true:silent
+csharp_style_expression_bodied_lambdas = true:silent
+csharp_style_expression_bodied_local_functions = false:silent
diff --git a/UI/MauiEmbedding/GrialKitApp/.gitignore b/UI/MauiEmbedding/GrialKitApp/.gitignore
index bc55501a7..ef88c2053 100644
--- a/UI/MauiEmbedding/GrialKitApp/.gitignore
+++ b/UI/MauiEmbedding/GrialKitApp/.gitignore
@@ -399,5 +399,5 @@ FodyWeavers.xsd
# Single Target Config
solution-config.props
-# Windows Publish Profiles
-!**/*.Windows/Properties/PublishProfiles/*.pubxml
\ No newline at end of file
+# Publish Profiles
+!**/Properties/PublishProfiles/*.pubxml
\ No newline at end of file
diff --git a/UI/MauiEmbedding/GrialKitApp/.vscode/tasks.json b/UI/MauiEmbedding/GrialKitApp/.vscode/tasks.json
index 02ee36589..54d839243 100644
--- a/UI/MauiEmbedding/GrialKitApp/.vscode/tasks.json
+++ b/UI/MauiEmbedding/GrialKitApp/.vscode/tasks.json
@@ -1,6 +1,5 @@
{
"version": "2.0.0",
"tasks": [
-
]
}
diff --git a/UI/MauiEmbedding/GrialKitApp/.vsconfig b/UI/MauiEmbedding/GrialKitApp/.vsconfig
index 1c9c22808..8bfddc4d6 100644
--- a/UI/MauiEmbedding/GrialKitApp/.vsconfig
+++ b/UI/MauiEmbedding/GrialKitApp/.vsconfig
@@ -5,34 +5,21 @@
"Microsoft.VisualStudio.Workload.CoreEditor",
"Microsoft.NetCore.Component.SDK",
"Microsoft.NetCore.Component.DevelopmentTools",
- "Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions",
- "Microsoft.NetCore.Component.Web",
"Microsoft.Net.ComponentGroup.DevelopmentPrerequisites",
"Microsoft.VisualStudio.Component.TextTemplating",
- "Microsoft.VisualStudio.Component.IISExpress",
- "Component.Microsoft.Web.LibraryManager",
- "Microsoft.VisualStudio.ComponentGroup.Web",
- "Microsoft.VisualStudio.Component.Web",
- "Microsoft.VisualStudio.ComponentGroup.Web.Client",
- "Microsoft.VisualStudio.Workload.NetWeb",
- "Microsoft.VisualStudio.ComponentGroup.Azure.Prerequisites",
- "Microsoft.VisualStudio.Workload.Azure",
- "Microsoft.VisualStudio.Component.Windows10SDK.19041",
"Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites",
"Microsoft.VisualStudio.Component.Debugger.JustInTime",
- "Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging",
"Microsoft.VisualStudio.Workload.ManagedDesktop",
"Microsoft.Component.NetFX.Native",
"Microsoft.VisualStudio.Component.Graphics",
- "Component.OpenJDK",
- "Microsoft.VisualStudio.Component.MonoDebugger",
"Microsoft.VisualStudio.Component.Merq",
"Component.Xamarin.RemotedSimulator",
- "Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.TemplateEngine",
- "Component.Xamarin",
- "Component.Android.SDK32",
+ "Microsoft.VisualStudio.Component.MonoDebugger",
+ "Microsoft.VisualStudio.ComponentGroup.Maui.All",
+ "Component.Android.SDK34",
+ "Component.Android.SDK33",
+ "Component.OpenJDK",
"Microsoft.VisualStudio.Workload.NetCrossPlat",
- "Microsoft.VisualStudio.Workload.NetCoreTools",
- "Microsoft.VisualStudio.ComponentGroup.Maui.All"
+ "Microsoft.VisualStudio.Workload.NetCoreTools"
]
}
diff --git a/UI/MauiEmbedding/GrialKitApp/Directory.Build.props b/UI/MauiEmbedding/GrialKitApp/Directory.Build.props
index 89caf9ab0..2641d132e 100644
--- a/UI/MauiEmbedding/GrialKitApp/Directory.Build.props
+++ b/UI/MauiEmbedding/GrialKitApp/Directory.Build.props
@@ -1,74 +1,24 @@
-
-
-
-
-
-
- enable
- enable
-
- portable
- True
-
- true
-
- $(NoWarn);CA1416;NU1507;NETSDK1023
-
- en
-
- false
- false
- false
- false
- false
-
- 8.0.7
- 1.10.0.1
- 2.6.0.1
- 1.3.0.1
-
-
-
-
-
- true
- 21.0
-
-
-
-
- true
- 14.2
-
-
-
-
- true
- 10.14
-
-
-
-
- true
- 14.0
-
-
-
-
- true
-
- 10.0.19041.0
- 10.0.19041.0
- win-x86;win-x64;win-arm64
-
-
-
-
-
+
+ enable
+ enable
+ true
+
+
+ $(NoWarn);NU1507;NETSDK1201;NETSDK1023;PRI257
+
+
+
+
+ 4.1.23
+ 6.0.18
+ 5.0.13
+ 5.2.14
+
diff --git a/UI/MauiEmbedding/GrialKitApp/Directory.Build.targets b/UI/MauiEmbedding/GrialKitApp/Directory.Build.targets
index 30332cf7d..f75adf7e4 100644
--- a/UI/MauiEmbedding/GrialKitApp/Directory.Build.targets
+++ b/UI/MauiEmbedding/GrialKitApp/Directory.Build.targets
@@ -1,6 +1,2 @@
-
-
-
-
-
+
diff --git a/UI/MauiEmbedding/GrialKitApp/Directory.Packages.props b/UI/MauiEmbedding/GrialKitApp/Directory.Packages.props
index d9ab35bb7..79c529cd0 100644
--- a/UI/MauiEmbedding/GrialKitApp/Directory.Packages.props
+++ b/UI/MauiEmbedding/GrialKitApp/Directory.Packages.props
@@ -1,34 +1,12 @@
-
-
-
-
-
+
-
-
-
+ See https://aka.platform.uno/using-uno-sdk for more information.
+ -->
+
+
+
+
+
+
\ No newline at end of file
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/AppHead.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/AppHead.xaml
deleted file mode 100644
index d4b086380..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/AppHead.xaml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/AppHead.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/AppHead.xaml.cs
deleted file mode 100644
index 9ff0be290..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/AppHead.xaml.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using Microsoft.UI.Xaml;
-using Uno.Resizetizer;
-
-namespace GrialKitApp;
-
-public sealed partial class AppHead : App
-{
- ///
- /// Initializes the singleton application object. This is the first line of authored code
- /// executed, and as such is the logical equivalent of main() or WinMain().
- ///
- public AppHead()
- {
- this.InitializeComponent();
- }
-
- ///
- /// Invoked when the application is launched normally by the end user. Other entry points
- /// will be used such as when the application is launched to open a specific file.
- ///
- /// Details about the launch request and process.
- protected override void OnLaunched(LaunchActivatedEventArgs args)
- {
- base.OnLaunched(args);
-
- MainWindow.SetWindowIcon();
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/GrialKitApp.Base.csproj b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/GrialKitApp.Base.csproj
deleted file mode 100644
index 82a9732e3..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/GrialKitApp.Base.csproj
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
- net8.0
- false
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/base.props b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/base.props
deleted file mode 100644
index 9b39b5c0e..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/base.props
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml
index eec291413..4e8a7cd76 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml
@@ -2,7 +2,7 @@
+ x:Class="GrialKitApp.MauiControls.App">
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml.cs
index fa987b8dd..efd66949d 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml.cs
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/App.xaml.cs
@@ -2,8 +2,8 @@
public partial class App : Application
{
- public App()
- {
- InitializeComponent();
- }
+ public App()
+ {
+ InitializeComponent();
+ }
}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AppBuilderExtensions.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AppBuilderExtensions.cs
index cd14b633a..51e0d8c03 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AppBuilderExtensions.cs
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AppBuilderExtensions.cs
@@ -1,45 +1,27 @@
-using System.Diagnostics;
-using System.Reflection;
-using System.Runtime.CompilerServices;
-// TODO: Uncomment
-//using UXDivers.Grial;
-using static System.Net.Mime.MediaTypeNames;
-
-#if ANDROID
-using Android.App;
-using Android.Content;
-using Android.Content.PM;
-#endif
+using UXDivers.Grial;
namespace GrialKitApp;
public static class AppBuilderExtensions
{
- public static MauiAppBuilder UseMauiControls(this MauiAppBuilder builder)
- {
- // TODO: Uncomment
- //#if __IOS__
- // var theme = new ThemeColorsBase(new Dictionary
- // {
- // { "AccentColor", Color.FromArgb("#FF3F75FF") }
- // });
-
- // GrialKit.Init(theme, "GrialKitApp.MauiControls.GrialLicense");
- //#else
- // Context context = Android.App.Application.Context;
+ public static MauiAppBuilder UseMauiControls(this MauiAppBuilder builder)
+ {
+#if __IOS__
+ var theme = new ThemeColorsBase(new Dictionary
+ {
+ { "AccentColor", Color.FromArgb("#FF3F75FF") }
+ });
- // var lbl = ((PackageItemInfo)context.ApplicationInfo).LoadLabel(context.PackageManager);
- // var lbl2 = ((PackageItemInfo)context.ApplicationInfo).NonLocalizedLabel;
-
- // GrialKit.Init("GrialKitApp.MauiControls.GrialLicense");
- //#endif
+ GrialKit.Init(theme, "GrialKitApp.MauiControls.GrialLicense");
+#else
+ GrialKit.Init("GrialKitApp.MauiControls.GrialLicense");
+#endif
return builder
- // TODO: Uncomment
- // .UseGrial()
- .ConfigureFonts(fonts =>
- {
- fonts.AddFont("GrialKitApp/Assets/Fonts/OpenSansRegular.ttf", "OpenSansRegular");
- fonts.AddFont("GrialKitApp/Assets/Fonts/OpenSansSemibold.ttf", "OpenSansSemibold");
- });
- }
-}
\ No newline at end of file
+ .UseGrial()
+ .ConfigureFonts(fonts =>
+ {
+ fonts.AddFont("Assets/Fonts/OpenSansRegular.ttf", "OpenSansRegular");
+ fonts.AddFont("Assets/Fonts/OpenSansSemibold.ttf", "OpenSansSemibold");
+ });
+ }
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AreaChartSample.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AreaChartSample.xaml
deleted file mode 100644
index 708365dc3..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AreaChartSample.xaml
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AreaChartSample.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AreaChartSample.xaml.cs
deleted file mode 100644
index 3bdda448f..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/AreaChartSample.xaml.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-namespace GrialKitApp.MauiControls;
-
-public partial class AreaChartSample : ContentPage
-{
- public AreaChartSample()
- {
- InitializeComponent();
-
- // TODO: Uncomment
- //chart.BindingContext = SampleData.MultiseriesWithLabels();
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarChartSample.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarChartSample.xaml
deleted file mode 100644
index 033f5d145..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarChartSample.xaml
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarChartSample.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarChartSample.xaml.cs
deleted file mode 100644
index 7200abf11..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarChartSample.xaml.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-namespace GrialKitApp.MauiControls;
-
-public partial class BarChartSample : ContentPage
-{
- public BarChartSample()
- {
- InitializeComponent();
-
- // TODO: Uncomment
- //chart1.BindingContext = chart2.BindingContext = SampleData.Bar();
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarMultiSeriesSample.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarMultiSeriesSample.xaml
deleted file mode 100644
index 210d967cb..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarMultiSeriesSample.xaml
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarMultiSeriesSample.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarMultiSeriesSample.xaml.cs
deleted file mode 100644
index 42da24da8..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/BarMultiSeriesSample.xaml.cs
+++ /dev/null
@@ -1,13 +0,0 @@
-namespace GrialKitApp.MauiControls;
-
-public partial class BarMultiSeriesSample : ContentPage
-{
- public BarMultiSeriesSample()
- {
- InitializeComponent();
-
- // TODO: Uncomment
- //chart.BindingContext = SampleData.MultiSeriesBar();
-
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/EmbeddedControl.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/EmbeddedControl.xaml
new file mode 100644
index 000000000..3edb7f54b
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/EmbeddedControl.xaml
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/EmbeddedControl.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/EmbeddedControl.xaml.cs
new file mode 100644
index 000000000..0e09a7a07
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/EmbeddedControl.xaml.cs
@@ -0,0 +1,31 @@
+namespace GrialKitApp.MauiControls;
+
+public partial class EmbeddedControl : ContentView
+{
+ public EmbeddedControl()
+ {
+ InitializeComponent();
+
+ chart.BindingContext = new[]
+ {
+ new {
+ Value = 521.02,
+ },
+ new {
+ Value = 62.56,
+ },
+ new {
+ Value = 245.52,
+ },
+ new {
+ Value = 33.26,
+ },
+ new {
+ Value = 33.26,
+ },
+ new {
+ Value = 78.95,
+ }
+ };
+ }
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/GrialKitApp.MauiControls.csproj b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/GrialKitApp.MauiControls.csproj
index 7718e1824..c2c8facac 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/GrialKitApp.MauiControls.csproj
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/GrialKitApp.MauiControls.csproj
@@ -1,22 +1,42 @@
-
- net8.0-ios;net8.0-android
- $(OverrideTargetFrameworks)
-
- true
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ net8.0;
+ net8.0-android;
+ net8.0-ios;
+
+
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MSBuild:UpdateDesignTimeXaml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/LineChartSample.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/LineChartSample.xaml
deleted file mode 100644
index f97c4113a..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/LineChartSample.xaml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/LineChartSample.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/LineChartSample.xaml.cs
deleted file mode 100644
index 35f732aa6..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/LineChartSample.xaml.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-namespace GrialKitApp.MauiControls;
-
-public partial class LineChartSample : ContentPage
-{
- public LineChartSample()
- {
- InitializeComponent();
-
- // TODO: Uncomment
- //chart.BindingContext = SampleData.Line();
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml
index d6aa34d1a..58bf423f0 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml
@@ -4,42 +4,40 @@
x:Class="GrialKitApp.MauiControls.PieChartSample"
xmlns:grial="http://uxdivers.com/grial"
Title="PieChartSample">
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
+
+
-
-
+
+
-
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml.cs
index 96b31779a..6621d43b8 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml.cs
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/PieChartSample.xaml.cs
@@ -1,12 +1,11 @@
-namespace GrialKitApp.MauiControls;
+namespace GrialKitApp.MauiControls;
public partial class PieChartSample : ContentPage
{
- public PieChartSample()
- {
- InitializeComponent();
+ public PieChartSample()
+ {
+ InitializeComponent();
- // TODO: Uncomment
- //chart.BindingContext = SampleData.Ring();
+ chart.BindingContext = SampleData.Ring();
}
}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/SampleData.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/SampleData.cs
deleted file mode 100644
index 8dda89e4b..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/SampleData.cs
+++ /dev/null
@@ -1,202 +0,0 @@
-using System;
-namespace GrialKitApp.MauiControls
-{
- public static class SampleData
- {
- public static object[] Ring()
- {
- return new[]
- {
- new {
- Value = 521.02,
- },
- new {
- Value = 62.56,
- },
- new {
- Value = 245.52,
- },
- new {
- Value = 33.26,
- },
- new {
- Value = 33.26,
- },
- new {
- Value = 78.95,
- }
- };
- }
-
- public static object[] Line()
- {
- return new[]
- {
- new {
- Value = 100,
- Label = "12h",
- },
- new {
- Value = 10,
- Label = "11h",
- },
- new {
- Value = 90,
- Label = "10h",
- },
- new {
- Value = 8,
- Label = "9h",
- },
- new {
- Value = 70,
- Label = "8h",
- },
- new {
- Value = 100,
- Label = "7h",
- },
- new {
- Value = 10,
- Label = "6h",
- },
- new {
- Value = 100,
- Label = "5h",
- },
- new {
- Value = 50,
- Label = "4h",
- },
- new {
- Value = 40,
- Label = "3h",
- },
- new {
- Value = 10,
- Label = "2h",
- },
- new {
- Value = 90,
- Label = "1h",
- }
- };
- }
-
- public static object[] Bar()
- {
- return new[]
- {
- new {
- Label = "Cooling",
- Value = 300
- },
- new {
- Label = "Lighting",
- Value = 250
- },
- new {
- Label = "Heating",
- Value = 190
- },
- new {
- Label = "Washing",
- Value = 150
- },
- new {
- Label = "Cooking",
- Value = 80
- }
- };
- }
-
- public static object MultiSeriesBar()
- {
- return new
- {
- FirstSeries = new[]
- {
- new {
- Label = "Jul 21",
- Value = 25
- },
- new {
- Label = "Jul 23",
- Value = 45
- },
- new {
- Label = "Jul 25",
- Value = 120
- },
- new {
- Label = "Jul 27",
- Value = 105
- },
- new {
- Label = "Jul 29",
- Value = 225
- }
- },
- SecondSeries = new []
- {
- new {
- Label = "Jul 21",
- Value = 50
- },
- new {
- Label = "Jul 23",
- Value = 75
- },
- new {
- Label = "Jul 25",
- Value = 60
- },
- new {
- Label = "Jul 27",
- Value = 150
- },
- new {
- Label = "Jul 29",
- Value = 160
- }
- }
- };
- }
-
- public static object MultiseriesWithLabels()
- {
- return new
- {
- Labels = new[]
- {
- "12 AM",
- "4 AM",
- "8 AM",
- "12 PM",
- "4 PM",
- "8 PM"
- },
- MaxValue = 15,
- FirstSeries = new []
- {
- 0,
- 2,
- 7,
- 2,
- 4,
- 3
- },
- SecondSeries = new[]
- {
- 0,
- 4,
- 3,
- 5,
- 1,
- 4
- }
- };
- }
- }
-}
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/Templates/SwitchOption.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/Templates/SwitchOption.xaml
deleted file mode 100644
index 6235baa0d..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/Templates/SwitchOption.xaml
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/Templates/SwitchOption.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/Templates/SwitchOption.xaml.cs
deleted file mode 100644
index 0925e5ab7..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.MauiControls/Templates/SwitchOption.xaml.cs
+++ /dev/null
@@ -1,35 +0,0 @@
-namespace GrialKitApp.MauiControls;
-
-public partial class SwitchOption : ContentView
-{
- public static readonly BindableProperty LabelProperty =
- BindableProperty.Create(
- nameof(Label),
- typeof(string),
- typeof(SwitchOption),
- defaultValue: "");
-
- public string Label
- {
- get { return (string)GetValue(LabelProperty); }
- set { SetValue(LabelProperty, value); }
- }
-
- public static readonly BindableProperty ValueProperty =
- BindableProperty.Create(
- nameof(Value),
- typeof(bool),
- typeof(SwitchOption),
- defaultValue: true);
-
- public bool Value
- {
- get { return (bool)GetValue(ValueProperty); }
- set { SetValue(ValueProperty, value); }
- }
-
- public SwitchOption()
- {
- InitializeComponent();
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Main.Android.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Main.Android.cs
deleted file mode 100644
index 30e0f7a7c..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Main.Android.cs
+++ /dev/null
@@ -1,43 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Android.App;
-using Android.Content;
-using Android.OS;
-using Android.Runtime;
-using Android.Views;
-using Android.Widget;
-using Com.Nostra13.Universalimageloader.Core;
-using Microsoft.UI.Xaml.Media;
-
-namespace GrialKitApp.Droid;
-
-[global::Android.App.ApplicationAttribute(
- Label = "GrialControlsTestBed",
- Icon = "@mipmap/iconapp",
- LargeHeap = true,
- HardwareAccelerated = true,
- Theme = "@style/AppTheme"
-)]
-public class Application : Microsoft.UI.Xaml.NativeApplication
-{
- public Application(IntPtr javaReference, JniHandleOwnership transfer)
- : base(() => new AppHead(), javaReference, transfer)
- {
- ConfigureUniversalImageLoader();
- }
-
- private static void ConfigureUniversalImageLoader()
- {
- // Create global configuration and initialize ImageLoader with this config
- ImageLoaderConfiguration config = new ImageLoaderConfiguration
- .Builder(Context)
- .Build();
-
- ImageLoader.Instance.Init(config);
-
- ImageSource.DefaultImageLoader = ImageLoader.Instance.LoadImageAsync;
- }
-}
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/GrialKitApp.Mobile.csproj b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/GrialKitApp.Mobile.csproj
deleted file mode 100644
index 84634ac05..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/GrialKitApp.Mobile.csproj
+++ /dev/null
@@ -1,93 +0,0 @@
-
-
- net8.0-ios;net8.0-android
- $(OverrideTargetFrameworks)
- true
- Exe
-
- GrialControlsTestBed
- GrialControlsTestBed
-
-
- com.grialcontrolstestbed
- 09267992-D99C-4976-B09B-4572DCB585A4
-
- 1.0
- 1
-
- Android\AndroidManifest.xml
-
-
-
-
- True
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(MtouchExtraArgs) --setenv=MONO_GC_PARAMS=soft-heap-limit=512m,nursery-size=64m,evacuation-threshold=66,major=marksweep,concurrent-sweep
-
- $(MtouchExtraArgs) --registrar:static
- iossimulator-x64
-
-
-
- $(MtouchExtraArgs) --marshal-objectivec-exceptions:disable
-
-
-
-
-
- $(MtouchExtraArgs) --setenv=MONO_GC_PARAMS=soft-heap-limit=512m,nursery-size=64m,evacuation-threshold=66,major=marksweep,concurrent-sweep
-
- $(MtouchExtraArgs) --registrar:static
-
- false
- maccatalyst-x64
-
-
-
- $(MtouchExtraArgs) --marshal-objectivec-exceptions:disable
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Info.plist b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Info.plist
deleted file mode 100644
index 5a4053db4..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Info.plist
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
- UIDeviceFamily
-
- 2
-
- LSApplicationCategoryType
- public.app-category.utilities
- UISupportedInterfaceOrientations
-
- UIInterfaceOrientationPortrait
- UIInterfaceOrientationLandscapeLeft
- UIInterfaceOrientationLandscapeRight
-
- XSAppIconAssets
- Assets.xcassets/iconapp.appiconset
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Main.maccatalyst.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Main.maccatalyst.cs
deleted file mode 100644
index 02997bb3d..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Main.maccatalyst.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using UIKit;
-
-namespace GrialKitApp.MacCatalyst;
-
-public class EntryPoint
-{
- // This is the main entry point of the application.
- public static void Main(string[] args)
- {
- // if you want to use a different Application Delegate class from "AppDelegate"
- // you can specify it here.
- UIApplication.Main(args, null, typeof(AppHead));
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Entitlements.plist b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Entitlements.plist
deleted file mode 100644
index 24c310368..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Entitlements.plist
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Main.iOS.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Main.iOS.cs
deleted file mode 100644
index 07742ba64..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Main.iOS.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using UIKit;
-
-namespace GrialKitApp.iOS;
-
-public class EntryPoint
-{
- // This is the main entry point of the application.
- public static void Main(string[] args)
- {
- // if you want to use a different Application Delegate class from "AppDelegate"
- // you can specify it here.
- UIApplication.Main(args, null, typeof(AppHead));
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Media.xcassets/LaunchImages.launchimage/Contents.json b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Media.xcassets/LaunchImages.launchimage/Contents.json
deleted file mode 100644
index 69555e440..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Media.xcassets/LaunchImages.launchimage/Contents.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "images": [
- {
- "orientation": "portrait",
- "extent": "full-screen",
- "minimum-system-version": "7.0",
- "scale": "2x",
- "size": "640x960",
- "idiom": "iphone"
- },
- {
- "orientation": "portrait",
- "extent": "full-screen",
- "minimum-system-version": "7.0",
- "subtype": "retina4",
- "scale": "2x",
- "size": "640x1136",
- "idiom": "iphone"
- },
- {
- "orientation": "portrait",
- "extent": "full-screen",
- "minimum-system-version": "7.0",
- "scale": "1x",
- "size": "768x1024",
- "idiom": "ipad"
- },
- {
- "orientation": "landscape",
- "extent": "full-screen",
- "minimum-system-version": "7.0",
- "scale": "1x",
- "size": "1024x768",
- "idiom": "ipad"
- },
- {
- "orientation": "portrait",
- "extent": "full-screen",
- "minimum-system-version": "7.0",
- "scale": "2x",
- "size": "1536x2048",
- "idiom": "ipad"
- },
- {
- "orientation": "landscape",
- "extent": "full-screen",
- "minimum-system-version": "7.0",
- "scale": "2x",
- "size": "2048x1536",
- "idiom": "ipad"
- }
- ],
- "properties": {},
- "info": {
- "version": 1,
- "author": ""
- }
-}
\ No newline at end of file
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.sln b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.sln
index dc6082928..052acd0ae 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.sln
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp.sln
@@ -2,25 +2,21 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.2.32210.308
MinimumVisualStudioVersion = 15.0.26124.0
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Source", "Source", "{B4EB3596-887D-4903-9919-A008778BB462}"
+
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Source", "Source", "{6D555D57-83C9-4A57-B5D1-F97BA2A71109}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Platforms", "Platforms", "{6A3D4432-99DB-4B8A-8F74-EA3993532D9B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrialKitApp", "GrialKitApp\GrialKitApp.csproj", "{4C2248EF-1DD2-43BF-83DB-C7B27858348D}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrialKitApp", "GrialKitApp\GrialKitApp.csproj", "{0C76B08F-308F-4152-8376-27F77C4D6801}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrialKitApp.Base", "GrialKitApp.Base\GrialKitApp.Base.csproj", "{2189102C-8698-4760-A2C5-ADED686F84E2}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrialKitApp.Mobile", "GrialKitApp.Mobile\GrialKitApp.Mobile.csproj", "{8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrialKitApp.MauiControls", "GrialKitApp.MauiControls\GrialKitApp.MauiControls.csproj", "{A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GrialKitApp.MauiControls", "GrialKitApp.MauiControls\GrialKitApp.MauiControls.csproj", "{7BE40242-5D30-4CAE-AD7A-318148D6F634}"
EndProject
+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{BADA71DC-7FFD-4EDC-9F28-FB74AEADC713}"
ProjectSection(SolutionItems) = preProject
.gitignore = .gitignore
Directory.Build.props = Directory.Build.props
Directory.Build.targets = Directory.Build.targets
+ global.json = global.json
Directory.Packages.props = Directory.Packages.props
- solution-config.props.sample = solution-config.props.sample
EndProjectSection
EndProject
Global
@@ -41,144 +37,85 @@ Global
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|ARM.ActiveCfg = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|ARM.Build.0 = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|ARM64.ActiveCfg = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|ARM64.Build.0 = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|iPhone.ActiveCfg = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|iPhone.Build.0 = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|x64.ActiveCfg = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|x64.Build.0 = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|x86.ActiveCfg = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Debug|x86.Build.0 = Debug|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|Any CPU.Build.0 = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|ARM.ActiveCfg = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|ARM.Build.0 = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|ARM64.ActiveCfg = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|ARM64.Build.0 = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|iPhone.ActiveCfg = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|iPhone.Build.0 = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|x64.ActiveCfg = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|x64.Build.0 = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|x86.ActiveCfg = Release|Any CPU
- {0C76B08F-308F-4152-8376-27F77C4D6801}.Release|x86.Build.0 = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|ARM.ActiveCfg = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|ARM.Build.0 = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|ARM64.ActiveCfg = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|ARM64.Build.0 = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|iPhone.ActiveCfg = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|iPhone.Build.0 = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|x64.ActiveCfg = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|x64.Build.0 = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|x86.ActiveCfg = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Debug|x86.Build.0 = Debug|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|Any CPU.Build.0 = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|ARM.ActiveCfg = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|ARM.Build.0 = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|ARM64.ActiveCfg = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|ARM64.Build.0 = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|iPhone.ActiveCfg = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|iPhone.Build.0 = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|x64.ActiveCfg = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|x64.Build.0 = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|x86.ActiveCfg = Release|Any CPU
- {2189102C-8698-4760-A2C5-ADED686F84E2}.Release|x86.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|ARM.ActiveCfg = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|ARM.Build.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|ARM.Deploy.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|ARM64.ActiveCfg = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|ARM64.Build.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|ARM64.Deploy.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|iPhone.Build.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|iPhone.Deploy.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|iPhoneSimulator.Deploy.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|x64.ActiveCfg = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|x64.Build.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|x64.Deploy.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|x86.ActiveCfg = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|x86.Build.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Debug|x86.Deploy.0 = Debug|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|Any CPU.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|Any CPU.Deploy.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|ARM.ActiveCfg = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|ARM.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|ARM.Deploy.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|ARM64.ActiveCfg = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|ARM64.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|ARM64.Deploy.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|iPhone.ActiveCfg = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|iPhone.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|iPhone.Deploy.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|iPhoneSimulator.Deploy.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|x64.ActiveCfg = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|x64.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|x64.Deploy.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|x86.ActiveCfg = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|x86.Build.0 = Release|Any CPU
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE}.Release|x86.Deploy.0 = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|ARM.ActiveCfg = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|ARM.Build.0 = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|ARM64.ActiveCfg = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|ARM64.Build.0 = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|iPhone.ActiveCfg = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|iPhone.Build.0 = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|x64.ActiveCfg = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|x64.Build.0 = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|x86.ActiveCfg = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Debug|x86.Build.0 = Debug|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|Any CPU.Build.0 = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|ARM.ActiveCfg = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|ARM.Build.0 = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|ARM64.ActiveCfg = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|ARM64.Build.0 = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|iPhone.ActiveCfg = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|iPhone.Build.0 = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|x64.ActiveCfg = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|x64.Build.0 = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|x86.ActiveCfg = Release|Any CPU
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0}.Release|x86.Build.0 = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|ARM.ActiveCfg = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|ARM.Build.0 = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|ARM64.Build.0 = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|x64.Build.0 = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Debug|x86.Build.0 = Debug|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|ARM.ActiveCfg = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|ARM.Build.0 = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|ARM64.Build.0 = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|iPhone.Build.0 = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|x64.ActiveCfg = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|x64.Build.0 = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|x86.ActiveCfg = Release|Any CPU
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634}.Release|x86.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|ARM.ActiveCfg = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|ARM.Build.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|ARM.Deploy.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|ARM64.Build.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|ARM64.Deploy.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|iPhone.Deploy.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|iPhoneSimulator.Deploy.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|x64.Build.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|x64.Deploy.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|x86.Build.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Debug|x86.Deploy.0 = Debug|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|ARM.ActiveCfg = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|ARM.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|ARM.Deploy.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|ARM64.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|ARM64.Deploy.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|iPhone.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|iPhone.Deploy.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|iPhoneSimulator.Deploy.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|x64.ActiveCfg = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|x64.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|x64.Deploy.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|x86.ActiveCfg = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|x86.Build.0 = Release|Any CPU
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D}.Release|x86.Deploy.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
- {6A3D4432-99DB-4B8A-8F74-EA3993532D9B} = {B4EB3596-887D-4903-9919-A008778BB462}
- {0C76B08F-308F-4152-8376-27F77C4D6801} = {B4EB3596-887D-4903-9919-A008778BB462}
- {2189102C-8698-4760-A2C5-ADED686F84E2} = {6A3D4432-99DB-4B8A-8F74-EA3993532D9B}
- {8C0A9A1D-4A64-41B9-BA3E-B0F3AC3D85AE} = {6A3D4432-99DB-4B8A-8F74-EA3993532D9B}
- {A1DFA06F-A5BA-4306-B688-BD387B9DF0A0} = {B4EB3596-887D-4903-9919-A008778BB462}
+ {4C2248EF-1DD2-43BF-83DB-C7B27858348D} = {6D555D57-83C9-4A57-B5D1-F97BA2A71109}
+ {7BE40242-5D30-4CAE-AD7A-318148D6F634} = {6D555D57-83C9-4A57-B5D1-F97BA2A71109}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {8FB14A47-5E1E-4ECC-8F90-4AAE78F6730C}
+ SolutionGuid = {ACEFA369-75D5-4119-8C19-AEDF33108234}
EndGlobalSection
EndGlobal
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.cs
deleted file mode 100644
index 210f93f14..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.cs
+++ /dev/null
@@ -1,85 +0,0 @@
-namespace GrialKitApp;
-
-public class App : Application
-{
- protected Window? MainWindow { get; private set; }
- protected IHost? Host { get; private set; }
-
- protected async override void OnLaunched(LaunchActivatedEventArgs args)
- {
- var builder = this.CreateBuilder(args)
- // Add navigation support for toolkit controls such as TabBar and NavigationView
- .UseToolkitNavigation()
- .UseMauiEmbedding(maui => maui
- .UseMauiControls())
- .Configure(host => host
-#if DEBUG
- // Switch to Development environment when running in DEBUG
- .UseEnvironment(Environments.Development)
-#endif
- .UseLogging(configure: (context, logBuilder) =>
- {
- // Configure log levels for different categories of logging
- logBuilder
- .SetMinimumLevel(
- context.HostingEnvironment.IsDevelopment() ?
- LogLevel.Information :
- LogLevel.Warning)
-
- // Default filters for core Uno Platform namespaces
- .CoreLogLevel(LogLevel.Warning);
-
- // Uno Platform namespace filter groups
- // Uncomment individual methods to see more detailed logging
- //// Generic Xaml events
- //logBuilder.XamlLogLevel(LogLevel.Debug);
- //// Layout specific messages
- //logBuilder.XamlLayoutLogLevel(LogLevel.Debug);
- //// Storage messages
- //logBuilder.StorageLogLevel(LogLevel.Debug);
- //// Binding related messages
- //logBuilder.XamlBindingLogLevel(LogLevel.Debug);
- //// Binder memory references tracking
- //logBuilder.BinderMemoryReferenceLogLevel(LogLevel.Debug);
- //// RemoteControl and HotReload related
- //logBuilder.HotReloadCoreLogLevel(LogLevel.Information);
- //// Debug JS interop
- //logBuilder.WebAssemblyLogLevel(LogLevel.Debug);
-
- }, enableUnoLogging: true)
- .UseSerilog(consoleLoggingEnabled: true, fileLoggingEnabled: true)
- .UseConfiguration(configure: configBuilder =>
- configBuilder
- .EmbeddedSource()
- .Section()
- )
- // Enable localization (see appsettings.json for supported languages)
- .UseLocalization()
- .ConfigureServices((context, services) => {
- // TODO: Register your services
- //services.AddSingleton();
- })
- .UseNavigation(RegisterRoutes)
- );
- MainWindow = builder.Window;
-
- Host = await builder.NavigateAsync();
- }
-
- private static void RegisterRoutes(IViewRegistry views, IRouteRegistry routes)
- {
- views.Register(
- new ViewMap(ViewModel: typeof(ShellViewModel)),
- new ViewMap()
- );
-
- routes.Register(
- new RouteMap("", View: views.FindByViewModel(),
- Nested: new RouteMap[]
- {
- new RouteMap("Main", View: views.FindByViewModel())
- }
- )
- );
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.xaml
new file mode 100644
index 000000000..613062028
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.xaml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.xaml.cs
new file mode 100644
index 000000000..4a9af11b7
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/App.xaml.cs
@@ -0,0 +1,134 @@
+using System;
+using Microsoft.Extensions.Logging;
+using Uno.Resizetizer;
+
+namespace GrialKitApp;
+
+public partial class App : Application
+{
+ ///
+ /// Initializes the singleton application object. This is the first line of authored code
+ /// executed, and as such is the logical equivalent of main() or WinMain().
+ ///
+ public App()
+ {
+ this.InitializeComponent();
+ }
+
+ protected Window? MainWindow { get; private set; }
+
+ protected override void OnLaunched(LaunchActivatedEventArgs args)
+ {
+ MainWindow = new Window();
+#if DEBUG
+ MainWindow.EnableHotReload();
+#endif
+
+#if MAUI_EMBEDDING
+ this.UseMauiEmbedding(MainWindow, maui => maui
+ .UseMauiControls());
+#endif
+
+ // Do not repeat app initialization when the Window already has content,
+ // just ensure that the window is active
+ if (MainWindow.Content is not Frame rootFrame)
+ {
+ // Create a Frame to act as the navigation context and navigate to the first page
+ rootFrame = new Frame();
+
+ // Place the frame in the current Window
+ MainWindow.Content = rootFrame;
+
+ rootFrame.NavigationFailed += OnNavigationFailed;
+ }
+
+ if (rootFrame.Content == null)
+ {
+ // When the navigation stack isn't restored navigate to the first page,
+ // configuring the new page by passing required information as a navigation
+ // parameter
+ rootFrame.Navigate(typeof(MainPage), args.Arguments);
+ }
+
+ MainWindow.SetWindowIcon();
+ // Ensure the current window is active
+ MainWindow.Activate();
+ }
+
+ ///
+ /// Invoked when Navigation to a certain page fails
+ ///
+ /// The Frame which failed navigation
+ /// Details about the navigation failure
+ void OnNavigationFailed(object sender, NavigationFailedEventArgs e)
+ {
+ throw new InvalidOperationException($"Failed to load {e.SourcePageType.FullName}: {e.Exception}");
+ }
+
+ ///
+ /// Configures global Uno Platform logging
+ ///
+ public static void InitializeLogging()
+ {
+#if DEBUG
+ // Logging is disabled by default for release builds, as it incurs a significant
+ // initialization cost from Microsoft.Extensions.Logging setup. If startup performance
+ // is a concern for your application, keep this disabled. If you're running on the web or
+ // desktop targets, you can use URL or command line parameters to enable it.
+ //
+ // For more performance documentation: https://platform.uno/docs/articles/Uno-UI-Performance.html
+
+ var factory = LoggerFactory.Create(builder =>
+ {
+#if __WASM__
+ builder.AddProvider(new global::Uno.Extensions.Logging.WebAssembly.WebAssemblyConsoleLoggerProvider());
+#elif __IOS__ || __MACCATALYST__
+ builder.AddProvider(new global::Uno.Extensions.Logging.OSLogLoggerProvider());
+#else
+ builder.AddConsole();
+#endif
+
+ // Exclude logs below this level
+ builder.SetMinimumLevel(LogLevel.Information);
+
+ // Default filters for Uno Platform namespaces
+ builder.AddFilter("Uno", LogLevel.Warning);
+ builder.AddFilter("Windows", LogLevel.Warning);
+ builder.AddFilter("Microsoft", LogLevel.Warning);
+
+ // Generic Xaml events
+ // builder.AddFilter("Microsoft.UI.Xaml", LogLevel.Debug );
+ // builder.AddFilter("Microsoft.UI.Xaml.VisualStateGroup", LogLevel.Debug );
+ // builder.AddFilter("Microsoft.UI.Xaml.StateTriggerBase", LogLevel.Debug );
+ // builder.AddFilter("Microsoft.UI.Xaml.UIElement", LogLevel.Debug );
+ // builder.AddFilter("Microsoft.UI.Xaml.FrameworkElement", LogLevel.Trace );
+
+ // Layouter specific messages
+ // builder.AddFilter("Microsoft.UI.Xaml.Controls", LogLevel.Debug );
+ // builder.AddFilter("Microsoft.UI.Xaml.Controls.Layouter", LogLevel.Debug );
+ // builder.AddFilter("Microsoft.UI.Xaml.Controls.Panel", LogLevel.Debug );
+
+ // builder.AddFilter("Windows.Storage", LogLevel.Debug );
+
+ // Binding related messages
+ // builder.AddFilter("Microsoft.UI.Xaml.Data", LogLevel.Debug );
+ // builder.AddFilter("Microsoft.UI.Xaml.Data", LogLevel.Debug );
+
+ // Binder memory references tracking
+ // builder.AddFilter("Uno.UI.DataBinding.BinderReferenceHolder", LogLevel.Debug );
+
+ // DevServer and HotReload related
+ // builder.AddFilter("Uno.UI.RemoteControl", LogLevel.Information);
+
+ // Debug JS interop
+ // builder.AddFilter("Uno.Foundation.WebAssemblyRuntime", LogLevel.Debug );
+ });
+
+ global::Uno.Extensions.LogExtensionPoint.AmbientLoggerFactory = factory;
+
+#if HAS_UNO
+ global::Uno.UI.Adapter.Microsoft.Extensions.Logging.LoggingAdapter.Initialize();
+#endif
+#endif
+ }
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/AppResources.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/AppResources.xaml
deleted file mode 100644
index 09c63fa0c..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/AppResources.xaml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/back.svg b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/back.svg
deleted file mode 100644
index bcd7851b9..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/back.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Icons/iconapp.svg b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/icon.svg
similarity index 96%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Icons/iconapp.svg
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/icon.svg
index f621ea597..a15af53aa 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Icons/iconapp.svg
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/icon.svg
@@ -5,7 +5,7 @@
viewBox="0 0 456 456"
version="1.1"
id="svg453"
- sodipodi:docname="iconapp.old.svg"
+ sodipodi:docname="icon.svg"
inkscape:version="1.2 (dc2aedaf03, 2022-05-15)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Icons/appconfig.svg b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/icon_foreground.svg
similarity index 99%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Icons/appconfig.svg
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/icon_foreground.svg
index 3106b1a8b..8ffc41ae3 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Icons/appconfig.svg
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Icons/icon_foreground.svg
@@ -5,7 +5,7 @@
viewBox="0 0 50.369617 49.826836"
version="1.1"
id="svg151"
- sodipodi:docname="appconfig.svg"
+ sodipodi:docname="icon_foreground.svg"
inkscape:version="1.2 (dc2aedaf03, 2022-05-15)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/SharedAssets.md b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/SharedAssets.md
index 6d84997f1..1b84a74ab 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/SharedAssets.md
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/SharedAssets.md
@@ -1,14 +1,16 @@
-See documentation about assets here : https://github.com/unoplatform/uno/blob/master/doc/articles/features/working-with-assets.md
+# Shared Assets
-# Here is a cheat sheet:
+See documentation about assets here: https://github.com/unoplatform/uno/blob/master/doc/articles/features/working-with-assets.md
+
+## Here is a cheat sheet
1. Add the image file to the `Assets` directory of a shared project.
2. Set the build action to `Content`.
3. (Recommended) Provide an asset for various scales/dpi
-## Examples
+### Examples
-```
+```text
\Assets\Images\logo.scale-100.png
\Assets\Images\logo.scale-200.png
\Assets\Images\logo.scale-400.png
@@ -18,17 +20,13 @@ See documentation about assets here : https://github.com/unoplatform/uno/blob/ma
\Assets\Images\scale-400\logo.png
```
-## Table of scales
-
-| Scale | UWP | iOS | Android |
-|-------|:-----------:|:--------:|:-------:|
-| `100` | scale-100 | @1x | mdpi |
-| `125` | scale-125 | N/A | N/A |
-| `150` | scale-150 | N/A | hdpi |
-| `200` | scale-200 | @2x | xhdpi |
-| `300` | scale-300 | @3x | xxhdpi |
-| `400` | scale-400 | N/A | xxxhdpi |
-
-
-
+### Table of scales
+| Scale | WinUI | iOS/MacCatalyst | Android |
+|-------|:-----------:|:---------------:|:-------:|
+| `100` | scale-100 | @1x | mdpi |
+| `125` | scale-125 | N/A | N/A |
+| `150` | scale-150 | N/A | hdpi |
+| `200` | scale-200 | @2x | xhdpi |
+| `300` | scale-300 | @3x | xxhdpi |
+| `400` | scale-400 | N/A | xxxhdpi |
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Splash/splash_screen.svg b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Splash/splash_screen.svg
similarity index 99%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Splash/splash_screen.svg
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Splash/splash_screen.svg
index 3106b1a8b..8ffc41ae3 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Base/Splash/splash_screen.svg
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Assets/Splash/splash_screen.svg
@@ -5,7 +5,7 @@
viewBox="0 0 50.369617 49.826836"
version="1.1"
id="svg151"
- sodipodi:docname="appconfig.svg"
+ sodipodi:docname="icon_foreground.svg"
inkscape:version="1.2 (dc2aedaf03, 2022-05-15)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Business/Models/AppConfig.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Business/Models/AppConfig.cs
deleted file mode 100644
index c8cd39fff..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Business/Models/AppConfig.cs
+++ /dev/null
@@ -1,6 +0,0 @@
-namespace GrialKitApp.Business.Models;
-
-public record AppConfig
-{
- public string? Environment { get; init; }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Business/Models/Entity.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Business/Models/Entity.cs
deleted file mode 100644
index 1ad1a0e99..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Business/Models/Entity.cs
+++ /dev/null
@@ -1,3 +0,0 @@
-namespace GrialKitApp.Business.Models;
-
-public record Entity(string Name);
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GlobalUsings.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GlobalUsings.cs
index d2f0ffe22..3842799da 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GlobalUsings.cs
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GlobalUsings.cs
@@ -1,20 +1,7 @@
global using System.Collections.Immutable;
-global using System.Windows.Input;
global using Microsoft.Extensions.DependencyInjection;
-global using Windows.Networking.Connectivity;
-global using Windows.Storage;
-global using Microsoft.Extensions.Hosting;
-global using Microsoft.Extensions.Localization;
global using Microsoft.Extensions.Logging;
-global using Microsoft.UI.Xaml;
-global using Microsoft.UI.Xaml.Controls;
-global using Microsoft.UI.Xaml.Media;
-global using Microsoft.UI.Xaml.Navigation;
-global using Microsoft.Extensions.Options;
-global using GrialKitApp.Business.Models;
-global using GrialKitApp.Presentation;
+#if MAUI_EMBEDDING
global using GrialKitApp.MauiControls;
-global using Windows.ApplicationModel;
+#endif
global using ApplicationExecutionState = Windows.ApplicationModel.Activation.ApplicationExecutionState;
-global using CommunityToolkit.Mvvm.ComponentModel;
-global using CommunityToolkit.Mvvm.Input;
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GrialKitApp.csproj b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GrialKitApp.csproj
index 85f308a93..73565a4f3 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GrialKitApp.csproj
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/GrialKitApp.csproj
@@ -1,84 +1,34 @@
-
-
- net8.0-ios;net8.0-android
- $(OverrideTargetFrameworks)
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ net8.0-android;
+ net8.0-ios;
+
+
+ Exe
+ true
+
+
+ GrialControlsTestBed
+
+
+ com.grialcontrolstestbed
+
+
+ 1.0
+ 1
+
+
+
+ MauiEmbedding;
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- %(Filename)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/MainPage.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/MainPage.xaml
new file mode 100644
index 000000000..07a48618f
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/MainPage.xaml
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/MainPage.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/MainPage.xaml.cs
new file mode 100644
index 000000000..7aaeaabb6
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/MainPage.xaml.cs
@@ -0,0 +1,9 @@
+namespace GrialKitApp;
+
+public sealed partial class MainPage : Page
+{
+ public MainPage()
+ {
+ this.InitializeComponent();
+ }
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Package.appxmanifest b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Package.appxmanifest
new file mode 100644
index 000000000..ee752981b
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Package.appxmanifest
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+ GrialKitApp
+ GrialKitApp
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/AndroidManifest.xml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/AndroidManifest.xml
similarity index 100%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/AndroidManifest.xml
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/AndroidManifest.xml
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Assets/AboutAssets.txt b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Assets/AboutAssets.txt
similarity index 100%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Assets/AboutAssets.txt
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Assets/AboutAssets.txt
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Main.Android.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Main.Android.cs
new file mode 100644
index 000000000..33a4d2df7
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Main.Android.cs
@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using Android.App;
+using Android.Content;
+using Android.OS;
+using Android.Runtime;
+using Android.Views;
+using Android.Widget;
+using Com.Nostra13.Universalimageloader.Core;
+using Microsoft.UI.Xaml.Media;
+
+namespace GrialKitApp.Droid;
+
+[global::Android.App.ApplicationAttribute(
+ Label = "GrialControlsTestBed",
+ Icon = "@mipmap/icon",
+ LargeHeap = true,
+ HardwareAccelerated = true,
+ Theme = "@style/AppTheme"
+)]
+public class Application : Microsoft.UI.Xaml.NativeApplication
+{
+ public Application(IntPtr javaReference, JniHandleOwnership transfer)
+ : base(() => new App(), javaReference, transfer)
+ {
+ ConfigureUniversalImageLoader();
+ }
+
+ private static void ConfigureUniversalImageLoader()
+ {
+ // Create global configuration and initialize ImageLoader with this config
+ ImageLoaderConfiguration config = new ImageLoaderConfiguration
+ .Builder(Context)
+ .Build();
+
+ ImageLoader.Instance.Init(config);
+
+ ImageSource.DefaultImageLoader = ImageLoader.Instance.LoadImageAsync;
+ }
+}
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/MainActivity.Android.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/MainActivity.Android.cs
similarity index 55%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/MainActivity.Android.cs
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/MainActivity.Android.cs
index da562c85a..d58f2abfd 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/MainActivity.Android.cs
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/MainActivity.Android.cs
@@ -1,16 +1,16 @@
using Android.App;
-using Android.Widget;
-using Android.OS;
using Android.Content.PM;
+using Android.OS;
using Android.Views;
+using Android.Widget;
namespace GrialKitApp.Droid;
[Activity(
- MainLauncher = true,
- ConfigurationChanges = global::Uno.UI.ActivityHelper.AllConfigChanges,
- WindowSoftInputMode = SoftInput.AdjustNothing | SoftInput.StateHidden
+ MainLauncher = true,
+ ConfigurationChanges = global::Uno.UI.ActivityHelper.AllConfigChanges,
+ WindowSoftInputMode = SoftInput.AdjustNothing | SoftInput.StateHidden
)]
public class MainActivity : Microsoft.UI.Xaml.ApplicationActivity
{
-}
\ No newline at end of file
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Resources/AboutResources.txt b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Resources/AboutResources.txt
similarity index 100%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Resources/AboutResources.txt
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Resources/AboutResources.txt
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Resources/values/Strings.xml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Resources/values/Strings.xml
similarity index 65%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Resources/values/Strings.xml
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Resources/values/Strings.xml
index 23797d360..064aba6a6 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Resources/values/Strings.xml
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Resources/values/Strings.xml
@@ -1,5 +1,5 @@
Hello World, Click Me!
- GrialControlsTestBed
+ GrialKitApp
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Resources/values/Styles.xml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Resources/values/Styles.xml
similarity index 100%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/Resources/values/Styles.xml
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/Resources/values/Styles.xml
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/environment.conf b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/environment.conf
similarity index 100%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/Android/environment.conf
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/Android/environment.conf
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Entitlements.plist b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Entitlements.plist
similarity index 100%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Entitlements.plist
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Entitlements.plist
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Info.plist b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Info.plist
similarity index 95%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Info.plist
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Info.plist
index 981d8e728..ea3dcb4bc 100644
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/iOS/Info.plist
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Info.plist
@@ -30,7 +30,7 @@
UIViewControllerBasedStatusBarAppearance
XSAppIconAssets
- Assets.xcassets/iconapp.appiconset
+ Assets.xcassets/icon.appiconset
UIApplicationSupportsIndirectInputEvents
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Main.iOS.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Main.iOS.cs
new file mode 100644
index 000000000..5f3e9b64a
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Main.iOS.cs
@@ -0,0 +1,14 @@
+using UIKit;
+
+namespace GrialKitApp.iOS;
+
+public class EntryPoint
+{
+ // This is the main entry point of the application.
+ public static void Main(string[] args)
+ {
+ // if you want to use a different Application Delegate class from "AppDelegate"
+ // you can specify it here.
+ UIApplication.Main(args, null, typeof(App));
+ }
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Media.xcassets/LaunchImages.launchimage/Contents.json b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Media.xcassets/LaunchImages.launchimage/Contents.json
similarity index 100%
rename from UI/MauiEmbedding/GrialKitApp/GrialKitApp.Mobile/MacCatalyst/Media.xcassets/LaunchImages.launchimage/Contents.json
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/Media.xcassets/LaunchImages.launchimage/Contents.json
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/PrivacyInfo.xcprivacy b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/PrivacyInfo.xcprivacy
new file mode 100644
index 000000000..902abb059
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Platforms/iOS/PrivacyInfo.xcprivacy
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategoryFileTimestamp
+ NSPrivacyAccessedAPITypeReasons
+
+ C617.1
+
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategorySystemBootTime
+ NSPrivacyAccessedAPITypeReasons
+
+ 35F9.1
+
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategoryDiskSpace
+ NSPrivacyAccessedAPITypeReasons
+
+ E174.1
+
+
+
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategoryUserDefaults
+ NSPrivacyAccessedAPITypeReasons
+
+ CA92.1
+
+
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainPage.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainPage.xaml
deleted file mode 100644
index c580f53b1..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainPage.xaml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainPage.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainPage.xaml.cs
deleted file mode 100644
index 154c78d67..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainPage.xaml.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-namespace GrialKitApp.Presentation;
-
-public sealed partial class MainPage : Page
-{
- public MainPage()
- {
- this.InitializeComponent();
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainViewModel.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainViewModel.cs
deleted file mode 100644
index 23ca4d03b..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/MainViewModel.cs
+++ /dev/null
@@ -1,6 +0,0 @@
-namespace GrialKitApp.Presentation;
-
-public partial class MainViewModel : ObservableObject
-{
-
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/Shell.xaml b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/Shell.xaml
deleted file mode 100644
index 3792dd619..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/Shell.xaml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/Shell.xaml.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/Shell.xaml.cs
deleted file mode 100644
index b5a9a7b71..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/Shell.xaml.cs
+++ /dev/null
@@ -1,10 +0,0 @@
-namespace GrialKitApp.Presentation;
-
-public sealed partial class Shell : UserControl, IContentControlProvider
-{
- public Shell()
- {
- this.InitializeComponent();
- }
- public ContentControl ContentControl => Splash;
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/ShellViewModel.cs b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/ShellViewModel.cs
deleted file mode 100644
index ffb85390f..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Presentation/ShellViewModel.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-namespace GrialKitApp.Presentation;
-
-public class ShellViewModel
-{
- private readonly INavigator _navigator;
-
- public ShellViewModel(
- INavigator navigator)
- {
- _navigator = navigator;
- _ = Start();
- }
-
- public async Task Start()
- {
- await _navigator.NavigateViewModelAsync(this);
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Properties/launchSettings.json b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Properties/launchSettings.json
new file mode 100644
index 000000000..f2f931921
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Properties/launchSettings.json
@@ -0,0 +1,12 @@
+{
+ "iisSettings": {
+ "windowsAuthentication": false,
+ "anonymousAuthentication": true,
+ "iisExpress": {
+ "applicationUrl": "http://localhost:8080",
+ "sslPort": 0
+ }
+ },
+ "profiles": {
+ }
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/ReadMe.md b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/ReadMe.md
similarity index 97%
rename from UI/MauiEmbedding/GrialKitApp/ReadMe.md
rename to UI/MauiEmbedding/GrialKitApp/GrialKitApp/ReadMe.md
index c9078eb5f..62657e461 100644
--- a/UI/MauiEmbedding/GrialKitApp/ReadMe.md
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/ReadMe.md
@@ -39,4 +39,4 @@ For more information on how to use the controls from GrialKit in an Uno Platform

## Sample App - Issues
-If you encounter any issues with this sample, please open an issue [here](https://github.com/unoplatform/uno/issues).
\ No newline at end of file
+If you encounter any issues with this sample, please open an issue [here](https://github.com/unoplatform/uno/issues).
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/es/Resources.resw b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/es/Resources.resw
deleted file mode 100644
index f2cad19be..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/es/Resources.resw
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- GrialKitApp-es
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/fr/Resources.resw b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/fr/Resources.resw
deleted file mode 100644
index 041614d96..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/fr/Resources.resw
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- GrialKitApp-fr
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/pt-BR/Resources.resw b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/pt-BR/Resources.resw
deleted file mode 100644
index 7cfaa2dad..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/Strings/pt-BR/Resources.resw
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- GrialKitApp-pt-BR
-
-
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/app.manifest b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/app.manifest
new file mode 100644
index 000000000..8f0268eaa
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/app.manifest
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true/PM
+ PerMonitorV2, PerMonitor
+
+
+
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/appsettings.development.json b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/appsettings.development.json
deleted file mode 100644
index 31a70b722..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/appsettings.development.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "AppConfig": {
- "Environment": "Development"
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/appsettings.json b/UI/MauiEmbedding/GrialKitApp/GrialKitApp/appsettings.json
deleted file mode 100644
index 187e4d5cf..000000000
--- a/UI/MauiEmbedding/GrialKitApp/GrialKitApp/appsettings.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "AppConfig": {
- "Environment": "Production"
- },
- "LocalizationConfiguration": {
- "Cultures": [
- "es",
- "fr",
- "pt-BR",
- "en"
- ]
- }
-}
diff --git a/UI/MauiEmbedding/GrialKitApp/global.json b/UI/MauiEmbedding/GrialKitApp/global.json
new file mode 100644
index 000000000..0636f7bfe
--- /dev/null
+++ b/UI/MauiEmbedding/GrialKitApp/global.json
@@ -0,0 +1,6 @@
+{
+ // To update the version of Uno please update the version of the Uno.Sdk here. See https://aka.platform.uno/upgrade-uno-packages for more information.
+ "msbuild-sdks": {
+ "Uno.Sdk": "5.2.132"
+ }
+}
diff --git a/UI/MauiEmbedding/GrialKitApp/solution-config.props.sample b/UI/MauiEmbedding/GrialKitApp/solution-config.props.sample
deleted file mode 100644
index 17e1343de..000000000
--- a/UI/MauiEmbedding/GrialKitApp/solution-config.props.sample
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-